//перенесите темы в 3д плиз. ) ошибься)
В общем, запутался с физиксом.
Стоит такая задача:
Я создаю прямо в игре меш - то есть ни откуда не загружаю, именно в игре создаю.
Проблема такая - как заменить функцию 3dmax - ResetXForm - в ксорсе под бмаксом и почему функция по поводу создания тримеша не работает - заикается на именно самом создании :
Function BodyCreateMesh:Int(mesh:Int)
Local nsurf:Int = xCountSurfaces(mesh)
Local nvert:Int = 0
Local nface:Int = 0
For Local ns:Int = 0 To nsurf-1
Local surf:Int = xGetSurface(mesh, ns)
nface:Int = nface + xCountTriangles(surf)
nvert:Int = nvert + xCountVertices(surf)
Next
Local fbank:TBank = CreateBank(nface * 4 * 3)
Local nf:Int = 0
Local vbank:TBank = CreateBank(nvert * 4 * 3)
Local nv:Int = 0
For Local ns:Int = 0 To nsurf-1
Local surf:Int = xGetSurface(mesh, ns)
Local nfv:Int = xCountTriangles(surf)
For Local nfc:Int = 0 To nfv - 1
PokeInt fbank, nf * 12 + 0, xTriangleVertex(surf, nfc, 0)
PokeInt fbank, nf * 12 + 4, xTriangleVertex(surf, nfc, 1)
PokeInt fbank, nf * 12 + 8, xTriangleVertex(surf, nfc, 2)
nf=nf+1
Next
Local nvv:Int = xCountVertices(surf)
For Local nvc:Int = 0 To nvv - 1
PokeFloat vbank, nv * 12 + 0, xVertexX(surf, nvc)
PokeFloat vbank, nv * 12 + 4, xVertexY(surf, nvc)
PokeFloat vbank, nv * 12 + 8, xVertexZ(surf, nvc)
nv = nv+1
Next
Next
Local bbb:Int = pxCreateTriMesh(vbank, fbank, nvert, nface, 0)
vbank = Null
fbank = Null
Return bbb%
End Function
|
Кто-нибудь знает? Я с физиксом мало знаком, да и с ксорсом тоже)...