Показать сообщение отдельно
Старый 20.12.2008, 00:55   #1
Sanzec
AnyKey`щик
 
Регистрация: 09.05.2007
Сообщений: 7
Написано 0 полезных сообщений
(для 0 пользователей)
PhysX, Xors3D, не примитивная физика

Здравствуйте!

Есть функция, которую я нашел в семплах физикса (но он там почему то не используется). Функция для создания body из загруженного меша.

Function BodyCreateMesh(mesh)
    
nsurf CountSurfaces(mesh)
    
nvert 0
    nface
=0
    
For ns 1 To nsurf
        Local surf 
GetSurface(mesh,ns)
        
nface nface+CountTriangles(surf)
        
nvert nvert +CountVertices(surf)
    
Next

    fbank 
CreateBank(nface*4*3)
    
nf 0
    vbank 
CreateBank(nvert*4*3)
    
nv 0
    
For ns 1 To nsurf
        surf 
GetSurface(mesh,ns)
        
nfv CountTriangles(surf)
        For 
nfc 0 To nfv -1
            PokeInt fbank
,nf*12+0,TriangleVertex(surf,nfc,0)
            
PokeInt fbank,nf*12+4,TriangleVertex(surf,nfc,1)
            
PokeInt fbank,nf*12+8,TriangleVertex(surf,nfc,2)
            
nf=nf+1
        Next

        nvv 
CountVertices(surf)
        For 
nvc 0 To nvv 1
            PokeFloat vbank
,nv*12+0,VertexX(surf,nvc)
            
PokeFloat vbank,nv*12+4,VertexY(surf,nvc)
            
PokeFloat vbank,nv*12+8,VertexZ(surf,nvc)
            
nv nv+1
        Next
    Next
    bbb
%=pxCreateTriMesh(vbankfbanknvertnface,0)
    
FreeBank vbank
    FreeBank fbank
    
Return bbb%
End Function 
Ее использование вызывает MOV. Почему? Использую физикс в связке с xors3D.

Последний раз редактировалось Sanzec, 20.12.2008 в 01:06.
(Offline)
 
Ответить с цитированием