Как создать текстурные координаты

Я использовал Blender для создания 3D модальных. Я создал файл .obj и преобразовал его в файл .h, но .h, имеющий только glVertexPointer, glDrawArrays. Я использовал .png файл изображения. Но когда изображение отслеживается, 3D-модал не отображается должным образом. Это какой то черный цвет. Как создать координаты текстуры с помощью Blender или, если я импортирую файл .obj, любое другое программное обеспечение создаст координаты текстуры

/*

created with obj2opengl.pl

source file    : .\Sample.obj

vertices       : 8428

faces          : 14040

normals        : 0

texture coords : 0

// include generated arrays

#import ".\Sample.h"
// set input data to arrays

glVertexPointer(3, GL_FLOAT, 0, SampleVerts);

// draw data

glDrawArrays(GL_TRIANGLES, 0, SampleNumVerts);

*/

unsigned int SampleNumVerts = 42120;

float SampleVerts [] = {

// f 2 1 3 4

-0.233114614641671, 0.446055325439014, 0.223483335097295,

0.266885385358329, 0.446055325439014, 0.223483335097295,

0.266885385358329, 0.446055325439014, -0.276516664902705,

// f 2 1 3 4

-0.233114614641671, 0.446055325439014, 0.223483335097295,

-0.233114614641671, 0.446055325439014, -0.276516664902705,

0.266885385358329, 0.446055325439014, -0.276516664902705,

// f 6 5 7 8...........}

0

Решение

Вам нужно экспортировать вашу модель с координатами текстуры из Blender (не эта тема здесь уместна. Учебники Blenders должны ответить на этот вопрос за вас). При преобразовании в формат .h (не уверен, что вы использовали для этого) убедитесь, что вы не пропускаете координаты UV / текстуры. Поместите их в массив, который я назову SampleUVs.

Вы должны добавить это непосредственно перед вызовом glDrawArrays, после glVertexPointer:

glTexCoordPointer(3, GL_FLOAT, 0, SampleUVs);

Это позволяет координаты текстуры из массива SampleUVs. 3 представляет координаты текстуры x, y, z (измените на 2 только для x, y).

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

http://nehe.gamedev.net/tutorial/texture_mapping/12038/

1

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

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