Всем привет я далек от 3D дизайна, я занимаюсь программированием. Моя задача перетащить модель из 3D Max в DirectX.
Заранее извиняюсь если слишком большой текст я не нашел опции скрыть код, или вопрос не в тот раздел. Просто я не знаю у кого еще спросить.
У меня вопрос. Я нашел ед пример для obj формата и то из Майи.
Как вот это?
Преобразовать вот в это?
Как все это объединить?
Должны же быть какие то формулы? Где про это прочитать? Перерывать всю алгебру и геометрию и тригонометрию, не понимая что искать, это займет огромное кол-во времени и не даст результата.
Аналогично у меня есть модель куба из 3D Max.
Я знаю какие буквы что обозначают, допустим
f 1/1/1 2/2/1 3/3/1
Vertex[1] - > texture[1] -> normals[1] ; Vertex[2] - > texture[2] -> normals[2] ; Vertex[3] - > texture[3] -> normals[3] ;
Обратил внимание что в майе идет сперва
v -0.500000 -0.500000 0.500000
/.....
vt 0.001992 0.001992
/....
vn 0.000000 0.000000 1.000000
А в максе
v -0.5000 0.0000 0.5000
/....
vn 0.0000 -1.0000 -0.0000
/....
vt 0.3393 0.6607 0.0000
Значит ли это что и идут в другом порядке? f 1/1/1 2/2/1 3/3/1
Заранее извиняюсь если слишком большой текст я не нашел опции скрыть код, или вопрос не в тот раздел. Просто я не знаю у кого еще спросить.
У меня вопрос. Я нашел ед пример для obj формата и то из Майи.
Как вот это?
Код:
mtllib cube.mtl
g default
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 0.500000 0.500000
v 0.500000 0.500000 0.500000
v -0.500000 0.500000 -0.500000
v 0.500000 0.500000 -0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 -0.500000
vt 0.001992 0.001992
vt 0.998008 0.001992
vt 0.001992 0.998008
vt 0.998008 0.998008
vt 0.001992 0.001992
vt 0.998008 0.001992
vt 0.001992 0.998008
vt 0.998008 0.998008
vt 0.001992 0.001992
vt 0.998008 0.001992
vt 0.001992 0.998008
vt 0.998008 0.998008
vt 0.001992 0.001992
vt 0.998008 0.001992
vt 0.001992 0.998008
vt 0.998008 0.998008
vt 0.001992 0.001992
vt 0.998008 0.001992
vt 0.001992 0.998008
vt 0.998008 0.998008
vt 0.998008 0.998008
vt 0.001992 0.998008
vt 0.998008 0.001992
vt 0.001992 0.001992
vn 0.000000 0.000000 1.000000
vn 0.000000 0.000000 1.000000
vn 0.000000 0.000000 1.000000
vn 0.000000 0.000000 1.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
s 1
g pCube1
usemtl file1SG
f 1/1/1 2/2/2 3/3/3
f 3/3/3 2/2/2 4/4/4
s 2
f 3/13/5 4/14/6 5/15/7
f 5/15/7 4/14/6 6/16/8
s 3
f 5/21/9 6/22/10 7/23/11
f 7/23/11 6/22/10 8/24/12
s 4
f 7/17/13 8/18/14 1/19/15
f 1/19/15 8/18/14 2/20/16
s 5
f 2/5/17 8/6/18 4/7/19
f 4/7/19 8/6/18 6/8/20
s 6
f 7/9/21 1/10/22 5/11/23
f 5/11/23 1/10/22 3/12/24
Преобразовать вот в это?
Код:
Vertex Count: 36
Data:
-0.5 0.5 -0.5 0.001992 0.00199199 0 0 -1
0.5 -0.5 -0.5 0.998008 0.998008 0 0 -1
-0.5 -0.5 -0.5 0.001992 0.998008 0 0 -1
0.5 0.5 -0.5 0.998008 0.00199199 0 0 -1
0.5 -0.5 -0.5 0.998008 0.998008 0 0 -1
-0.5 0.5 -0.5 0.001992 0.00199199 0 0 -1
-0.5 0.5 0.5 0.001992 0.00199199 0 1 -0
0.5 0.5 -0.5 0.998008 0.998008 0 1 -0
-0.5 0.5 -0.5 0.001992 0.998008 0 1 -0
0.5 0.5 0.5 0.998008 0.00199199 0 1 -0
0.5 0.5 -0.5 0.998008 0.998008 0 1 -0
-0.5 0.5 0.5 0.001992 0.00199199 0 1 -0
-0.5 -0.5 0.5 0.998008 0.998008 0 0 1
0.5 0.5 0.5 0.001992 0.00199199 0 0 1
-0.5 0.5 0.5 0.998008 0.00199199 0 0 1
0.5 -0.5 0.5 0.001992 0.998008 0 0 1
0.5 0.5 0.5 0.001992 0.00199199 0 0 1
-0.5 -0.5 0.5 0.998008 0.998008 0 0 1
-0.5 -0.5 -0.5 0.001992 0.00199199 0 -1 -0
0.5 -0.5 0.5 0.998008 0.998008 0 -1 -0
-0.5 -0.5 0.5 0.001992 0.998008 0 -1 -0
0.5 -0.5 -0.5 0.998008 0.00199199 0 -1 -0
0.5 -0.5 0.5 0.998008 0.998008 0 -1 -0
-0.5 -0.5 -0.5 0.001992 0.00199199 0 -1 -0
0.5 0.5 -0.5 0.001992 0.00199199 1 0 -0
0.5 -0.5 0.5 0.998008 0.998008 1 0 -0
0.5 -0.5 -0.5 0.001992 0.998008 1 0 -0
0.5 0.5 0.5 0.998008 0.00199199 1 0 -0
0.5 -0.5 0.5 0.998008 0.998008 1 0 -0
0.5 0.5 -0.5 0.001992 0.00199199 1 0 -0
-0.5 0.5 0.5 0.001992 0.00199199 -1 0 -0
-0.5 -0.5 -0.5 0.998008 0.998008 -1 0 -0
-0.5 -0.5 0.5 0.001992 0.998008 -1 0 -0
-0.5 0.5 -0.5 0.998008 0.00199199 -1 0 -0
-0.5 -0.5 -0.5 0.998008 0.998008 -1 0 -0
-0.5 0.5 0.5 0.001992 0.00199199 -1 0 -0
Должны же быть какие то формулы? Где про это прочитать? Перерывать всю алгебру и геометрию и тригонометрию, не понимая что искать, это займет огромное кол-во времени и не даст результата.
Аналогично у меня есть модель куба из 3D Max.
Код:
v -0.5000 0.0000 0.5000
v -0.5000 0.0000 -0.5000
v 0.5000 0.0000 -0.5000
v 0.5000 0.0000 0.5000
v -0.5000 1.0000 0.5000
v 0.5000 1.0000 0.5000
v 0.5000 1.0000 -0.5000
v -0.5000 1.0000 -0.5000
# 8 vertices
vn 0.0000 -1.0000 -0.0000
vn 0.0000 1.0000 -0.0000
vn 0.0000 0.0000 1.0000
vn 1.0000 0.0000 -0.0000
vn 0.0000 0.0000 -1.0000
vn -1.0000 0.0000 -0.0000
# 6 vertex normals
vt 0.3393 0.6607 0.0000
vt 0.3393 0.3393 0.0000
vt 0.6607 0.3393 0.0000
vt 0.6607 0.6607 0.0000
vt 0.0100 0.6686 0.0000
vt 0.3314 0.6686 0.0000
vt 0.3314 0.9900 0.0000
vt 0.0100 0.9900 0.0000
vt 0.3393 0.0100 0.0000
vt 0.6607 0.0100 0.0000
vt 0.6607 0.3314 0.0000
vt 0.3393 0.3314 0.0000
vt 0.6686 0.0100 0.0000
vt 0.9900 0.0100 0.0000
vt 0.9900 0.3314 0.0000
vt 0.6686 0.3314 0.0000
vt 0.0100 0.3393 0.0000
vt 0.3314 0.3393 0.0000
vt 0.3314 0.6607 0.0000
vt 0.0100 0.6607 0.0000
vt 0.0100 0.0100 0.0000
vt 0.3314 0.0100 0.0000
vt 0.3314 0.3314 0.0000
vt 0.0100 0.3314 0.0000
# 24 texture coords
g Box003
usemtl Material__25
f 1/1/1 2/2/1 3/3/1
f 3/3/1 4/4/1 1/1/1
f 5/5/2 6/6/2 7/7/2
f 7/7/2 8/8/2 5/5/2
f 1/9/3 4/10/3 6/11/3
f 6/11/3 5/12/3 1/9/3
f 4/13/4 3/14/4 7/15/4
f 7/15/4 6/16/4 4/13/4
f 3/17/5 2/18/5 8/19/5
f 8/19/5 7/20/5 3/17/5
f 2/21/6 1/22/6 5/23/6
f 5/23/6 8/24/6 2/21/6
# 12 faces
f 1/1/1 2/2/1 3/3/1
Vertex[1] - > texture[1] -> normals[1] ; Vertex[2] - > texture[2] -> normals[2] ; Vertex[3] - > texture[3] -> normals[3] ;
Обратил внимание что в майе идет сперва
v -0.500000 -0.500000 0.500000
/.....
vt 0.001992 0.001992
/....
vn 0.000000 0.000000 1.000000
А в максе
v -0.5000 0.0000 0.5000
/....
vn 0.0000 -1.0000 -0.0000
/....
vt 0.3393 0.6607 0.0000
Значит ли это что и идут в другом порядке? f 1/1/1 2/2/1 3/3/1