Real-Time Shading

Chapter 15: RTSL The Stanford Real-Time Shading Language

The Stanford Real-Time Shading Language (RTSL) is both higher- and lower-level than ISL. It is higher-level in that it allows arbitrary expressions as statements in the shading language, but it is also lower-level in that it doesn t have conditional or looping control constructs [146]. Its targets include multipass rendering with OpenGL, and single pass using shading extensions introduced in NVIDIA s GeForce3 and ATI s Radeon 8500.

15.1 Logical Model

The logical model for RTSL consists of just two stages: surface shader and light shader. This choice of stages is based more on purpose than the specific hardware implementation, a choice that allows the same model to be applied across several hardware platforms (see Chapter 4 for an explanation of our logical model diagrams).


Figure 15.1: Logical model for Stanford Real-Time Programmable Shading.

An extra distortion shader stage also exists, but is not fully documented. It operates as a combined transform shader, returning transformed vertex, normal and tangent directions.

Each shader can include operations across all physical stages of the actual hardware. The surface shading stage includes both interpolation or texture coordinate generation as well as the surface shading aspects of Figure 4.3.

15.2 The RTSL Language

As mentioned, you can write three types of shaders in this language: distortion; surface; and light. Code in distortion shaders can target either host or vertex shader hardware. Both surface and light may generate code for all stages of the physical hardware, from host to vertex shader to fragment shader. The Stanford system supports...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Microscope Stages
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.