Ich arbeite daran, eine neue Visualisierung der Art von binären Sternen, die ich studiere, und ich bin von einem bestehenden Code, der eine schöne Aussicht von ihnen bietet einige physikalische gegeben Parameter.Liste der Vertices von OpenGL-Programm zu etwas Importable
Ich hätte gerne etwas mehr Freiheit auf der Animationsseite, und mein erster Gedanke war, die vom Programm erstellten Modelle in einem Format auszugeben, das von etwas anderem eingelesen werden könnte (Blender?). Ich habe mir das (Wavefront?) .OBJ-Format angeschaut, und obwohl es einfach scheint, kann ich es nicht richtig verstehen; Das Importieren schlägt im Hintergrund fehl, und ich vermute, dass es daran liegt, dass ich nicht verstehe, wie die Objekte tatsächlich gespeichert werden.
Das Programm, von dem ich beginne, ist ein C++ Projekt namens BinSim, und es hat bereits ein Flag, um Vertices für alle erstellten Objekte in eine Protokolldatei auszugeben. Es scheint ziemlich einfach, nur eine Liste von Indizes, x, y, z, und R, G, B (manchmal A) -Werte. Ein Beispiel für ein Ausgabeformat, mit dem ich gearbeitet habe, ist here; Jedes Objekt ist in ein Breiten-/Längengrid von Punkten unterteilt, und dies ist ein kleiner Ausschnitt (die gesamte Datei ist für alle erstellten Objekte mehr als 180 MB groß).
Ich konnte sehen, dass die Objekte als Dreiecksleisten definiert sind, aber ich bin verwirrt genug, dass ich nicht den klaren Weg sehe, diese Scheitelpunktliste zu einer .OBJ zu machen (oder was auch immer) Format. Sorry, wenn das wirklich in einem anderen Bereich gehört (GameDev?), Und danke!
Das Erstellen der Modelle auf andere Weise würde den Rahmen dieses Projekts sprengen, da es keinen Grund gibt, dieses spezielle Rad neu zu erfinden. Ich hatte auf einige spezielle Tipps gehofft, um die Dreiecksstreifen in etwas Brauchbareres zu verwandeln. Ich weiß, dass Blender erweiterbar ist und ich kann einen Importeur schreiben, und das ist im Wesentlichen, was ich versuche zu tun. – Ryan
In dieser Beispielausgabedatei Ryan gibt es keine Verbindungsinformationen. Ist der erste Index [m] von [m] [n] ein Streifenindex? Wenn dem so ist, können Sie aus dem Streifen einzelne Dreiecke erzeugen, indem Sie n nacheinander durchlaufen und 3 Ecken [m] [n], [m] [n + 1] und [m] [n + 2] emittieren. – Robinson