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

29.12.2007, 16:05

Was brauche ich alles für 3d Informationen?

Hallo,

ich hab mir mal ältere Spiele und auch ganz aktuelle angesehen und etwas festgestellt,

Eigentlich machen es alle Klassisch:

Eckenliste

* Trennung von Geometrie und Topologie
* minimale Redundanzen (Punkte werden nur 1x abgelegt)



* Kanten werden mehrmals durchlaufen und ausgegeben
* Suche nach zu Kanten gehörenden Facetten nicht effizient möglich (nur mit erschöpfender Suche möglich) Für alle Kanten in F1 (jedes Eckenpaar) suchen wir in allen weiteren Facetten, ob sie enthalten ist, wenn Nein dann Randkante)
* Suchen nach Facetten welche eine Kante / Ecke enthalten ist ineffizient

Soweit so gut, nur hab ich folgendes festgestellt, bei fast allen spielen kommt nach diesen daten noch ein Datenblock der fast identisch mit dem Block der Scheitelpunkte ist. Wenn ich diesen überschreibe geht trotzdem noch alles.

was könnten das für daten sein? was braucht man denn alles wenn man z. B. Fahrzeuge steuert oder allgemein eine Simulation macht?

In jedem falle waren eigentlich die zusatzdaten identisch.

Ich hoffe Ihr könnt mir das näher bringen.

Gruß und Danke

Sebby

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

2

29.12.2007, 16:27

Hallo, ich weiß nicht wie es den anderen geht, aber ich weiß schonmal nicht worum es überhaupt geht bzw. was du genau vor hast. Vielleicht erhälst du mehr Rückmeldung, wenn du das kurz erläuterst. Danke!
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

3

29.12.2007, 16:51

Nox: du bist nicht allein ;)

4

29.12.2007, 17:13

mein ziel ist es einfach zu verstehen was ein gutes 3d datenformat ausmacht und wenn ich selbst eines schreibe dann habe ich nur 2/3 der informationen der in allen spielen benutzt wird, aber auch anderen formaten.

daher mal die frage, was braucht man noch für daten außer, scheitelpunktliste, uvw liste, und polygonliste mit referenzen zu den scheitelpunkten und uvws?

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

5

29.12.2007, 17:15

Zitat

[...] und wenn ich selbst eines schreibe dann habe ich nur 2/3 der informationen der in allen spielen benutzt wird, aber auch anderen formaten.


abgesehen davon, dass ich diesen satz nicht ganz versteh:

wenn dein dateiformat z.b. auch animation unterstützten soll, dann wirst du auch noch die daten dazu (joints, vertexweights, keyframes, ...) benötigen...

du könntest auch z.b. die tangent space vektoren für jeden vertex noch dazupacken. allerdings könnte man die auch beim laden des modells berechnen...

animationen, texturen, materialien, shader, physikmodell, ... das alles könnte man hineinpacken. oder auch nicht...

daher: antwort auf deine frage: das hängt davon ab was du machen willst.

3d formate gibts wie sand am meer. und das hat einen grund...

6

29.12.2007, 18:21

ok wenn du das sagst dann wird es stimmen. nehmen wir an ich möchte ein rennspiel machen, nur ne annahme, dann bräuchte ich ja noch faktoren wie sich das fahrzeug auf einer fläche verhält.

noch eine frage ich habe das gesehen:

http://opengl.org/resources/code/samples/sig99/advanced99/notes/node140.html

das sieht ja recht interessant aus. macht man sowas heute noch oft in der Praxis?

dann noch eine frage, kennst du eine gute seite wo ich alles mögliche zur 3d programmierung finden kann, also auch über datenformate und deren aufbau und das arbeiten mit 3d daten?

Fred

Supermoderator

Beiträge: 2 121

Beruf: Softwareentwickler

  • Private Nachricht senden

7

29.12.2007, 18:42

Zitat von »"Sebby"«

ok wenn du das sagst dann wird es stimmen. nehmen wir an ich möchte ein rennspiel machen, nur ne annahme, dann bräuchte ich ja noch faktoren wie sich das fahrzeug auf einer fläche verhält.


Zum Beispiel, außerdem noch so sachen, wie Bremsverhalten, Beschleunigung, Lenkung, Gangschaltung, etc.

Dafür brauchst du aber nicht unbedingt ein ganzes 3D_Format zu schreiben.
Da reicht es doch, wenn du beispielsweise eine XML-Datein mit all diesen informationen. In dieser definierst du dann noch, wie dein Modell heißt, das du verwendest.
Da brauchst du dir nicht die Mühe machen, ein eigenes Format zu schreiben. Zumal so ein Auto meist aus meheren Teilen besteh und sich eine solche Datei, welche die einzelnen Modelle eines Autos bestimmt, sehr hilfreich sein dürfte

Edit:
David_pb hat mal was über den Aufbau des Ogre-Mesh-Formates geschrieben, vllt. hilft dir das ja weiter: http://bl4ckd0g.bl.funpic.de/docs/Ogre%20Mesh%20Format.pdf

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

8

29.12.2007, 18:46

Zitat von »"Sebby"«

nehmen wir an ich möchte ein rennspiel machen, nur ne annahme, dann bräuchte ich ja noch faktoren wie sich das fahrzeug auf einer fläche verhält.


ja, die könnte man natürlich auch in die modelldatei speichern. aber ma muss ja nicht unbedingt...man könnte solche informationen z.b. auch getrennt in einer eigenen datei ablegen. wie gesagt, viele wege führen nach rom...

Zitat von »"Sebby"«

noch eine frage ich habe das gesehen [...]
das sieht ja recht interessant aus. macht man sowas heute noch oft in der Praxis?


ja, der tangent space is ein wichtiges konzept. man braucht das für alles mögliche. z.b. per pixel lighting, ...

Zitat von »"Sebby"«

dann noch eine frage, kennst du eine gute seite wo ich alles mögliche zur 3d programmierung finden kann, also auch über datenformate und deren aufbau und das arbeiten mit 3d daten?


es is generell selten dass du alles mögliche auf einer seite finden wirst...
was dateiformate angeht, könnte wotsit hilfreich sein. ansonsten is google auch nicht zu unterschätzen...

9

29.12.2007, 19:23

ja ich hab grade nochmal nachgesehen, für jeden scheitelpunkt gibt es genau 3 weitere punkte, das könnten schon die angesprochenen daten sein.

ich frage mich nur was man noch so speichern kann.

jedes polygon scheint auch eine art indiz zu haben. wozu macht man das das man jedes polygone indexiert?

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

10

29.12.2007, 19:27

Zitat von »"Sebby"«

jedes polygon scheint auch eine art indiz zu haben. wozu macht man das das man jedes polygone indexiert?


naja, warum indiziert man dinge? damit man sich drauf referenzieren kann. ka in welchem kontext das jetzt bei deinem konkreten fall gebraucht wird. wenn ein polygon einen index hat, kann man halt sagen: polygon x blablabla

Werbeanzeige