SimplyOpenGL2DDrawing
Re: SimplyOpenGL2DDrawing
J'ai trouvé ça, si ça peut aider quelqu'un
http://sdz.tdct.org/sdz/creez-des-progr ... pengl.html
http://sdz.tdct.org/sdz/creez-des-progr ... pengl.html
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Un homme doit être poli, mais il doit aussi être libre !
Re: SimplyOpenGL2DDrawing
Salut Guillot,Guillot a écrit : mer. 16/mars/2022 12:45 @ shadow :
coté programmation, dans un 1er temps ça ne devrai pas posé de gros probleme, c'est juste une interface
a mon avis, la difficulté se trouve au niveau de la compréhension d'opengl
là faut te trouver un bon site
en tout cas super initiative, ça fait longtemps que je me dis qu'il faudrait refaire la vector lib en opengl !
quand au grand manitou je crois qu'il a d'autres préoccupations !
Merci encore, et le grand manitou ne réponds pas, je crois qu'il n'aime pas qu'on le sollicite !
C'est ainsi, alors je vais le laisser tranquille, il répondra quand il voudra !
Micoute, merci pour ton lien, tous n'est pas utile mais sa peux servir !
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Re: SimplyOpenGL2DDrawing
Ah... Désolé pour l'inversion des couleurs...Guillot a écrit :@ ollivier :
ça marche !
mais y'a une inversion des couleurs rouge bleu
chapeau bas pour ta capacité à faire du code sans erreur sans pouvoir le tester !
Remplace la constante #GL_RGBA par #GL_BGRA (en espérant que cette dernière existe. Voici une petite Aide interactive !
Re: SimplyOpenGL2DDrawing
XD. Ok donc le fil rouge sur le bouton vert et le bouton vert sur le fil rouge, j'ai bien compris ?
Heuuuuu c'est normale ça fais des flame orange et des étincèle ?
Houllaaa, jvois un tunnel avec une lumière blanche aussi, c'est bon signe ça tu crois ?
Si vous me chercher, je crois que je suis mouru vivan, j'ai vue dieu, il ma dis:
"Que celui qui a les pieds aillés et l'œil qui vois tous, ce laisse guider par le vent sur le chemin de la vérité."
Moi j'ai eu la fois, devant le vide il y avait écris ça sur une pancarte, alors j'ai fermer les yeux et j'ai avancer et
j'ai ensuite sentie que je tombais, puis au bout d'un moment plus rien !
"Que la plupart des choses importantes dans le monde ont été accomplies par des personnes
qui ont continué à essayer quand il semblait y avoir aucun espoir."
C'est aussi ce que j'ai fais, avec ton histoire de fils rouge et bouton vers ou quelque chose comme ça !
Et d'autres truc, mais je suis partie car j'y comprenais rien, je suis retourner à OpenGL....

Heuuuuu c'est normale ça fais des flame orange et des étincèle ?
Houllaaa, jvois un tunnel avec une lumière blanche aussi, c'est bon signe ça tu crois ?

Si vous me chercher, je crois que je suis mouru vivan, j'ai vue dieu, il ma dis:
"Que celui qui a les pieds aillés et l'œil qui vois tous, ce laisse guider par le vent sur le chemin de la vérité."
Moi j'ai eu la fois, devant le vide il y avait écris ça sur une pancarte, alors j'ai fermer les yeux et j'ai avancer et
j'ai ensuite sentie que je tombais, puis au bout d'un moment plus rien !
"Que la plupart des choses importantes dans le monde ont été accomplies par des personnes
qui ont continué à essayer quand il semblait y avoir aucun espoir."
C'est aussi ce que j'ai fais, avec ton histoire de fils rouge et bouton vers ou quelque chose comme ça !
Et d'autres truc, mais je suis partie car j'y comprenais rien, je suis retourner à OpenGL....

Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Re: SimplyOpenGL2DDrawing
Le vide n'existe pas. Comme une bulle de champagne naît d'une impureté du cristal, une bulle est préalablement née, et l'Univers y a explosé dedans, si violemment que 600 000 ans n'ont pas suffi pour libérer la plus brutale des énergies.Shadow a écrit :Moi j'ai eu la fois, devant le vide
On se surprend de découvrir que l'univers se perd dans un vide infini, et pourtant ce vide autour un jour se refermera, comme une bouche qui a fini de bailler...
Bon courage dans tes projets.
- threedslider
- Messages : 452
- Inscription : dim. 01/juil./2018 22:38
Re: SimplyOpenGL2DDrawing
Oui t'inquiètes j'experimente aussi bien sur çaShadow a écrit : mar. 15/mars/2022 14:28 T'as qu'a apprendre l'OpenGL, ça me serais bien utile ça ^^
Merci pour le reste !

Ok je vais contribuer indirectement comme avec mon code tu pourras adapter, OK c'est pas parfait mais c'est déjà ça ^^Shadow a écrit : mar. 15/mars/2022 14:28 Pour le moment j'en suis pas satisfais même si ça marche, c'est qu'un prototype rien de plus.
Sans l'aide des copain ça va être hard...
Donc le module c'est peut etre moi mais sans l'aide des autres sur OpenGL, ça vaut rien.
Si personne ne veux aider, ça ira pas super vite !
Voici le code d'un système de grille avec le snapping (ça peut te servir hein comme tileset?) :
Code : Tout sélectionner
; Created by threedslider 03/16/2022 (Grid system)
CompilerIf #PB_Compiler_OS = #PB_OS_Windows
CompilerIf Subsystem("OpenGL") = #False
MessageRequester("Error", "Please set the subsystem to OpenGL")
End
CompilerEndIf
CompilerEndIf
InitSprite()
InitKeyboard()
InitMouse()
Procedure draw_lines()
Shared is_grid
glColor3f_(0, 0, 0)
glBegin_(#GL_LINES)
For i = 0 To 25
For j = 0 To 10
;horizontal
glVertex2f_(-2, (i-j)/4)
glVertex2f_(j*0.2, (i-j)/4)
;vertical
glVertex2f_((i-j)/4, j)
glVertex2f_((i-j)/4, -0.2*j)
Next
Next
glEnd_()
EndProcedure
Procedure show_point()
Shared xx
Shared yy
oldmouse_x = xx
oldmouse_y = yy
move_x = (windowWidth-400)/2 + (-19) + xx
move_y = (windowHeight-300)/2 + (-14) + yy
glColor3f_(1, 0, 0)
glBegin_(#GL_POINTS)
For i=0 To 5
If oldmouse_x % 2 = 0 And oldmouse_y % 2 = 0
glVertex2f_((-2+oldmouse_x*0.5/2), 1-oldmouse_y*0.5/2)
Else
glVertex2f_((-2+oldmouse_x*0.5/2), 1-oldmouse_y*0.5/2)
EndIf
Next
glEnd_()
EndProcedure
OpenWindow(0, 0, 0, 800, 600, "OpenGL : Grid test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(0),0,0,800,600)
glMatrixMode_(#GL_PROJECTION)
glLoadIdentity_()
gluPerspective_(45.0, 800/600, 1.0, 60.0)
glMatrixMode_(#GL_MODELVIEW)
;glTranslatef_(-8.8/4, 1.633, -4)
glTranslatef_(0, 0, -4)
;glShadeModel_(#GL_SMOOTH)
glEnable_(#GL_LIGHT0)
glEnable_(#GL_LIGHTING)
glEnable_(#GL_COLOR_MATERIAL)
glEnable_(#GL_DEPTH_TEST)
;glEnable_(#GL_CULL_FACE)
glViewport_(0, 0, 800, 600)
Repeat
glClearColor_(0.7, 0.7, 0.7, 0) ; background color
glClear_(#GL_COLOR_BUFFER_BIT)
glPointSize_(8.0)
event = WindowEvent()
Select Event
Case #PB_Event_CloseWindow
quit = 1
EndSelect
ExamineMouse()
xx = MouseX()
yy = MouseY()
draw_lines()
show_point()
FlipBuffers()
ExamineKeyboard()
Until KeyboardPushed(#PB_Key_Escape) Or quit = 1
Oué, j'espère que moi ou les autres t'aideront aussi bien, on verra bien et je te souhaite du beaucoup courageShadow a écrit : mar. 15/mars/2022 14:28 C'est grâce à Falsam que j'ai pus commencer à faire ce module.
J'attends avec impatience la venue du grand manitou, ou alors un autre !
![]()
C'est un peu un projet communautaire là ce truc !
Si on ne me donne pas d'eau (Aide OpenGL) pour mon moulin (module) je vais pas pouvoir continuer je pense !
Pour le moment c'est pas trop ça, ya pleins de code brouillon des com à la pelle en veux tu en voilà...
J'en appel aux grands manitous au pluriels![]()

Re: SimplyOpenGL2DDrawing
Merci à vous deux 

Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Re: SimplyOpenGL2DDrawing
bjr à tous
Pour le fun
j' avais ajouté des écritures et mis des commandes clavier pour le zoom
le déplacement du cube en x,y , pour changer les couleurs sur l' exemple de cube de la doc : OpenglGadget()
avec deux modes : Eventype() ou EventGadget
viewtopic.php?p=209389
Cordialement
Pour le fun
j' avais ajouté des écritures et mis des commandes clavier pour le zoom
le déplacement du cube en x,y , pour changer les couleurs sur l' exemple de cube de la doc : OpenglGadget()
avec deux modes : Eventype() ou EventGadget
viewtopic.php?p=209389
Cordialement
Re: SimplyOpenGL2DDrawing
Salut, merci kernadec pour ton exemple, c'est toujours utile 
Pour le moment je coince sur les 3 fonction principale que j'ai faites:
InitOpenGL()
OpenGL_StartDrawing()
OpenGL_StopDrawing()
Il faut que je trouve quoi mettre exactement dedans.
sinon si ya des idées....
Tans que c'est pas réglé j'attends car mon code pour le moment c'est trop brouillon.

Pour le moment je coince sur les 3 fonction principale que j'ai faites:
InitOpenGL()
OpenGL_StartDrawing()
OpenGL_StopDrawing()
Il faut que je trouve quoi mettre exactement dedans.
sinon si ya des idées....
Tans que c'est pas réglé j'attends car mon code pour le moment c'est trop brouillon.
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Re: SimplyOpenGL2DDrawing
OU as tu vu ces commandes
OpenGL_StartDrawing()
OpenGL_StopDrawing()
Regarde plutôt la syntaxe de ce code exemple:
comme je te l'ai déjà dit cherche sur le forum english à cet auteur "AppelPi" et OpenGL
Perso, je m'inspire de ces codes, il poste bcp de codes intéressants sur OpenGL
Cordialement

OpenGL_StartDrawing()
OpenGL_StopDrawing()
Regarde plutôt la syntaxe de ce code exemple:
Code : Tout sélectionner
glBegin(GL_POINTS); //starts drawing of points
glVertex3f(1.0f,1.0f,0.0f);//upper-right corner
glVertex3f(-1.0f,-1.0f,0.0f);//lower-left corner
glEnd();//end drawing of points
Perso, je m'inspire de ces codes, il poste bcp de codes intéressants sur OpenGL
Cordialement
Re: SimplyOpenGL2DDrawing
Je redis car je me suis pas fais comprendre
Oui si tu as vue mon code tu as vue que j'ai fais des fonction qui regroupe des fonction de l'api pour OpenGL !
Je le redis encore une fois, je voudrais essayer de rendre tous ça fastoche, c'est mon bobby quoi j'y peux rien !
Donc je voudrais faire un genre de bibliothèque 2DDrawing en me passant si possible de celle-ci totalement !
Donc il faut que ces 3 fonction soit ok, elle ne le sont pas même si ça marche !
Bon en gros pour faire simple (Je rappel que c'est des fonctions que j'ai faites !):
Initialiser OpenLG, a faire une fois > InitOpenGL()
Démarrer une opération de dessin sur OpenGL > OpenGL_StartDrawing() et ici sert a rien pour le moment, pas bien !
Termine l'opération de dessins sur OpenGL > OpenGL_StopDrawing()
Après peut etre que j'ai pas bien nommer les fonction, peut etre que on confond avec les fonctions OpenGL
mais pourtant ya aucune erreur possible, les fonction OpenGL termine par _, c'est des fonction API.
Pas mes fonction à moi dans mon module !
Dis as tu lus un peu tous les messages du topic ici ?
Je crois que j'ai dis ce que je voulais faire...
Merci encore pour l'aide

C'est assez gros là ?Pour le moment je coince sur les 3 fonction principale que j'ai faites

Oui si tu as vue mon code tu as vue que j'ai fais des fonction qui regroupe des fonction de l'api pour OpenGL !
Je le redis encore une fois, je voudrais essayer de rendre tous ça fastoche, c'est mon bobby quoi j'y peux rien !
Donc je voudrais faire un genre de bibliothèque 2DDrawing en me passant si possible de celle-ci totalement !
Donc il faut que ces 3 fonction soit ok, elle ne le sont pas même si ça marche !
Bon en gros pour faire simple (Je rappel que c'est des fonctions que j'ai faites !):
Initialiser OpenLG, a faire une fois > InitOpenGL()
Démarrer une opération de dessin sur OpenGL > OpenGL_StartDrawing() et ici sert a rien pour le moment, pas bien !
Termine l'opération de dessins sur OpenGL > OpenGL_StopDrawing()
Après peut etre que j'ai pas bien nommer les fonction, peut etre que on confond avec les fonctions OpenGL
mais pourtant ya aucune erreur possible, les fonction OpenGL termine par _, c'est des fonction API.
Pas mes fonction à moi dans mon module !
Dis as tu lus un peu tous les messages du topic ici ?
Je crois que j'ai dis ce que je voulais faire...
Merci encore pour l'aide

Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Re: SimplyOpenGL2DDrawing
Salut Shadow
Ok désolé de pas avoir regardé ton module
je trouve que faire un module OpenGL_StartDrawing est inutile
car OpenGLGadget() est déjà en mode StartDrawing()
pour toutes ses commandes
cordialement
Ok désolé de pas avoir regardé ton module

je trouve que faire un module OpenGL_StartDrawing est inutile
car OpenGLGadget() est déjà en mode StartDrawing()
pour toutes ses commandes

cordialement
Re: SimplyOpenGL2DDrawing
Salut kernadec,
Pas de soucis
Si tu veux bien m'en dire d'avantage stp.
Je ne sais pas ce que je dois mettre exactement ni comment, jveux dire que je sais pas à quoi serve les fonction exactement.
Pourais tu regarder les fonction cité plus haut, et faire se qu'il faudrait pour que sa marche, bien que sa marche
ya pleins de com, tu vera que sa marche même sans ses fonction, est ce que c'est bien ?
Pas de soucis

Si tu veux bien m'en dire d'avantage stp.
Je ne sais pas ce que je dois mettre exactement ni comment, jveux dire que je sais pas à quoi serve les fonction exactement.
Pourais tu regarder les fonction cité plus haut, et faire se qu'il faudrait pour que sa marche, bien que sa marche
ya pleins de com, tu vera que sa marche même sans ses fonction, est ce que c'est bien ?
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Re: SimplyOpenGL2DDrawing
bsr Shadow
en fouillant sur les forums je n'ai pas trouvé de module sur OpenGL juste quelques librairies ponctuelles.
Déjà perso je maitrise pas vraiment les subtilités de la librairie VectorDrawing()
alors pour OpenGL j'ai fais quelques trucs pour m'amuser c 'est tout..
je pense que tu devrais lire la documentation d' OpenGL et de t'amuser à convertir en PB
les codes exemples de la doc OpenGL avant de vouloir concevoir des modules.
Regarde le lien donné par Micoute dans ce sujet...
Cordialement
en fouillant sur les forums je n'ai pas trouvé de module sur OpenGL juste quelques librairies ponctuelles.
Déjà perso je maitrise pas vraiment les subtilités de la librairie VectorDrawing()
alors pour OpenGL j'ai fais quelques trucs pour m'amuser c 'est tout..
je pense que tu devrais lire la documentation d' OpenGL et de t'amuser à convertir en PB
les codes exemples de la doc OpenGL avant de vouloir concevoir des modules.
Regarde le lien donné par Micoute dans ce sujet...
Cordialement
Re: SimplyOpenGL2DDrawing
Non je vais pas me tapé des page de doc, aucun intérêt pour moi !
Tempi, je ferais avec ce que j'ai et ceux qui veulent bien m'aider !
Merci à toi, Cordialement
Tempi, je ferais avec ce que j'ai et ceux qui veulent bien m'aider !
Merci à toi, Cordialement

Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.