Closed ariogato closed 7 years ago
Das mit dem Z-Ordering wäre schon schön. Die Frage ist nur, ob wir das wirklich brauchen. Wir können auch, wie anfangs vorgesehen, Elemente, wie den Baumstamm oder eine Laterne, in mehrereLayer aufteilen. Demnach müsste nur der untere Teil in das "CollisionLayer" und der obere Teil in das "ForegroundLayer".
Könnten wir, aber das wäre:
Abhängig von Ticket #33
Einführung: Durch unsere eindeutig hierarchische Render-Reihenfolge (Nach
Layer
siehe Map::render()) werden einige Tiles über denPlayer
gerendert.In diesem Fall ist das erwünscht:
In diesem Fall ist das unerwünscht:
Dieser Effekt zeigt uns auf, dass wir nicht einfach pauschal ein Layer nach dem anderen rendern können! Eine neue, eine intelligentere Renderreihenfolge muss her!
Zu diesem Zwecke bedienen wir uns eines Vorgangs, der sich Z-Ordering nennt.
In Map.cpp muss jedes Objekt, Tile, etc. in einer Liste, basierend auf einem errechneten Z-Wert, sortiert werden. Diese Liste wird anschließend von vorne bis hinten durchgerendert.