O> This binary was built by Equation Solution <http://www.Equation.com>.
O> GNU gdb (GDB) 7.12
O> Copyright (C) 2016 Free Software Foundation, Inc.
O> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
O> This is free software: you are free to change and redistribute it.
O> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
O> and "show warranty" for details.
O> This GDB was configured as "i686-pc-mingw32".
O> Type "show configuration" for configuration details.
O> For bug reporting instructions, please see:
O> <http://www.gnu.org/software/gdb/bugs/>.
O> Find the GDB manual and other documentation resources online at:
O> <http://www.gnu.org/software/gdb/documentation/>.
O> For help, type "help".
O> Type "apropos word" to search for commands related to "word"...
O> Reading symbols from E:/_Test/ODFAEG/cwc/_out/Windows_Debug/App.exe...done.
O> (gdb) Working directory E:/_Test/ODFAEG/cwc/_out/Windows_Debug.
O> (gdb) (gdb) (gdb) (gdb) Starting program: E:/_Test/ODFAEG/cwc/_out/Windows_Debug/App.exe
O> [New Thread 22280.0x52d0]
O> [New Thread 22280.0x57c0]
O> [New Thread 22280.0x4c18]
O> [New Thread 22280.0x5af4]
E> warning: Can not parse XML library list; XML support was disabled at compile time
O> [New Thread 22280.0x5500]
O> [New Thread 22280.0x5020]
O> [New Thread 22280.0x5728]
O> [Thread 22280.0x5020 exited with code 0]
O> [Thread 22280.0x5728 exited with code 0]
O> [New Thread 22280.0x1824]
O> [Thread 22280.0x5500 exited with code 0]
O> [New Thread 22280.0x57e4]
O> [New Thread 22280.0x4cac]
O> [New Thread 22280.0x4978]
O> [New Thread 22280.0x54c8]
O> [New Thread 22280.0x4cc8]
O> [New Thread 22280.0x5344]
O> [New Thread 22280.0x59a4]
O> clear
O> clear
O> clear
O> clear
O> clear
O> clear
O> clear
O> clear
Donc, j'obtiens une fenêtre qui clear correctement.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
Il y a un problème : sous windows les textures ne s'affichent pas. Pourtant avec SFML les textures s'affichent et j'utilise le même code que sfml. Je ne comprends pas surtout que sur linux je n'ai pas ce problème.
Bon maintenant que c'est bon pour le sol j'ai un problème pour afficher le haut avec la classe perPixelLinkedList qui pourtant fonctionne sous linux. -_-
J'ai update le dépôt git, j'ai un problème avec le blending alpha qui ne se fait pas, je n'ai pas se problème sous linux, du coup il m'affiche soit juste le sol ou bien juste les décors...
Il doit sûrement y avoir un truc comme pour les textures ou activer GL_TEXTURE_2D et GL_TEXTURE_3D en même temps donne des textures blanches.
Je pense que je dois "blender" dans le mauvais sens..., ça doit être ça..., parce que là il fait comme si il n'y avait pas de blending au lieu de faire un blend alpha il remplace la couleur.
L'instanced rendering ça optimise bien j'arrive à rendre le sol et le décor avec les perPixelLinkedList sans que ça rame, sur linux ça ramait quand je faisais ça, je suis content d'avoir prit un nouveau PC mais maintenant faut que j'arrive à avoir le même rendu que sous linux avec les ombres et les lumières.
EDIT : bon c'est pas ça j'ai inversé l'ordre de rendu toujours pareil.
Par contre sans utiliser de FBO le blending se fait bien.
J'ai corrigé un bug pour l'instanced rendering, je ne créais qu'une nouvelle instance par texture et non pas par coordonnée de texture du coup, c'était toujours les coordonnées de texture du premier vertex qui étaient utilisées, j'ai réglé se problème maintenant il n'affiche plus toujours le même mur, par contre, ce bug avec le blending et les FBO c'est embêtant.
Je vois que SFML utilise les mêmes paramètres pour le blending que ce soit avec un FBO ou pas.
Quels seraient les paramètres pour le blending avec un FBO parce que là il ne fait pas de blending c'est comme si j'avais passé sf::BlendNone à la fonction draw.
Je clear le buffer comme ça : glClear(GL_COLOR_BUFFER_BIT);
EDIT : J'ai essayé glEnablei(GL_BLEND, 0); mais ça ne marche pas.
J'ai essayé un blending front to back mais écran noir.
Dans le glClearColor j'ai 0,0,0,0. C'est à dire transparent car on doit pouvoir voir à travers le composant de rendu pour voir le sol. J'applique ensuite le blending alpha pour que l'on voit à travers. Mais ça ne fonctionne pas, il affiche juste le haut et après quand je me déplace il affiche juste le sol. Je ne sais pas si tu as eu le temps de voir le rendu.
Purée j'ai acheté un nouveau PC parce que ça ne tournait pas assez vite sur mon PC portable avec les liste chaînées par pixel, et ça ne marche pas, je crois que je vais pouvoir le revendre..., ou alors je fais comme l'a dit mon frère, j'en profite pour acheter des jeux sur steam car ce PC puissant peut faire tourner n'importe quel jeux.
J'ai regardé un peu, mais en fait je ne comprend pas ce que tu essais de faire. Pourquoi utiliser un FBO? Tu rend le sol et les décors dans des passes différente?
Je ne voie pas l'utilité, tu gaspille de la mémoire et du temps de synchronisation. Sinon peut-être que je pourrais t'aider juste si je trouve comment rendre le sol. Sinon pour les décors ça semble bien fonctionner.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
Je jette l'éponge, je ne trouve pas le problème, normalement quand on rend en blending alpha, là ou c'est transparent et donc ou il n'y a pas de décors on devrait voir le sol, mais non, je ne sais pas d'ou vient le problème mais même avec la SFML j'ai ce problème.
Je n'ai pas se problème sous linux avec mesa driver serait-ce le driver ? Dans ce cas là, je ne peux rien faire pour résoudre ce problème.
Moi non plus je ne vois pas ce qui cloche, mon sprite batching et mes shaders sont bon parce que les textures de mes fbo sont bonnes quand je les affichent, c'est lorsque je veux rendre les textures de mes fbo en blending alpha dans le framebuffer par défaut que ça cloche au lieu de faire le blending alpha il remplace la texture du sol par celle des décors...
Pourtant j'ai bien paramétrer opengl pour qu'il fasse du blending alpha.
EDIT : Bon le problème vient de la SFML, j'ai essayé d'utiliser opengl en dehors de la SFML et là le blending se fait bien.
J'ai encore quelques soucis, en mode Debug lorsque je déplace la vue avec les touches zqsd, et que j'affiche le personnage, celui-ci clignote. (Bizarre, je n'avais pas se soucis sous linux)
Et en mode release lorsque j'essaye de déplacer la vue j'ai un crash (illegal instruction) je n'avais pas ça sous linux.
Bon, j'ai essayé d'afficher les ombres et les lumières mais sans instanced rendering, en utilisant encore l'opengl 3.0 car ça marche mieux comme ça avec l'opengl moderne les ombres sont mal placées.
De toute façon il n'y a que avec les per pixel linked list que j'ai besoin de faire de l'instanced rendering car c'est ça qui est le plus lent à rendre.
C'est sur ces dernières optimisations que j'arrête le développement du moteur de jeux, je n'ai plus la motivation de programmer comme je l'avais avant et je ne sais pas pourquoi...
Edit : ça tournait à 2 fps sur mon ancien PC portable en mode debug... mais j'étais sous linux avec mesa 3D comme driver ne supportant même pas le glsl 3.3.
Sur mon nouveau PC j'arrive à 60 fps en mode debug, 350 en mode release, c'est déjà beaucoup mieux avec de l'instanced rendering et les vbos.
Si tu perd de la motivation c'est probablement parce que tu n'as rien fait de concret avec ton moteur. Quel est la raison pour avoir réalisé ce moteur. Sûrement pour faire des jeux ou même des applications. Réalise quelque chose de concret que tu pourrais vendre, ce qui va par la suite démontrer son potentiel et ainsi de suite.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.
GZE, un moteur multiplateforme, adapté pour de la 2D, 3D et création de logiciels.