Milkshape .x Dateien Importieren

Übersicht Ressourcen Andere Programme oder Tools

Neue Antwort erstellen

Dottakopf

Betreff: Milkshape .x Dateien Importieren

BeitragMo, Nov 23, 2009 15:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Blitzer,

ich wollte gerade mit Milkspahe ein Mesh/Model öffnen. Leider sind diese im ".x" format.
Wie bekomme ich die geladen? bzw. wie bekommt man das auf ".ms3d" umgewandelt

Gruß
Dottakopf
Rechtschreibfehler gelten der allgemeinen Belustigung!
 

Lion

BeitragMo, Nov 23, 2009 16:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Beim datei speichern gibts auch irgendwo eine möglichkeit die heißt "Exportieren" da dann entsprechendes format auswählen (3ds/b3d?)
Wobei man x doch auch mal laden konnte...? oder irre ich mich da gerad?
Intel Core 2 Quad 4x2.66 ghz - 4gb ddr2 - nvidia GeForce GTX660 2gb
Intel Atom 1x1.83 ghz - 2gb ddr2 - intel GMA 3150 256mb
AMD A10-5750M 4x2.5 ghz - 8 gb ddr4 - AMD R9 M290x

Dottakopf

BeitragMo, Nov 23, 2009 16:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein beim Öffnen verlangt Milkshape den .ms3d Typ. Darum Frage ich ja, wie man die .x Dateien importieren kann.

Evt. muss man die .x Datei erst in ein Milkshape gängiges Format umwandeln.
Nur leider habe ich keine Ahnung in welches. Embarassed

Gruß
Dottakopf
Rechtschreibfehler gelten der allgemeinen Belustigung!

Triton

BeitragMo, Nov 23, 2009 17:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Milkshape kann soweit ich weiß kein *.x importieren. Aber es gibt womöglich Upgrades, mit denen man
das erweitern kann.

Wenn nicht, musst du irgendein Programm suchen, dass x z.B nach 3ds exportiert, da die meisten Programme nicht nach ms3d exportieren können. 3ds kann man dann auch in Milky importieren.

edit--
Und das gehört wohl eher in andere Programme&Tools.

Arrow Verschoben
Coding: silizium-net.de | Portfolio: Triton.ch.vu

Eingeproggt

BeitragMo, Nov 23, 2009 18:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei solchen Fragen schreib ich immer wieder gern dazu dass man sich sowas in Blitz selber schreiben kann. Und wer jetzt - zu Recht - keine Lust drauf hat die Dateiformate bis ins kleinste Detail zu studieren der kann in der englischen BlitzBasic-Community Export-Funktionen für geladene Meshes finden. (x und b3d is auf jeden Fall dabei, 3ds auch wenn ich nicht ganz verwirrt bin)

Also *.x in B3D laden, mit dieser Funktion abspiechern - fertig.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

Dottakopf

BeitragDi, Nov 24, 2009 8:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke Chris, ich werde mich mal durchwühlen. Wenn ich was hab schreibe ich es gerne hier hinzu.

Mensch Triton, du hast recht, gehört hierhin..

Gruß
Dottakopf
Rechtschreibfehler gelten der allgemeinen Belustigung!

Dottakopf

BeitragDi, Nov 24, 2009 10:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Habe einen code gefunden der .x dateien in eine b3d Datei umwandelt.
Jetzt muss ich nur noch rausbekommen, wie ich eine .b3d Datei mit milkshape öffnen kann Wink (ja ich bin ein milky noob..)

hier der code
Code: [AUSKLAPPEN]

;/////////////////////////////////
rd=ReadDir(CurrentDir$())

tm$=NextFile$(rd)

While Not tm$=""

If Right$(tm$,4)=".3ds" Or Right$(tm$,4)=".3DS" Or Right$(tm$,2)=".x" Or Right$(tm$,2)=".X"

mesh = LoadMesh  (tm$)

If Right$(tm$,4)=".3ds" Or Right$(tm$,4)=".3DS" Then tm$=Left$(tm$,Len(tm$)-4)
If Right$(tm$,2)=".x" Or Right$(tm$,2)=".X" Then tm$=Left$(tm$,Len(tm$)-2)

WriteBB3D( tm$+".b3d",mesh )

FreeEntity mesh

Print tm$ + "  Ok"

EndIf

tm$=NextFile$(rd)
Wend


CloseDir rd

End


;/////////////////////////////////////////////////////////////////////////
;////////////////////////////////////////////////////////////////////////


Function WriteBB3D( f_name$,mesh )

   file=WriteFile( f_name$ )

   b3dSetFile( file )
   
   b3dBeginChunk( "BB3D" )
      b3dWriteInt( 1 )   ;version
      
      b3dBeginChunk( "BRUS" )
         b3dWriteInt( 0 )               ;0 textures per brush
         b3dWriteString( "Brush" )         ;brush name
         b3dWriteFloat( 1 )               ;red
         b3dWriteFloat( 1 )               ;green
         b3dWriteFloat( 1 )               ;blue
         b3dWriteFloat( 1 )               ;alpha
         b3dWriteFloat( 0 )               ;shininess
         b3dWriteInt( 1 )               ;blend
         b3dWriteInt( 0 )               ;FX
      b3dEndChunk()   ;end of BRUS chunk
      
      b3dBeginChunk( "NODE" )
         b3dWriteString( "_" );entity name
         b3dWriteFloat( 0 )   ;x_pos
         b3dWriteFloat( 0 )   ;y_pos
         b3dWriteFloat( 0 )   ;y_pos
         b3dWriteFloat( 1 )   ;x_scale
         b3dWriteFloat( 1 )   ;y_scale
         b3dWriteFloat( 1 )   ;z_scale
         b3dWriteFloat( 1 )   ;rot_w
         b3dWriteFloat( 0 )   ;rot_x
         b3dWriteFloat( 0 )   ;rot_y
         b3dWriteFloat( 0 )   ;rot_z
         WriteMESH( mesh )
      b3dEndChunk()   ;end of NODE chunk
      
   b3dEndChunk()   ;end of BB3D chunk
   
   CloseFile file
End Function

Function WriteMESH( mesh )

   n_surfs=CountSurfaces( mesh )
   
   b3dBeginChunk( "MESH" )
      b3dWriteInt( -1 )            ;no 'entity' brush
      
      b3dBeginChunk( "VRTS" )
         b3dWriteInt( 0 )         ;flags - 0=no normal/color
         b3dWriteInt( 1 )         ;1 tex_coord sets
         b3dWriteInt( 2 )         ;2 coords per set
         
         For k=1 To n_surfs
            surf=GetSurface( mesh,k )
            n_verts=CountVertices( surf )-1
            
            For j=0 To n_verts
               b3dWriteFloat( VertexX( surf,j ) )
               b3dWriteFloat( VertexY( surf,j ) )
               b3dWriteFloat( VertexZ( surf,j ) )
               
               b3dWriteFloat( VertexU#( surf,j ) )
               b3dWriteFloat( VertexV#( surf,j ) )
               
            Next
         Next
      b3dEndChunk()   ;end of VRTS chunk
      
      first_vert=0
      For k=1 To n_surfs
         surf=GetSurface( mesh,k )
         n_tris=CountTriangles( surf )-1
         
         b3dBeginChunk( "TRIS" )
            b3dWriteInt( 0 )      ;brush for these triangles
            
            For j=0 To n_tris
               b3dWriteInt( first_vert+TriangleVertex( surf,j,0 ) )
               b3dWriteInt( first_vert+TriangleVertex( surf,j,1 ) )
               b3dWriteInt( first_vert+TriangleVertex( surf,j,2 ) )
            Next
            
         b3dEndChunk()   ;end of TRIS chunk
         
         first_vert=first_vert+CountVertices( surf )
         
      Next
      
   b3dEndChunk()   ;end of MESH chunk
   
End Function


;////////////////////////////////////////////////////////////////////////

;***** Functions for writing to B3D files *****

Function b3dWriteByte( n )
   WriteByte( b3d_file,n )
End Function

Function b3dWriteInt( n )
   WriteInt( b3d_file,n )
End Function

Function b3dWriteFloat( n# )
   WriteFloat( b3d_file,n )
End Function

Function b3dWriteString( t$ )
   For k=1 To Len( t$ )
      ch=Asc(Mid$(t$,k,1))
      b3dWriteByte(ch)
      If ch=0 Return
   Next
   b3dWriteByte( 0 )
End Function

Function b3dBeginChunk( tag$ )
   b3d_tos=b3d_tos+1
   For k=1 To 4
      b3dWriteByte(Asc(Mid$( tag$,k,1 )))
   Next
   b3dWriteInt( 0 )
   b3d_stack(b3d_tos)=FilePos( b3d_file )
End Function

Function b3dEndChunk()
   n=FilePos( b3d_file )
   SeekFile b3d_file,b3d_stack(b3d_tos)-4
   b3dWriteInt( n-b3d_stack(b3d_tos) )
   SeekFile b3d_file,n
   b3d_tos=b3d_tos-1
End Function

;------------------
Function b3dSetFile( file )
   b3d_tos=0
   b3d_file=file
End Function
;----------------------------------




Einfach das programm in einen Ordner abspeichern, und beim ausführen dieser werden alle .x Dateien(im gleichen ordner) in .b3d umgewandelt

Gruß
Dottakopf
Rechtschreibfehler gelten der allgemeinen Belustigung!

Arrangemonk

BeitragDi, Nov 24, 2009 11:51
Antworten mit Zitat
Benutzer-Profile anzeigen
lsut unterstützter formate kann milkshape directx models laden (importier dein model mal mitm directx importer XD)
ingeneur

Dottakopf

BeitragDo, Dez 03, 2009 12:59
Antworten mit Zitat
Benutzer-Profile anzeigen
outsch Surprised thx !
Rechtschreibfehler gelten der allgemeinen Belustigung!

Neue Antwort erstellen


Übersicht Ressourcen Andere Programme oder Tools

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group