Показать сообщение отдельно
Старый 04.01.2009, 08:31   #1
Townboy
AnyKey`щик
 
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение
(для 0 участников)
С Blitz3d на Xors

Помогите перевести на Xors вот это

Function TriMesh(inmesh%)

outmmesh=CreateMesh()
outsurf=CreateSurface(outmmesh)
outvc=0
For sc=1 To CountSurfaces(inmesh)
insurf=GetSurface(inmesh,sc)

For vc=0 To CountVertices(insurf)-1
NewV=AddVertex(outsurf,VertexX(insurf,vc),VertexY( insurf,vc),VertexZ(insurf,vc))
Next

For tc=0 To CountTriangles(insurf)-1
AddTriangle(outsurf,outvc+TriangleVertex(insurf,tc ,0),outvc+TriangleVertex(insurf,tc,1),outvc+Triang leVertex(insurf,tc,2))
Next

outvc=outvc+CountVertices(insurf)
Next
UpdateNormals outmmesh

nsurf = CountSurfaces(outmmesh )
nvert = 0
nface=0
For ns = 1 To nsurf
Local surf = GetSurface(outmmesh ,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(outmmesh,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
FreeEntity outmmesh
Return bbb%
End Function
(Offline)
 
Ответить с цитированием