Freigeben über


RayTCurrent

Ein Float, der den aktuellen parametrischen Endpunkt für den Strahl darstellt.

Syntax

float RayTCurrent();

Bemerkungen

RayTCurrent definiert den aktuellen Endpunkt des Strahls nach folgender Formel: Origin + (Direction * RayTCurrent). Ursprung und Richtung können sich entweder im Welt- oder Objektraum befinden, was entweder zu einer Welt oder einem Objektraumendpunkt führt.

RayTCurrent wird im TraceRay-Aufruf mit dem RayDesc::TMax-Wert initialisiert und dann während der Ablaufverfolgungsabfrage aktualisiert, da Schnittpunkte gemeldet (in der beliebigen Treffer) gemeldet und akzeptiert werden.

Im Schnittmengen-Shader stellt er den Abstand zur nächstgelegenen Schnittmenge dar, die bisher gefunden wurde. Er wird nach () auf den angegebenen THit-Wert aktualisiert, wenn der Treffer akzeptiert wurde.

Im Beliebigen Treffer-Shader stellt er den Abstand zur aktuellen Schnittmenge dar, die gemeldet wird.

Im nächstgelegenen Treffer-Shader stellt er den Abstand zum nächsten akzeptierten Schnittpunkt dar.

Im Miss-Shader ist er gleich TMax , die an den TraceRay-Aufruf übergeben wurde.

Diese Funktion kann von den folgenden Raytracing-Shadertypen aufgerufen werden:

Siehe auch

Direct3D 12-Raytracing, HLSL-Referenz