Re: SimplyOpenGL2DDrawing
Publié : mer. 16/mars/2022 15:00
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
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 !
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 !
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
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 !
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![]()
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
C'est assez gros là ?Pour le moment je coince sur les 3 fonction principale que j'ai faites