For people who have the know-how of b3d-files, here's the code: (you can be shure that the functions ChunkEnd, Chunkbegin, WriteStringC are working correctly)
Dim ChunkStart(100) :Global chunkebene=0 function ExportIt(mesh) ;I call this function name$="sample.b3d" file=WriteFile(name$) If file=0 Then Return ChunkBegin(file,"BB3D") WriteInt(file,1) ;version ChunkBegin(file,"TEXS") ;-----Textures------------- For i=1 To texanz ;there are about 3 textures WriteStringC(file,texname$(i)) ;name (a field of texturenames) masked=4+1 WriteInt(file,masked) ;flags (alpha..) WriteInt(file,1) ;blend 1 WriteFloat(file,0) ;X ;def:0 WriteFloat(file,0) ;Y WriteFloat(file,1) ;X Scale ;def:1 WriteFloat(file,1) ;Y Scale WriteFloat(file,0) ;Rotation Next ChunkEnd(file) ;-----Textures end--------- ChunkBegin(file,"BRUS") ;+++++Brush++++++++++++++++ WriteInt(file,1) ;1 textures per brush WriteStringC(file,"Default") ;Dname WriteFloat(file,1) ;Dred WriteFloat(file,0.3) ;Dgreen WriteFloat(file,0.3) ;Dblue WriteFloat(file,1) ;Dalpha WriteFloat(file,0) ;Dshininess WriteInt(file,0) ;Dblend WriteInt(file,0) ;DFX WriteInt(file,-1) ;DTextureNr (-1=no?) For i=1 To texanz WriteStringC(file,"Brush"+i) ;name WriteFloat(file,0) ;red WriteFloat(file,0) ;green WriteFloat(file,0) ;blue WriteFloat(file,1) ;alpha WriteFloat(file,0) ;shininess WriteInt(file,0) ;blend WriteInt(file,0) ;FX WriteInt(file,i-1) ;TextureNr (from 0) End If Next ChunkEnd(file) ;End of BRUS chunk ChunkBegin(file,"NODE" ) ;+++++Entities+++++++++++++ WriteStringC(file,"TheEntity") ;name WriteFloat(file,0) ;x WriteFloat(file,0) ;y WriteFloat(file,0) ;z WriteFloat(file,1) ;x_scale WriteFloat(file,1) ;y_scale WriteFloat(file,1) ;z_scale WriteFloat(file,1) ;rot_w WriteFloat(file,0) ;rot_x WriteFloat(file,0) ;rot_y WriteFloat(file,0) ;rot_z ChunkBegin(file,"MESH") ;+++++Meshes+++++++++++++++ WriteInt(file,-1) ;no 'entity' brush ChunkBegin(file,"VRTS" ) ;+++++Vertexes+++++++++++++ WriteInt(file,1 ) ;flags - 0=no 1=with normals / 2=with color WriteInt(file,1 ) ;1 tex_coord sets WriteInt(file,2 ) ;2 coords per set surfaceanz=CountSurfaces(mesh) For k=1 To surfaceanz surf=GetSurface(mesh,k ) vertexanz=CountVertices( surf )-1 For j=0 To vertexanz TFormPoint VertexX(surf,j),VertexY(surf,j),VertexZ(surf,j),stone(i),0 WriteFloat(file,TFormedX() ) ;X WriteFloat(file,TFormedY() ) ;Y WriteFloat(file,TFormedZ() ) ;Z WriteFloat(file,-1);VertexNX#(surf,j)) ;NormalX WriteFloat(file,0);VertexNY#(surf,j)) ;NormalY WriteFloat(file,0);VertexNZ#(surf,j)) ;NormalZ WriteFloat(file,VertexU( surf,j ) );TextureU WriteFloat(file,VertexV( surf,j ) );TextureV Next Next ChunkEnd(file) ;-----Vertexes end--------- first_vert=0 surfaceanz=CountSurfaces(mesh) For k=1 To surfaceanz surf=GetSurface( mesh,k ) trisanz=CountTriangles( surf )-1 ChunkBegin(file,"TRIS" ) ;++++++Tris++++++++++++++++ WriteInt(file,SurfaceTexNr(k) ) ;The Textur Nr corresponds to the brush number (they go from 1 to texquantity) For j=0 To trisanz WriteInt(file,first_vert+TriangleVertex( surf,j,0 ) ) WriteInt(file,first_vert+TriangleVertex( surf,j,1 ) ) WriteInt(file,first_vert+TriangleVertex( surf,j,2 ) ) Next ChunkEnd(file) ;-----Tris end------------ first_vert=first_vert+CountVertices( surf ) Next ChunkEnd(file) ;-----Mesh end------------ ChunkEnd(file) ;-----Entity end---------- ChunkEnd(file) ;-----BB3D end------------ CloseFile file End Function ;*********************************** Function ChunkBegin(file,tag$) chunkebene=chunkebene+1 For k=1 To 4 WriteByte(file,Asc(Mid$( tag$,k,1 ))) Next WriteInt(file,0) ChunkStart(ChunkEbene)=FilePos(file) End Function ;********************************** Function ChunkEnd(file) aha=ChunkStart(ChunkEbene) n=FilePos(file) SeekFile file,ChunkStart(ChunkEbene)-4 WriteInt(file,n-ChunkStart(ChunkEbene)) SeekFile file,n ChunkEbene=ChunkEbene-1 End Function ;********************************* Function WriteStringC(file,t$) For k=1 To Len( t$ ) ch=Asc(Mid$(t$,k,1)) WriteByte(file,ch) If ch=0 Return Next WriteByte(file,0) End Function ;I've shortened the code a bit for you, so there could be some typing errors. The Exportfunktion does it's stuff very well, it even exports the right textures and right coordinates, except the problem, that masking doesn't work and that Vertex Normals don't work with Textured Surfaces. ;(To write this I used Marks makeb3d.bb)