psxsdk

chrome

A chrome torus turning: environment mapping with the GTE, worked out again every frame.

Controls

Hold Start and Select together to quit.

A port of Sony's Net Yaroze demo "chrome" (S. Ashley, 1997): a textured torus, turning, whose texture coordinates are worked out again every frame from its normals as the torus turns, so the texture reads as a reflection of the world rather than paint on the surface. That is chrome, or environment, mapping. It puts the GTE, the 3D library and lighting through their paces, which the check example does not touch.

Differences from the original:

  • The texture and model are read off the disc into the program's own memory. On a Net Yaroze the loader's batch script sent them from the PC to fixed addresses.
  • The torus has a coordinate system of its own. The original points the object at WORLD, the library's nil coordinate system, and then writes its transformation through that pointer every frame, which in C silently overwrites the kernel's memory at address 0.
  • A loading message, and a report if the data is missing, rather than a black screen.

Source on GitHub