|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Développeur de jeux vidéo Inscription : juillet 2011 Messages : 9 ![]() |
Bonjour à tous,
Je cherche en ce moment un moyen pour afficher une grille (lignes 3D) dans le plan XZ et malheureusement je n'arrive pas à faire passer le code sans avoir un "accès mémoire invalide". Malheureusement, malgré toutes les recherches effectuées jusqu'ici aucun exemple ne passe par les VBO pour le dessin de lignes colorées (grise par défaut mais l'utilisateur peut choisir une autre couleur). Le dessin est toujours fait en mode direct. Pour le moment le code ressemble à ceci mais ça fonctionne pas. Code :
Merci à l'avance. SuperGénie |
||
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Alexandre LaurentÉtudiant Inscription : mai 2008 Messages : 6 560 ![]() |
Bonjour,
Pour le mix, je ne sais pas. Je dirai que c'est soir la méthode VBO, soit la vieille méthode (pipeline fixe -> glBegin() / glEnd()). Pour les VBOs, nous avons un exemple ici et là. Ce que je peux dire, c'est que j'avais fait un programme qui dessinait une grille. Le dernier point que j'ai à dire est que si votre couleur est unie pour toute la grille, ne la mettez pas dans le VBO et passez là simplement en uniform à votre shader.
__________________
Vous souhaitez participer à la section Jeux ? Contactez-moi ![]() La rubrique a aussi un blog ! Ma page sur DVP Mon Portfolio Qui connaît l'erreur, connaît la solution. |
|
|
01
|
|
|
#3 |
|
Invité régulier
![]() Développeur de jeux vidéo Inscription : juillet 2011 Messages : 9 ![]() |
Bonjour LittleWhite,
Ce que je cherche à faire c'est un logiciel similaire à Ultimate Unwrap 3D mais avec des fonctionnalités supplémentaires mais surtout créé pour fonctionner sous Linux, le tout programmé avec PureBasic. Dans UU3D, les grilles ne sont que des repères visuels alors que dans mon programme elles joueront également ce rôle en plus d'offrir un système de point aimanté (un grid-snap en bon français) similaire à celui qu'il y a dans Rhinoceros 3D par exemple. Mais dans le cas d'un logiciel d'édition l'utilisation des VBO je ne suis pas certain que ce soit vraiment nécessaire parce que la performance d'affichage n'est pas prioritaire. Je vois plutôt leurs utilisation comme une pratique pour le jeu qui suivra par la suite. Ceci étant dit, j'avais déjà regardé les exemples que tu propose mais aucun d'entre eux montre une utilisation combinée de "GL_LINES" + "VBO" + "Shaders". Parfois il y a un petit détail insignifiant qui fait en sorte que ça plante mais là je ne trouve pas ce qui cloche. J'espère qu'un exemple est présenté dans le livre : "OpenGL SuperBible" 5e édition que je vais commander prochainement étant donnée que je n'y ai plus accès depuis la fin des études universitaires. Merci à toi d'avoir répondu. A+ SuperGénie |
|
|
00
|
|
|
#4 |
![]() ![]() Guillaume BelzBiochimiste Inscription : novembre 2008 Messages : 2 872 ![]() |
Bonjour
Dans mon tutoriel sur OpenGL, j'ai utilisé sans problème un mix des 3 (directe pour afficher le repère orthonormé et VBO-shader pour le sol) : le mode direct et les VBO
__________________
Vous souhaitez rejoindre l'équipe de bénévoles qui fait vivre Developpez (traduction, rédaction, modération) ? Contactez moi par MP. Ma page personnelle avec la liste de mes articles - Mon blog sur la programmation des GPU. Je suis régulièrement sur le chat pour les questions C++/Qt. |
|
00
|
|
|
#5 |
![]() ![]() ![]() Alexandre LaurentÉtudiant Inscription : mai 2008 Messages : 6 560 ![]() |
Dans l'exemple de mon programme, c'est un GL_LINES avec shader et VBO et FBO.
__________________
Vous souhaitez participer à la section Jeux ? Contactez-moi ![]() La rubrique a aussi un blog ! Ma page sur DVP Mon Portfolio Qui connaît l'erreur, connaît la solution. |
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Développeur de jeux vidéo Inscription : juillet 2011 Messages : 9 ![]() |
Bonjour à tous,
À la lumière de vos indications, je me prend un peu trop le pompon pour rien. Donc les éléments de type ligne ce feront en affichage direct et le modèle 3D en cour d'édition ce sera des VBO, NBO, UVBO et IBO créé en mode #GL_STREAM_DRAW ou #GL_DYNAMIC_DRAW. De cette façon je pourrai modifier les informations plus facilement en effectuant une mise à jour sur l'élément concerné : - Le VBO pour une transformation 3D (1 ou plusieurs combiné) - En fonction des transformations appliquées au VBO refaire le calcul du NBO - Le UVBO dans le cas de manipulation du UVMapping - Le IBO lui ne changera pas à moins d'ajouter ou d'enlever des triangles dans le modèle Merci pour vos réponses. A+ SuperGénie |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com