26.12.2013, 15:45
(26.12.2013 11:19)mb schrieb: [ -> ]Gibt es aber für die Unmöglichkeit der Implementierung grösserer (adaptierbarer) bounding boxes einen dem Laien einleuchtenden Grund?Seit einiger Zeit schon werden die Bounding-Boxes der Fahrzeuge gemäß der Länge angepaßt. Das funktioniert allerdings nur für verkürzte Fahrzeuge. Einfach für längere Fahrzeuge die Bounding-Box zu vergrößern löst ja die Probleme mit Tunneln, Brücken, Kurven etc. nicht.
- Tunnel: die "über" dem Tunnel liegenden Groundsprites haben keine Bounding-Box, weshalb darunterliegende Fahrzeuge unsichtbar sein müssen, anstatt einfach nur durch den Spritesorter überdeckt zu werden. Wenn also einfach nur die Bounding-Box vergrößert wird, muß ein Fahrzeug, das in den Tunnel einfährt, durch irgendeine Art von Maske abgeschnitten werden, was ein "Sprite Post-Processing" wäre, welches einfach in der Architektur nicht vorgesehen ist. (Einer der Gründe, warum es für Schiffe keine Tunnel gibt) Deswegen bilde ich diese "Slices" in meinem GRF.
- Brücken: Wenn die Bounding-Boxes zu groß werden, steigt die Gefahr, daß zyklische Abhängigkeiten entstehen, die genau in die ineffizientesten Teile des Spritesorters abrutschen.
- Kurven: Das ist ja auch ein Problem, welches du bereits kennst: lange Fahrzeuge kucken einfach zu weit aus der Kurve heraus. Und zusätzliche Ansichten wie bei mir lassen sich durch längere Bounding-Boxes nicht darstellen.
Zitat:Allein schon der Zwang die entsprechenden sprites mehrfach einbinden zu müssen zwecks Anpassung der offsetsDafür gibt es eine "offensichtliche" Lösung: Angelpunkt des Sprites darf nicht die hintere Ecke der Bounding-Box sein, sondern der Mittelpunkt. Damit wäre das alles symmetrisch. Durch so eine Änderung handelt man sich aber jede Menge Kompatibilitätsprobleme ein.