Solar Rays 2001
===============

 I wasn't originally planning to enter this contest, 
but a tech challenge by Qasir got me interested in 
tunnel mapping again.  Entropy had figured this out 
a year ago, but I was stuck on the geometry until 
I found out it's a special case of raytracing a 
cylinder.

 The tunnel to beach sunset crossfade is kinda cool, 
isn't it?

 I also felt like doing realtime raytracing in 
QuickBASIC after reading "Realtime Rendering" 
by Moller and Haines.  After much tweaking, I got it 
to the point where it was rendering 70% of full screen 
in full resolution on the edges where you can see the 
difference.  The sphere intersection algorithm in 
the book supposedly is faster than the normal one, 
but it didn't make a huge difference.  The super visibility
algorithm is from Graphics Gems, and is also by Moller.
It lets you find the scanline pixel spans for each 
sphere in very little time.  It's pretty complicated, 
but totally worth its complexity, given the kind of 
performance improvement you get.

 The volumetric lights thingy uses radial blur, 
but it doesn't do subpixel sampling, so the 
results aren't so beautiful.


How to build
============
Open solar.bas in QB4.0, and compile. Result is 
solar.exe (72KB).

How to run
==========
Put solar.fnt, sunray.gif, font320.gif, title2.gif
and solar.exe in the same directory.  Run solar.exe.
