Показать сообщение отдельно
Старый 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(vbank, fbank, nvert, nface,0)
    
FreeBank vbank
    FreeBank fbank
    
Return bbb%
End Function 
Ее использование вызывает MOV. Почему? Использую физикс в связке с xors3D.

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