Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

16.06.2015, 19:52

Blender Importprobleme.

Guten Tag,

ich arbeite momentan an einer 3D-Engine für ein 3D-Spiel.
Diese selber funktioniert zwar soweit einwandfrei, jedoch bringt mich Blender ins Grübeln.
Verwendet wird das Dateiformat OBJ, welches dann von einem Programm von mir in mein eigenes Format übersetzt wird.
Bei vertices und indices, sowie bei den Normalen ist das kein Problem, allerdings scheint die Anzahl der texture coordinates sich jedes mal zu verändern.
Momentan binde ich für jeden vertex eine texture coordinate, werde allerdings bald per face binden.

Mein eigentliches Problem ist also, das ich nicht sicher bin welche texture coordinate nun zu welchem vertex gehört.
Möglicherweise ist die Anzahl der vertex coordinates die Anzahl der vertices mal 3, würde ja Sinn machen. Sprich bei einem Würfel (8 vertices) 24 tc(texture coordinates).
Diese Theorie ist aber leider nicht immer zutreffend. Manchmal sind es auch weniger tc als vertices.

Hier mal ein simples Beispiel direkt aus Blender (.OBJ) :


Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# Blender v2.74 (sub 0) OBJ File: ''
# www.blender.org
mtllib b_cube.mtl
o Cube
v 1.000000 -1.000000 -1.000000
v 1.000000 -1.000000 1.000000
v -1.000000 -1.000000 1.000000
v -1.000000 -1.000000 -1.000000
v 1.000000 1.000000 -0.999999
v 0.999999 1.000000 1.000001
v -1.000000 1.000000 1.000000
v -1.000000 1.000000 -1.000000
vt 0.333133 0.999800
vt 0.000200 0.999800
vt 0.000200 0.666867
vt 0.666467 0.333533
vt 0.666467 0.666467
vt 0.333533 0.666467
vt 0.333134 0.666867
vt 0.999800 0.000200
vt 0.999800 0.333134
vt 0.666867 0.333134
vt 0.333533 0.333533
vt 0.666867 0.000200
vt 0.000200 0.333134
vt 0.000200 0.000200
vt 0.333134 0.333134
vt 0.333133 0.000200
vt 0.666467 0.000200
vt 0.666467 0.333134
vt 0.333533 0.000200
vt 0.333533 0.333134
vt 0.000200 0.333533
vt 0.333134 0.333533
vt 0.000200 0.666467
vt 0.333134 0.666467
vn 1.000000 0.000000 0.000000
vn -1.000000 -0.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn -0.000000 -0.000000 1.000000
vn 0.000000 0.000000 -1.000000
usemtl Material
s off
f 8/1/1 7/2/1 3/3/1
f 1/4/2 2/5/2 6/6/2
f 3/3/1 4/7/1 8/1/1
f 4/8/3 3/9/3 2/10/3
f 6/6/2 5/11/2 1/4/2
f 4/8/3 2/10/3 1/12/3
f 6/13/4 7/14/4 5/15/4
f 7/14/4 8/16/4 5/15/4
f 1/17/5 5/18/5 4/19/5
f 4/19/5 5/18/5 8/20/5
f 6/21/6 2/22/6 7/23/6
f 7/23/6 2/22/6 3/24/6


Ich würde mich darüber freuen, wenn mir jemand sagen könnte welche tc zu welchem vertex gehört,

Rastaman

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

2

16.06.2015, 22:40

Hey, ich selbst kann dir da grad nicht helfen aber die PDF hier sieht recht brauchbar aus und darin wird auch auf die vollständige Spezifikation des Formats verwiesen. Das sollte dir denke ich weiter helfen.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

3

17.06.2015, 18:44

Hey, ich selbst kann dir da grad nicht helfen ...
Wieso das denn ? Um ehrlich zu sein hast du mir sehr schnell und effektiv geholfen :) . Danke. :P

Werbeanzeige