Как правильно отправить данные с параметром шага

Я пытаюсь визуализировать какую-то сетку с одной текстурой, и результат странный, может быть, потому, что параметр шага данных UVs неверен.

я пропустил glGenBuffers и обязательные вызовы.

у меня есть данные, упакованные таким образом:

float (*vertices)[3];     //list of vertices
int   nvertices;
unsigned int (*indices)[3]; //one row define indices for a triangle
int   nindices;
float (*texuv)[6];          //one row defines 3 UVcoord for the 3 triangle vertices

я настроил данные:

  glBufferData(GL_ARRAY_BUFFER, sizeof(float)*3*nvertices, vertices, GL_STATIC_DRAW);
glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(float)*nindices*3, indices, GL_STATIC_DRAW);
glBufferData(GL_ARRAY_BUFFER, sizeof(float)*nindices*6, texuv, GL_STATIC_DRAW);

я рисую это:

glVertexAttribPointer(position_slot,3,GL_FLOAT,GL_FALSE,sizeof(float)*3,0);
glVertexAttribPointer(texcoord_slot,2,GL_FLOAT,GL_FALSE,sizeof(float)*6,0);

glDrawElements(GL_TRIANGLES,nindices*3,GL_UNSIGNED_INT,0);

но результат кажется немного странным на уровне текстуры …

Не могли бы вы предложить мне, как передать мои данные UV в шейдер или как переформатировать в более утилитарный способ?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]