IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenGL Discussion :

probleme avec VBO


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 52
    Par défaut probleme avec VBO
    Bonjour,

    j'ai un petit probleme avec les Vertex Buffer. J'alloue un tableau assez gros que j'initialise a 0. J'initialise ensuite un vertex buffer avec ce tableau, mais quand je l'affiche j'ai plein de points eparpillés autour de 0. J'ai remarqué que quand la taille du tableau est inferieure a 300k tout va bien. Ca doit être une erreur toute bete, je vois pas d'ou ca vient...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
    #include <iostream>
     
    #include "glew/include/GL/glew.h"
    #include "gl/glut.h"
     
    using namespace std;
     
    #define SIZE 1000000
     
    void Display(void);
     
     
    float *tab=0;
    GLuint buff;
     
     
     
    void CreateBuff(void)
    {
     
    	if(!tab)
    	{
    		tab=new float[SIZE];
    		for(int i=0;i<SIZE;i++)
    			tab[i]=0.f;
    		glGenBuffers(1,&buff);
    		glBindBuffer(GL_ARRAY_BUFFER, buff);
    		glBufferData(GL_ARRAY_BUFFER,SIZE*sizeof(float),tab,GL_STREAM_DRAW);
    		cout<<"Buff cree"<<endl;
    	}		
    }
     
    void main(void)
    {
    	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH);	
    	glutInitWindowSize(700,700);
                 glutCreateWindow("TestGLew");
     
    	GLenum err = glewInit();
    	if (GLEW_OK != err)
    	{
    		cout<<"Glew erreur"<<endl;	
    	}
     
    	CreateBuff();
     
      	glutDisplayFunc(Display);
     
    	glutMainLoop();	
    }
     
    void Display(void)
    {
    	if(tab)
    	{
    		cout<<"Affichage"<<endl;
    		glBindBuffer(GL_ARRAY_BUFFER, buff);
     
    		glVertexPointer(2,GL_FLOAT,2*sizeof(float),NULL);	
     
    		glEnableClientState(GL_VERTEX_ARRAY); 
    		glDrawArrays(GL_POINTS,NULL,SIZE/2);
    		glDisableClientState(GL_VERTEX_ARRAY);
    	}
     
    	glutSwapBuffers();
    }
    Je m'etais trompé dans les tailles des buffers, ca marche :p

  2. #2
    Membre Expert
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 573
    Par défaut
    Citation Envoyé par briqueabrac Voir le message
    Je m'etais trompé dans les tailles des buffers, ca marche :p
    donc c'est ?
    merci de penser au petit bouton en bas de la discussion
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

Discussions similaires

  1. Probleme avec VBO
    Par Naelhem dans le forum OpenGL
    Réponses: 4
    Dernier message: 07/11/2006, 18h28
  2. Probleme avec la copie des surfaces
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/01/2003, 10h33
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo