Ich sagte zwar, keine Meinung zu haben, aber ich hab jetzt mal tatsächlich ins DOOM Game Engine Black Book (das ich sogar im Regal hab), und sogar direkt in den Source Code geschaut. Dann kann ich mir ja mal eine Meinung bilden.
Das Argument war, dass dadurch dass beim Traversieren des BSPs die Wände von vorne nach hinten gerendert werden, für jede jeweils hinten stehende Wände/Segmente ja doch eine Art Occlusion Check stattfinden muss, um zu wissen, welche Teile der Wand beim Rendern ausgelassen werden sollen. Sonst würden die schon gerenderten vorne stehenden Wände ja ggf. überschrieben. Da komme dann Raycasting ins Spiel.
Ich hab’s jetzt nicht ganz im Detail angeschaut, aber genug um mir die Frage zu beantworten, denke ich.
Es gibt zwei Clipping Passes, einen „groben“ fürs horizontale Clipping, und einen vertikalen „feinen“ Pass. Der grobe hat mit Raycasting ganz eindeutig nix zu tun: Die verwendete Datenstruktur ist quasi eine reine Liste von horizontalen Segmenten, die direkt sagt, welche Spalten überhaupt gezeichnet werden sollen.
Beim feinen Pass fürs vertikale Clipping schaut’s schon interessanter aus: Hier gibt’s zwei Arrays die jeweils tatsächlich einen Wert für jeden Pixel in der Breite beinhalten, und die aussagen wie viel „Höhe“ pro Spalte noch „unbelegt“ ist, eine neue Wand weiter hinten dort also gerendert werden soll. (Am Schluss soll dann jede Spalte voll belegt sein, sonst sieht man den berühmten psychedelischen Effekt des Nachzeichnens, wenn in einem Bildausschnitt keine Wand mehr war.)
Aber wenn ich das richtig verstehe, dann werden durch diese zwei Passes die Wände/Segmente direkt geclippt, und am Ende steht für jede Spalte eines Segments von vornherein fest mit welcher Höhe und welchem Offset sie gezeichnet werden soll. Da wird nix „gecastet“, in dem Sinne dass man sich von einem Pixel ausgehend ertastet worauf er treffen wird.
Von daher hast du, soweit ich das in meinem kurzen Exkurs sehen konnte, völlig Recht. Wer das „Raycasting“ nennt, dem ist die Bedeutung von Wörtern wohl ziemlich egal…