Блендер сгенерирует obj с двумя косыми чертами для лиц, где

Я пытаюсь создать 3D-сцену с OpenGL ES 2, я новичок в xCode и Objective-C. Я слежу за этим учебник по преобразованию сгенерированного блендером файла * .obj в файлы * .h и * .c Но скрипт хочет, чтобы obj был таким:

v 1.000000 -1.000000 -1.000000
v 1.000000 -1.000000 1.000000
v -1.000000 -1.000000 1.000000
v -1.000000 -1.000000 -1.000000
v 1.000000 1.000000 -0.999999
v 0.999999 1.000000 1.000001
v -1.000000 1.000000 1.000000
v -1.000000 1.000000 -1.000000
vt 0.375624 0.500625
vt 0.624375 0.500624
vt 0.375625 0.749375
vt 0.375625 0.251875
vt 0.375624 0.003126
vt 0.624374 0.251874
vt 0.873126 0.749375
vt 0.873126 0.998126
vt 0.624375 0.749375
vt 0.624375 0.998126
vt 0.126874 0.998126
vt 0.126874 0.749375
vt 0.375625 0.998126
vt 0.624373 0.003126
vn 0.000000 -1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 1.000000 -0.000000 0.000000
vn 0.000000 -0.000000 1.000000
vn -1.000000 -0.000000 -0.000000
vn 0.000000 0.000000 -1.000000
vn 1.000000 0.000000 0.000001
s off
f 1/1/1 2/2/1 4/3/1
f 5/4/2 8/5/2 6/6/2
f 1/1/3 5/4/3 2/2/3
f 2/7/4 6/8/4 3/9/4
f 3/9/5 7/10/5 4/3/5
f 5/11/6 1/12/6 8/13/6
f 2/2/1 3/9/1 4/3/1
f 8/5/2 7/14/2 6/6/2
f 5/4/7 6/6/7 2/2/7
f 6/8/4 7/10/4 3/9/4
f 7/10/5 8/13/5 4/3/5
f 1/12/6 4/3/6 8/13/6

И когда я создаю новый куб (или что-то еще), я получаю такой объект:

v 1.000000 -1.000000 -1.000000
v 1.000000 -1.000000 1.000000
v -1.000000 -1.000000 1.000000
v -1.000000 -1.000000 -1.000000
v 1.000000 1.000000 -0.999999
v 0.999999 1.000000 1.000001
v -1.000000 1.000000 1.000000
v -1.000000 1.000000 -1.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 1.000000 -0.000000 0.000000
vn 0.000000 -0.000000 1.000000
vn -1.000000 -0.000000 -0.000000
vn 0.000000 0.000000 -1.000000
vn 1.000000 0.000000 0.000001
s off
f 1//1 2//1 4//1
f 5//2 8//2 6//2
f 1//3 5//3 2//3
f 2//4 6//4 3//4
f 3//5 7//5 4//5
f 5//6 1//6 8//6
f 2//1 3//1 4//1
f 8//2 7//2 6//2
f 5//7 6//7 2//7
f 6//4 7//4 3//4
f 7//5 8//5 4//5
f 1//6 4//6 8//6

Лица разделены двумя косыми чертами, хотя я ожидал только одну. Есть самый простой способ сгенерировать файлы .h и .c для xCode, каждый скрипт (для Blender), который я пробовал, терпел неудачу. Или кто-нибудь может сказать мне, как получить чистый obj файл.

Большое спасибо


person Jordan    schedule 19.03.2014    source источник


Ответы (1)


В результате вы получите правильный файл obj. Однако то, что вы хотите, - это неверный объект.

Формат команды f - f position_id/texture_coordinates_id/normal_id. У вас нет координат текстуры, поэтому это поле пусто.

Варианты

  1. исправить парсер, чтобы он мог загружать obj без координат текстуры, или

  2. просто добавьте UV-карту к вашему объекту.

person keltar    schedule 19.03.2014
comment
Ты прав. Я просто добавляю UV-карту, и теперь вывод obj такой, как я ожидал. Спасибо ! - person Jordan; 19.03.2014