TriMesh - создание.
//перенесите темы в 3д плиз. ) ошибься)
В общем, запутался с физиксом. Стоит такая задача: Я создаю прямо в игре меш - то есть ни откуда не загружаю, именно в игре создаю. Проблема такая - как заменить функцию 3dmax - ResetXForm - в ксорсе под бмаксом и почему функция по поводу создания тримеша не работает - заикается на именно самом создании : Цитата:
|
Ответ: TriMesh - создание.
Нашел заменение этой функции:
Цитата:
виноват resetXform. Я провел эксперимент - взял модель в максе, применил resetXform . запускаю в ксорсе функцию по созаднию тримеша- работает! . создал в ксорсе новый меш , приаддмешил к нему вышестоящую модель - не работает. следовательно вывод - вся соль в resetXform! // add Global Cube:Int = xCreatexLoadMesh("Media/Test/1.b3d") Global VB:Byte Ptr = xGetMeshVB(Cube) Global VB_size:Int = xGetMeshVBSize(Cube) Global IB:Byte Ptr = xGetMeshIB(Cube) Global IB_size:Int = xGetMeshIBSize(Cube) Global Cube_Body:Int = pxCreateTriMesh(VB, IB, VB_size, IB_size, 0) если делать так - то работает. Но мне нужно сделать это через пустой меш, т.е.: Global Cube:Int = xCreateMesh() Global Mesh:Int = xLoadMesh("Media/Test/1.b3d") xAddMesh(mesh,Cube) Global VB:Byte Ptr = xGetMeshVB(Cube) Global VB_size:Int = xGetMeshVBSize(Cube) Global IB:Byte Ptr = xGetMeshIB(Cube) Global IB_size:Int = xGetMeshIBSize(Cube) Global Cube_Body:Int = pxCreateTriMesh(VB, IB, VB_size, IB_size, 0) т.е. через пустой меш создать тримеш, а к пустому добавить модель. мб так обхяснил норм) |
Ответ: TriMesh - создание.
На удивление, разобрался.
Global VB:Byte Ptr = xGetMeshVB(Cube) Global VB_size:Int = xGetMeshVBSize(Cube) Global IB:Byte Ptr = xGetMeshIB(Cube) Global IB_size:Int = xGetMeshIBSize(Cube) Global Cube_Body:Int = pxCreateTriMesh(VB, IB, VB_size, IB_size, 0) вот ЭТО вот работает только в глобальном режиме, в виде функции, почему-то ,не канает о_О |
Ответ: TriMesh - создание.
Да чо за бред какой-то, меш-то сам одинаковый, глобальный у него хендл или нет.
|
Ответ: TriMesh - создание.
Да сам не особо врубаюсь, что сделал, и почему все заработало
|
Ответ: TriMesh - создание.
ты наверняка хранил функцию в отдельном подключаемом файле, и инклуд вынес выше создания физического мира. недавно тока со мной такая шляпа случилась)) минут 30 дебажил код, пока не дошло)
|
Ответ: TriMesh - создание.
Блин, точно ведь! Я тупой, сцуко )
|
Часовой пояс GMT +4, время: 10:56. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot