Submitted by , posted on 21 October 2001
Image Description, by
This image is a screenshot from our game "rtChess".
The rt stands for Ray Traced. I'd been working on a fast "real time" ray
tracing engine for some time when I realized you can't make an engine in
a vacuum. I needed a real project to find the holes. That's when I
recruited Ray Kelm to help with the project. Great choice, he tracked
down the most significant bug in my RT code and made substantial
contributions to the game.
Try rtChess at:
The engine itself uses an axially aligned octree for spatial
partitioning. This regular structure allows rapid insertion and deletion
of objects, and I've got an amazingly fast algorithm to fire rays
through it, but the released game uses a less optimized version to
support older CPUs. I've run as many as 8M triangles in a scene at a
couple FPS on an Athlon 700. I could have done more but I ran out of
RAM. The chess pieces are mostly CSG quadrics except the high
triangle-count knight. There is support for proceedural textures, but
they are not used in the game (yet). When you grab and rotate the board
it renders at a reduced quality (interpolation between rays) and then
gets progressively better after the motion stops. When a piece is moved,
the 2 areas of interest are rendered at high quality - sort of a dirty
rectangle scheme. I'm waiting for a good performance increase from AMD
and then I hope to make some insanely complex outdoor scenes to run
around in. In the meantime, Ray asked if I want to do an OpenGL game he
started toying with.
OK, so it's not time for ray traced FPS games, but board games are
possible with some tricks.