Strecken per Code erstellen?
Übersicht

DJ_MicBetreff: Strecken per Code erstellen? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo zusammen,
ich habe ein paar fragen an euch. Und zwar beschäftige ich mich seit langem damit, wie ich einen Streckeneditor schreiben kann. Nun bin ich auf zwei Videos gestoßen, sehen von der Streckenkonstruktion gleich aus, so schließe ich darauf, dass sie ihre Strecken nicht mit einem 3D Tool gefertigt haben, sondern mit deren Programmiersprache. Nun ist meine Frage, ist sowas mögiche? Das ich zb. nur drei Streckenteile liefere - Grade aus - Start - Finish Und dann mit einem Streckeneditor kurven, steile kurven etc... erstelle? Video1: http://www.youtube.com/watch?v=L7Y5lUZLKHI Video2: http://www.youtube.com/watch?v...ature=plcp Ich möchte keinerlei Codes etc... Ich möchte einfach nur wissen ob es eine Möglichkeit gibt, und wie der Lösungsweg aussehen würde. Seit Wochen zerbreche ich mir den Kopf mit dieser Frage.... Vielen vielen Dank! Gruß Dennis |
||
Schagen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zufällig baue ich gerade einen Streckeneditor für meinen Zugsimulator. Das Prinzip dürfte allerdings das selbe sein. Meine Lösung ist bestimmt nicht ideal, aber sie funktioniert ![]() Im Prinzip gibt es bei mir im Streckeneditor ein Type "Gleis". In diesem Type gibt es die Felder "StartX", "StartY", "EndX","EndY","Höhe","Radius" Der Editor speichert am Ende alles in einer Datei. Die Höhe ist immer die Höhe am Ende des Segments, da die Höhe am Anfang natürlich der Höhe am Ende des vorherigen Segments entspricht (Bei Gleisen zumindest). Der Radius ist bei geraden Segmenten Null, bei Kurven entsprechend dem Kurvenradius. Das Spiel liest die Datei dann ein. Für die Modelle der Schienen existieren 2 Funktionen: Die erste erstellt mit den Mesh Befehlen für gerade Schienen das Modell, die zweite mithilfe der Angabe des Radius das Modell der Kurven. Weitere Funktionen bestehen dann zum fahren der Züge entlang der Strecke. Ich hoffe du kannst damit was anfangen ![]() MfG Schagen |
||
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
ich bin Midimaster vom Tram-Projekt https://www.blitzforum.de/worklogs/492/ Dort habe wir es so wie Schagen gelöst. Ob das allerdings für Autos auch die beste Lösung ist, kann ich dir nicht sagen. Das System ist eine Art Streckenbeschreibungssprache. Diese Sprache beschreibt immer die Mitte der Strecke. d.h. die Seitenränder der Straße würden dann mit 90°-Vektoren berechnet werden können. Diese Sprache kennt nur 3 Schienenarten: GERADE, KURVELINKS, KURVERECHTS. Die GERADE kennt nur 2 Parameter: RICHTUNG und LÄNGE. Da Sie stets an einem bestehenden Stück anknüpft, genügen diese beiden Werte um ihre Lage im Raum zu beschreiben. Aus der Anknüpfstelle und Richtung und Länge lässt sich das Ende der Strecke im Raum berechnen. Das wird dann wieder zum Anküpfpunkt für das nächste Teilstück. Die KURVE kennt als Parameter RADIUS und WINKEL. Aus RADIUS und Anknüpfpunkt errechnet man den Mittelpunkt MX/MY der gedachten Kreisbahn. Mit dem WINKEL kann man daraus wieder den Endpunkt der Strecke errechnen. Nun haben wir Formeln entwickelt, die aus diesen Werten eine 3D-Strecke erstellen. Und es gibt eine Formel, die nach Eingabe einer zurückgelegten Fahrstrecke (z.b. 804.5 Meter) die genau Koordinate der Schiene dort zurückgibt. Für Bahn immer wichtig. Bei Auto natürlich quatsch, weil sich ein Auto ja flexibler auf der Bahn bewegt. Die Streckenführung kennt nun keine "geschwungenen Verläufe", wie man sie z.b. braucht um in einem bestimmten Gelände eine Strecke optimal an die Gegebenheiten anzupassen. Hierzu wäre Dein Thema Splines oder Bezierkurve. Da habe ich aber keine Ahnung. Hier mal ein Stück von unserem Code, der allerdings in BB ist: BlitzBasic: [AUSKLAPPEN] Graphics 1000,800,32,2 |
||
![]() |
ZaP |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
wir verwenden in unserem Projekt Bézierkurven, um einen Pfad zu erstellen, aus dem dann ein Mesh generiert werden kann. Das Bild vom Pfad wird außerdem auf eine Heightmap gelegt, so dass sich das Streckenmesh schön auf das Terrainmesh legt. Da Du ja recht frei bist, was das Generieren des Streckenmeshes angeht, kannst Du auch die Strecke erhoben machen, so wie in dem Video. Eine alternative Herangehensweise sehe ich in Strecken-Tiles. |
||
Starfare: Worklog, Website (download) |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group