birthdefect
Ich arbeite gerade an einem Programm, das ein kleines Universum simuliert.
Dabei denke ich nicht an Planeten und Sterne, sondern einfach an eine Menge von Finiten Elementen, die in einem gewissen Rahmen nebeneinander existieren und verschiedene Fähigkeiten und Eigenschaften haben.
Beispielsweise ein Objekt, das heißt Ball und ein anderes Objekt, das heißt Steinkotz.
ich kann mehrere Steinklötze zu einer Fläche arrangieren und diese unter dem Ball positionieren. Dann gibts ein weiteres Objekt, das da heißt: Schwerkraft/Gravitation. Das ist ein Objekt, das einfach eine gerichtete Kraft auf Objekte mit Masseattributen erzeugt und diese Objekte versucht, zu beschleunigen, wenn nichts im Weg ist.
Natürlich sind die Grenzen des Ganzen auch selbst Objekte. Schranken nenne ich die.
Diese Schranken halten Objekte auf und haben keine Masse, weil sie ja ansonsten selbst der Gravitation unterlägen.
Wie auch immer.
Ich positioniere die Schranke zwischen Klötzen und Schwerkraftpunkt, sodaß die Klötze anstehen.
Der Ball befindet sich idealerweise in einer Linie mit Klötzen und Schwerkraft und könnte im rechten Winkel auf die Klötze aufprallen.
Eigenschaft der Klötze wird also eine Orientierung sein, die dieses kleine System an zusammenhängenden Objekten ausrichten.
Nun kann es los gehen.
Takt für Takt werden die neuen Zustände des systems berechnet.
(wie ein Video - Frame für Frame).
Um das Ganze zu Visualisieren, kommt ein Objekt dazu, das als Kamera agiert, als Viewpoint. Es legt Geraden durch das Universum, deren erste Schnittpunkte mit Objekten als Pixel auf eine 2D-Fläche wandern, die dann am Bildschirm gezeigt wird - wie Lichtstrahlen auf eine Filmrolle.
Ich überlege mir gerade, wie die Sache mit der Kollision abgehen soll.
ich möchte mit dem Ding beliebige Dinge simulieren.
Elementar mit Objekten die sich aufeinander auswirken.
Habt jemand von Euch Erfahungen mit sowas ?
Gibts irgendwelche Tips ?
Ich programmiere das Ding in Java, als Application (nicht als Applet) und könnte es auch als SPielengine verwenden.
Dabei denke ich nicht an Planeten und Sterne, sondern einfach an eine Menge von Finiten Elementen, die in einem gewissen Rahmen nebeneinander existieren und verschiedene Fähigkeiten und Eigenschaften haben.
Beispielsweise ein Objekt, das heißt Ball und ein anderes Objekt, das heißt Steinkotz.
ich kann mehrere Steinklötze zu einer Fläche arrangieren und diese unter dem Ball positionieren. Dann gibts ein weiteres Objekt, das da heißt: Schwerkraft/Gravitation. Das ist ein Objekt, das einfach eine gerichtete Kraft auf Objekte mit Masseattributen erzeugt und diese Objekte versucht, zu beschleunigen, wenn nichts im Weg ist.
Natürlich sind die Grenzen des Ganzen auch selbst Objekte. Schranken nenne ich die.
Diese Schranken halten Objekte auf und haben keine Masse, weil sie ja ansonsten selbst der Gravitation unterlägen.
Wie auch immer.
Ich positioniere die Schranke zwischen Klötzen und Schwerkraftpunkt, sodaß die Klötze anstehen.
Der Ball befindet sich idealerweise in einer Linie mit Klötzen und Schwerkraft und könnte im rechten Winkel auf die Klötze aufprallen.
Eigenschaft der Klötze wird also eine Orientierung sein, die dieses kleine System an zusammenhängenden Objekten ausrichten.
Nun kann es los gehen.
Takt für Takt werden die neuen Zustände des systems berechnet.
(wie ein Video - Frame für Frame).
Um das Ganze zu Visualisieren, kommt ein Objekt dazu, das als Kamera agiert, als Viewpoint. Es legt Geraden durch das Universum, deren erste Schnittpunkte mit Objekten als Pixel auf eine 2D-Fläche wandern, die dann am Bildschirm gezeigt wird - wie Lichtstrahlen auf eine Filmrolle.
Ich überlege mir gerade, wie die Sache mit der Kollision abgehen soll.
ich möchte mit dem Ding beliebige Dinge simulieren.
Elementar mit Objekten die sich aufeinander auswirken.
Habt jemand von Euch Erfahungen mit sowas ?
Gibts irgendwelche Tips ?
Ich programmiere das Ding in Java, als Application (nicht als Applet) und könnte es auch als SPielengine verwenden.
da kannst du dir 7/8 der programmierarbeit sparen wenn du da ein bissl hintergrundwissen hast.
)