Naja, die Grafiken sind dabei wohl das geringste übel .
ich hab mir zwar noch kein stückchen code von OTTD angeschaut, und werd das vorerst auch nicht tun (hab ich eh zu wenig ahnung von), aber .
ich möchte behaupten, die Karte "weiß" gar nicht, wie sie aussehen soll, wenn amn sie um 90 grad nach links dreht.
Denn ich möchte mal behaupten, Stercken und der gleichen (pathfinding) sind auf den heutigen Blickwinkel beschränkt.
Das bedeutet dann, du kannst die Karte zwar optisch drehen wohin du willst (theoretisch) aber was dann da bei raus kommt (wo die gleise liegen, und wo stattdessen die züge fahren) wäre ein putziges durcheinander.
Beispiel:
----------\
/---------/
\----------
(das soll ne schlangen linie sein von links oben nach wieder rechts unten)
jetzt bastelt mal ne Routine, die jedes Zeichen so lange dreht, bis eine Schlangenlinie von rechts oben nach links unten entsteht, so dass die geraden senkrecht verlaufen.
(das entspricht "ganzes bild um 90° nach rechts" gedreht.
Ihr werden schwierigkeiten bekommen^^ (und das ist nur ne Map 3 mal 10, bei OTTD reden wir von 256x256 im kleinsten fall)
Edit:
Das Beispiel mit der Schlangenlinie ist vielleicht bissl abstrackt. Daher mal etwas ansprechender.
Hier also das Beispiel, einmal um 90° nach rechts drehen .
1. unser Ausgangsbeispiel. 2. Das was passiert, wann man das Problem auf grafischer Ebene angeht und 3. das was eigentlich dabei rauskommen soll.
Ich denke es ist offensichtlich das da Welten liegen zwischen 2 und 3.
Edit 2:
wer genau hinsieht erkennt vielleicht eine gewisse symetrie zwischen Bild 1 und 3. Technisch gesehen müßte beim Karte um 90° drehen, folgendes passieren.
1. Karte vertikal Spiegeln (optisch)
2. alle Sprites (Züge, Gebäude, Bäume etc) richtigrum drehen (180°, weil sie nach dem Spiegeln auf dem kopf stehn)
3. alle Fahrzeuge in entgegengesetze Richtung fahren lassen (nur optisch, logisch gesehen, fahren sie ja zum richtigen Ziel).
Sind eigentlich 3 ganz einfache Schritte, aber alle zusammen doch recht aufwendig, wenn man bedenkt, das wir hier von hunderten/tausenden Fahrzeugen reden und millionen Sprites, die alle neu gesetz werden müssen.
Das sieht dann so aus.
- horizontal spiegel setzt zwar fahrzeuge richtig rum, aber objekte stehen auf der falschen Seite zu ihrem bezugspunkt. (hier gleis)
- Vertikales Spiegeln, behält die Positionsbeziehungen korekt bei, dreht aber alle Sprites auf den Kopf.