SaveMeshInFile/LoadMeshFromFile Funktionen von ??? |
Hallo. Um ein Mesh in eine Datei zu Speichern muss man den Filehandle angeben. Soll heißen: Man kann mit der Funktion beliebig viele Meshs in eine Datei Speichern/Laden. [code:1:789a7caf25]Function SaveMeshInFile( Stream , Mesh ) WriteLine Stream,CountSurfaces(Mesh) For S = 1 To CountSurfaces(Mesh) Surface = GetSurface(Mesh,S) WriteFloat Stream,CountVertices(Surface) For V = 0 To CountVertices(Surface) - 1 WriteFloat Stream,VertexX#(Surface,V) WriteFloat Stream,VertexY#(Surface,V) WriteFloat Stream,VertexZ#(Surface,V) WriteFloat Stream,VertexU#(Surface,V, 0) WriteFloat Stream,VertexV#(Surface,V, 0) WriteFloat Stream,VertexW#(Surface,V, 0) WriteFloat Stream,VertexU#(Surface,V, 1) WriteFloat Stream,VertexV#(Surface,V, 1) WriteFloat Stream,VertexW#(Surface,V, 1) WriteFloat Stream,VertexNX#(Surface,V) WriteFloat Stream,VertexNY#(Surface,V) WriteFloat Stream,VertexNZ#(Surface,V) Next WriteLine Stream,CountTriangles(Surface) For T = 0 To CountTriangles(Surface) - 1 WriteFloat Stream,TriangleVertex(Surface,T,0) WriteFloat Stream,TriangleVertex(Surface,T,1) WriteFloat Stream,TriangleVertex(Surface,T,2) Next Next End Function Function LoadMeshFromFile( Stream ) Local Mesh,SCount,VCount,TCount,S,VNX#,VNY#,VNZ# Local Surface,V1,T,X#,Y#,Z#,tU1#,tV1#,tW1#,tU2#,tV2#,tW2#,VT0,VT1,VT2 Mesh = CreateMesh() SCount = ReadLine(Stream) For S = 1 To SCount Surface = CreateSurface(Mesh) VCount = ReadFloat(Stream) For V1 = 0 To VCount - 1 X# = ReadFloat(Stream) Y# = ReadFloat(Stream) Z# = ReadFloat(Stream) tU1# = ReadFloat(Stream) tV1# = ReadFloat(Stream) tW1# = ReadFloat(Stream) tU2# = ReadFloat(Stream) tV2# = ReadFloat(Stream) tW2# = ReadFloat(Stream) VNX# = ReadFloat(Stream) VNY# = ReadFloat(Stream) VNZ# = ReadFloat(Stream) AddVertex Surface,X#,Y#,Z#,tU1#,tV1#,tW1# VertexNormal Surface,V1,VNX#,VNY#,VNZ# VertexTexCoords Surface, V1, tU1#, tV1#, tW1#, 0 VertexTexCoords Surface, V1, tU2#, tV2#, tW2#, 1 Next TCount = ReadFloat(Stream) For T = 0 To TCount - 1 VT0 = ReadFloat(Stream) VT1 = ReadFloat(Stream) VT2 = ReadFloat(Stream) AddTriangle Surface,VT0,VT1,VT2 Next Next UpdateNormals Mesh Return Mesh End Function[/code:1:789a7caf25] Wer die Befehle nicht genau versteht, der sollte auf www.BlitzBase.de gehen. Dort gibt es eine große Onlinehilfe mit Beispielen usw. cu |
von ??? |
Cooll, danke. CountChildren wär noch ne Verbesserung. |