Seite 2 von 2

Re: kleiner "Wavefront (.obj) to OGRE (.mesh)" - Konverter

Verfasst: 08.02.2013 01:39
von Sunny
OK...
Wenn du jetzt noch nen algorithmus zurechtbastelt, der auch mit der nachfolgenden .obj-Datei klarkommt, dann denke ich mal, wären alle Fälle abgedeckt.
Ich zermarter mir jetzt schon ne ganze Weile den Kopf, wie man das hinkriegen könnte aber irgendwie sind meine Ansätze alle für'n A...
Hier mal die .obj-Datei:

Code: Alles auswählen

# WaveFront *.obj file (generated by CINEMA 4D)

g Extrude-NURBS_1
v 2.005279 -2.005643 0
v -2.048715 -2.017293 0
v -2.002118 2.013403 0
v -0.96532 2.025052 0
v -0.987692 3.974806 0
v -3.993814 3.974806 0
v -3.993814 -4.023131 0
v 4.004123 -3.995552 0
v 3.948965 5.98808 0
v -4.021393 6.015659 0
v -3.993814 11.945164 0
v 9.933628 11.972743 0
v 9.988787 -8.0221 0
v -7.992782 -8.0221 0
v -8.020361 9.810482 0
v -7.023025 11.83299 0
v -5.979508 9.810482 0
v -6.007087 -6.036405 0
v 7.947934 -6.008826 0
v 7.975513 10.014627 0
v -1.98054 9.959469 0
v -2.008119 7.918616 0
v 5.907081 7.891037 0
v 6.044976 -5.043558 0
v -4.986661 -5.043558 0
v -4.986661 4.967653 0
v 1.05316 4.967653 0
v 1.05316 2.01669 0
v 2.046008 1.989111 0
v 2.005279 -2.005643 -5
v -2.048715 -2.017293 -5
v -2.002118 2.013403 -5
v -0.96532 2.025052 -5
v -0.987692 3.974806 -5
v -3.993814 3.974806 -5
v -3.993814 -4.023131 -5
v 4.004123 -3.995552 -5
v 3.948965 5.98808 -5
v -4.021393 6.015659 -5
v -3.993814 11.945164 -5
v 9.933628 11.972743 -5
v 9.988787 -8.0221 -5
v -7.992782 -8.0221 -5
v -8.020361 9.810482 -5
v -7.023025 11.83299 -5
v -5.979508 9.810482 -5
v -6.007087 -6.036405 -5
v 7.947934 -6.008826 -5
v 7.975513 10.014627 -5
v -1.98054 9.959469 -5
v -2.008119 7.918616 -5
v 5.907081 7.891037 -5
v 6.044976 -5.043558 -5
v -4.986661 -5.043558 -5
v -4.986661 4.967653 -5
v 1.05316 4.967653 -5
v 1.05316 2.01669 -5
v 2.046008 1.989111 -5
v 2.005279 -2.005643 0
v -2.048715 -2.017293 0
v -2.002118 2.013403 0
v -0.96532 2.025052 0
v -0.987692 3.974806 0
v -3.993814 3.974806 0
v -3.993814 -4.023131 0
v 4.004123 -3.995552 0
v 3.948965 5.98808 0
v -4.021393 6.015659 0
v -3.993814 11.945164 0
v 9.933628 11.972743 0
v 9.988787 -8.0221 0
v -7.992782 -8.0221 0
v -8.020361 9.810482 0
v -7.023025 11.83299 0
v -5.979508 9.810482 0
v -6.007087 -6.036405 0
v 7.947934 -6.008826 0
v 7.975513 10.014627 0
v -1.98054 9.959469 0
v -2.008119 7.918616 0
v 5.907081 7.891037 0
v 6.044976 -5.043558 0
v -4.986661 -5.043558 0
v -4.986661 4.967653 0
v 1.05316 4.967653 0
v 1.05316 2.01669 0
v 2.046008 1.989111 0
v 2.005279 -2.005643 -5
v -2.048715 -2.017293 -5
v -2.002118 2.013403 -5
v -0.96532 2.025052 -5
v -0.987692 3.974806 -5
v -3.993814 3.974806 -5
v -3.993814 -4.023131 -5
v 4.004123 -3.995552 -5
v 3.948965 5.98808 -5
v -4.021393 6.015659 -5
v -3.993814 11.945164 -5
v 9.933628 11.972743 -5
v 9.988787 -8.0221 -5
v -7.992782 -8.0221 -5
v -8.020361 9.810482 -5
v -7.023025 11.83299 -5
v -5.979508 9.810482 -5
v -6.007087 -6.036405 -5
v 7.947934 -6.008826 -5
v 7.975513 10.014627 -5
v -1.98054 9.959469 -5
v -2.008119 7.918616 -5
v 5.907081 7.891037 -5
v 6.044976 -5.043558 -5
v -4.986661 -5.043558 -5
v -4.986661 4.967653 -5
v 1.05316 4.967653 -5
v 1.05316 2.01669 -5
v 2.046008 1.989111 -5

vt 1 1 0
vt 0 1 0
vt 0.016758 1 0
vt 0.03342 1 0
vt 0.037706 1 0
vt 0.045766 1 0
vt 0.058192 1 0
vt 0.091252 1 0
vt 0.124313 1 0
vt 0.165582 1 0
vt 0.198528 1 0
vt 0.223039 1 0
vt 0.280609 1 0
vt 0.36326 1 0
vt 0.437589 1 0
vt 0.511301 1 0
vt 0.520623 1 0
vt 0.53003 1 0
vt 0.595535 1 0
vt 0.65322 1 0
vt 0.719454 1 0
vt 0.760609 1 0
vt 0.769046 1 0
vt 0.801764 1 0
vt 0.855234 1 0
vt 0.900834 1 0
vt 0.942217 1 0
vt 0.967183 1 0
vt 0.979381 1 0
vt 0.983486 1 0
vt 1 0 0
vt 0 0 0
vt 0.016758 0 0
vt 0.03342 0 0
vt 0.037706 0 0
vt 0.045766 0 0
vt 0.058192 0 0
vt 0.091252 0 0
vt 0.124313 0 0
vt 0.165582 0 0
vt 0.198528 0 0
vt 0.223039 0 0
vt 0.280609 0 0
vt 0.36326 0 0
vt 0.437589 0 0
vt 0.511301 0 0
vt 0.520623 0 0
vt 0.53003 0 0
vt 0.595535 0 0
vt 0.65322 0 0
vt 0.719454 0 0
vt 0.760609 0 0
vt 0.769046 0 0
vt 0.801764 0 0
vt 0.855234 0 0
vt 0.900834 0 0
vt 0.942217 0 0
vt 0.967183 0 0
vt 0.979381 0 0
vt 0.983486 0 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0
vt 0 1 0

f 87/89 86/88 85/87 84/86 83/85 82/84 81/83 80/82 79/81 78/80 77/79 76/78 75/77 74/76 73/75 72/74 71/73 70/72 69/71 68/70 67/69 66/68 65/67 64/66 63/65 62/64 61/63 60/62 59/61 
f 89/91 90/92 91/93 92/94 93/95 94/96 95/97 96/98 97/99 98/100 99/101 100/102 101/103 102/104 103/105 104/106 105/107 106/108 107/109 108/110 109/111 110/112 111/113 112/114 113/115 114/116 115/117 116/118 88/90 
f 2/3 31/33 30/32 1/2 
f 3/4 32/34 31/33 2/3 
f 4/5 33/35 32/34 3/4 
f 5/6 34/36 33/35 4/5 
f 6/7 35/37 34/36 5/6 
f 7/8 36/38 35/37 6/7 
f 8/9 37/39 36/38 7/8 
f 9/10 38/40 37/39 8/9 
f 10/11 39/41 38/40 9/10 
f 11/12 40/42 39/41 10/11 
f 12/13 41/43 40/42 11/12 
f 13/14 42/44 41/43 12/13 
f 14/15 43/45 42/44 13/14 
f 15/16 44/46 43/45 14/15 
f 16/17 45/47 44/46 15/16 
f 17/18 46/48 45/47 16/17 
f 18/19 47/49 46/48 17/18 
f 19/20 48/50 47/49 18/19 
f 20/21 49/51 48/50 19/20 
f 21/22 50/52 49/51 20/21 
f 22/23 51/53 50/52 21/22 
f 23/24 52/54 51/53 22/23 
f 24/25 53/55 52/54 23/24 
f 25/26 54/56 53/55 24/25 
f 26/27 55/57 54/56 25/26 
f 27/28 56/58 55/57 26/27 
f 28/29 57/59 56/58 27/28 
f 29/30 58/60 57/59 28/29 
f 1/1 30/31 58/60 29/30 

Vieleicht findest du oder jemand anders eine Lösung dafür.

Re: kleiner "Wavefront (.obj) to OGRE (.mesh)" - Konverter

Verfasst: 08.02.2013 11:57
von Danilo
Sunny hat geschrieben:OK...
Wenn du jetzt noch nen algorithmus zurechtbastelt, der auch mit der nachfolgenden .obj-Datei klarkommt, dann denke ich mal, wären alle Fälle abgedeckt.
Tut mir leid, war noch ein kleiner Fehler drin. Habe den letzten Code geändert.

Triangulate() erwartet die Eckpunkte auch immer im umgekehrten Uhrzeigersinn (counter-clockwise).
Sind sie das nicht (wird mit ccw() gecheckt), wird das Array mit den Eckpunkten umgekehrt.