Dort werden kachelbare Texturen (oder Sprites aus einem Atlas) nebeneinander gelegt. Verschiedene. Und alle passen nahtlos aneinander.
Es werden mehrere
Texturausschnitte nebeneinandergelegt.
Genau dafür gibt es Textur-Atlanten und Texture-Arrays. Das erfordert weder mehr Statechanges, noch mehr Drawcalls und somit gibt es dort auch keinen Flaschenhals.
Ja, dann ist es auf der GPU allerdinds wieder eine Textur und nicht mehrere.
Es ging um folgende Aussage: "Ich zerlege teilweise auch 1ne Textur in viele Teile"
Das habe ich so verstanden, dass er
nicht bloß mehrere Texturausschnitte in einen Atlas oder Array nutzt, sondern wirklich mehrere Texturen.
Wie sich heraus gestellt hat, trifft das bei ihm nicht zu, weil er die Tiles doch alle in einer Textur hat.
Weil? Reden wir jetzt hier etwa ernsthaft über Nanosekunden?
Weil bei Bindlesstextures die GPU die Texel nicht so gut fetchen & cachen kann.
Bei Texturatlanten trifft das natürlich
nicht zu. Und das will ich auch nie behauptet haben.
Nvidea selbst hat angegeben und ich nehme deshalb an, dass es sich insgesamt um mehr als nur Nanosekunden handelt.
Nur eben statt eine ganze Textur zu wiederholen, sollen nur Ausschnitte wiederholt werden.
Das sehe ich als großen Unterschied. Außerdem arbeitet er damit eben im 2 Dimensionalen also trifft seine Aussage "Optimal ist immer wenn das Tile genauso viele Pixel hat, wie der Bereich auf dem du sie darstellst" in diesem Fall zu.
Unter Kachelung verstehe ich, wenn eine
ganze Textur über Texturkoordinaten > 1 über einen Bereich gelegt wird.
Eben wie ein Stapel Kacheln über den Badezimmerboden.
Und verschiedene Texturen sind bei dieser Art von Kacheln eben nicht einfach so möglich.
Möglicherweise kann man den Begriff "Kachelung" auch so auslegen wie Tilemapping, ich habe das allerdings bisher noch nicht in dem Sinn gehört.