Création d'un logiciel de dessin - Quelques questions

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Création d'un logiciel de dessin - Quelques questions

Message par blendman »

salut

Avant de me lancer dans la création de mon RPG, j'essaie de me familiariser avec Purebasic et la programmation.

Pour cela, j'essaie de refaire le début de logiciel de peinture numérique que j'ai réalisé avec Game Maker .
Je ne connais ni le basic ni d'autres langages, je codais en langage de scripts assez simples avec game maker (le GML), j'aimerai donc refaire le début de logiciel que j'ai réalisé avec GM (animatoon, disponible ici pour ceux qui veulent tester : http://www.host-a.net/u/blendman/animatoon0.2.81.zip)

Voici donc où j'en suis avec purebasic (j'ai commencé aujourd'hui : le logiciel et les tutoriaux) :
http://blendman.free.fr/animatoon/animatoon.zip

Le fichier principal est animatoon0.0.1.pb
à compiler avec pb 4.51 (la dernière version, version démo pour le moment).

Mais je rencontre déjà quelques problèmes.
- Tout d'abord, je n'ai pas bien compris comment fonctionnent les gadgets et notamment les gadgets MDI. Et la documentation ne m'a apporté les réponses que je cherchais.
- 2ème bug (lié au 1er je pense) : lorsque je crée une nouvelle fenêtre "fichier/nouveau document, le programme se ferme. A nouveau, il y a quelque chose qui m'échappe :).

Ce que j'aimerai réaliser :
- c'est assez simple : un système de panneau façon photoshop : panneau nuancier, outils, calques, etc..

Faut-il utiliser les MDi, et si oui, comment dois-je m'y prendre ?
Sinon, que faut-il utiliser ?

Autre question (en avance) :
- sur quoi vais-je pouvoir dessiner ? Existe-t-il un système comme le surface de directX, ou ce genre de chose pour dessiner ? Dois-je utiliser un sprite de la taille de ma surface de travail ? ou un écran ?
J'aimerai créer un système de calque, donc, il faudrait une surface qui gère la transparence, mais je ne sais pas ce que je dois utiliser.

Merci pour vos réponses et vos informations.

Je continue à regarder les tutoriaux et autres cours disponibles ;).
Dernière modification par blendman le jeu. 24/févr./2011 16:17, modifié 1 fois.
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Re: Création d'un logiciel de dessin - pb avec les gadgets/M

Message par jbernard13 »

Bonjour Blendman

c'est pas mal ce tu as fait
mais si tu veux continuer plus loin faut mieux que tu achete Purebasic
est ce ton logiciel sera uniquement pour window?
c'est juste pour savoir car avec purebasic tu peux travaillé avec les api de windows .
en suite pour dessiner ton interface tu as Pureforms crée par Gnozal .
Jbernard13
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: Création d'un logiciel de dessin - pb avec les gadgets/M

Message par blendman »

jbernard13 a écrit :c'est pas mal ce tu as fait
mais si tu veux continuer plus loin faut mieux que tu achete Purebasic
est ce ton logiciel sera uniquement pour window?
c'est juste pour savoir car avec purebasic tu peux travaillé avec les api de windows .
en suite pour dessiner ton interface tu as Pureforms crée par Gnozal .
salut Jbernard13

J'aurai bien aimé que ce soit aussi pour mac et linux, mais si ce ne tourne que sous windows, et bien ce sera déjà ça ;).

Je compte acheté purebasic dès que je serai un peu plus avancé, mais je suppose que pour réaliser un logiciel de ce type, il faudra de toute façon utiliser les api windows, non ?

J'ai télécharger Pureforms, mais je n'ai pas encore regardé ce que ça donnait.

Merci pour ta réponse.

EDIT : bon, j'ai compris un de mes bugs :
- visiblement, on ne peut créer qu'un seul type de mdi gadget par fenêtre principale car, ce mdi s'attache au menu de la fenêtre principal et on ne peut créer qu'un seul menu par fenêtre.

Donc, un nouvelle question : comment crée-t-on des petits panneaux ? car visiblement, ce n'est pas avec les mdi gadgets qu'on fait ça si j'ai bien compris. Merci.
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Re: Création d'un logiciel de dessin - pb avec les gadgets/M

Message par jbernard13 »

Bonsoir

as tu essayé les onglets avec PanelGadget ?
Jbernard13
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Re: Création d'un logiciel de dessin - pb avec les gadgets/M

Message par jbernard13 »

je travaille pour crée l'interface de ton logiciel .
Jbernard13
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: Création d'un logiciel de dessin - pb avec les gadgets/M

Message par blendman »

jbernard13 a écrit :je travaille pour crée l'interface de ton logiciel .
c'est très gentil, dis donc :).

moi, aussi j'y ai un peu travaillé :).
D'ailleurs, il y a des petites questions que je me posais :
- pour dessiner, je suppose qu'il faut utiliser StartDrawing(Ouput) et choisir comme output : ImageOutput(#Image ) ? C'est léquivalent d'une surface directX, c'est ça ? Ou vaut(il mieux choisir autre chose, comme ScreenOutput() ou SpriteOutput() ?
- pour créer un panneau flottant, je dois utiliser les mdi, c'est ça ?

Autre question :
J'ai suivi ce tutoriel (en plus des autres nombreux tutoriaux que j'ai regardé) :
http://tripamort.free.fr/?q=node/12

Et lorsque je compile le code et lance l'application, purebasic me dit que la fonction :
ClearGadgetItemList(#champ ) est obsolète.
Cependant, si je l'enlève, le texte n'est plus effacé lorsque j'ouvre un fichier texte. Donc, j'ai l'impression que cette fonction est encore bien utile, non ?


Merci :).
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Re: Création d'un logiciel de dessin - Quelques questions

Message par jbernard13 »

peux tu posté ton code svp
Jbernard13
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: Création d'un logiciel de dessin - Quelques questions

Message par blendman »

jbernard13 a écrit :peux tu posté ton code svp
salut. Le code de quoi ?
Avec l'erreur" ClearGadgetItemList(#champ ) est obsolète". Ou celui de mon projet animatoon ?
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Création d'un logiciel de dessin - Quelques questions

Message par falsam »

@blendman : ClearGadgetItemList(#Liste) est effectivment obsolete mais par souci de compatibilité je pense que cette fonction est maintenu. Remplace ClearGadgetItemList(#Liste) par ClearGadgetItems(#Liste)

Comme d'habitude, un peu de code pour illustrer tout ça :)

Code : Tout sélectionner

Procedure MainFormShow()
  OpenWindow(#MainForm,0,0,500,300,"Nouvelle application",#PB_Window_ScreenCentered | #PB_Window_SystemMenu)
  ListViewGadget(#Liste,5,20,300,250)  
  ButtonGadget(#ClearListe,310,20,80,19,"Clear Liste")
  
  
  For i=1 To 10
    AddGadgetItem(#Liste, -1, "Item "+Str(i))
  Next
  
  
EndProcedure


MainFormShow()

Repeat
  Select WaitWindowEvent()
    Case #PB_Event_Gadget
      If #ClearListe
        ClearGadgetItems(#Liste)
      EndIf

    Case #PB_Event_CloseWindow
      End
  EndSelect
ForEver
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: Création d'un logiciel de dessin - Quelques questions

Message par djes »

Je ne peux pas trop t'aider sur les interfaces, mais de nombreux membres sont très calés là-dessus, sur le forum français et anglais. A mon avis ils ne vont pas tarder à réagir.
Sinon j'ai testé ton petit logiciel, c'est déjà vraiment bien! Perso j'utilise Aura, qui maintenant s'appelle TVPaint Animation ; c'est un logiciel français d'excellente facture qui a une très très bonne réputation dans le milieu de l'animation. L'avantage aussi est qu'il s'intègre plutôt bien à la création de jeux, par ex il gère depuis -toujours!- les PNG avec couche alpha, et surtout il est très très rapide, à tel point qu'il est l'un des seuls à donner le feeling naturel avec tous les outils de dessin, si tu as une tablette.
Répondre