What is a ray tracer?

what is a ray tracer?

And what’s up with the word ‘foobar’ used all over the programming world! What does it mean?

a ray tracer is a rendering system that uses raytracing … redundant

basically raytracing is a technique for visibility detection and global illumination is very good at producing images that have attributes with perfect specular reflection (e.g. mirrors)

the idea is this… (one type)
for each pixel shoot a ray (a vector) from the eyepoint through the center of the pixel
then see what you hit… if you hit nothing then you get black (or whatever background you want)
if you hit something you see if it can “see” the lights in the scene (that is if there is a vector from the point on the object to the lights that hits nothing…
if it cannot “see” the lights then it is in shadow if it can then it is colored (or textured, or shaded)

at this point you can (and usually do for ray tracing not ray casting) spawn two more rays one in the reflection direction and the other in the refraction direction… and these ray are recursively checked for visablility to objects lights etc and then combined with the original color of the object hit… (in some proportion dealing with reflectivity, opacity, etc)

this is just a quick overview and I urge you to pick up a book on computer graphics to read more up on the subject (amongst others if you are interested)

One that I use (and a lot of people do)
is
Computer Graphics: Principles and Practice
by foley, van Dam, feiner and hughes

also there are a lot of sites with info I am sure about raytracing (one in particular is www.povray.org)) which has a free open source ray tracer

foobar = fubar = ****ed up beyond all recognition

which originated during WWII I believe, but not sure… anyway…

**** = bad word that starts with ‘f’

about foobar http://www.netmeg.net/jargon/terms/f/foobar.html

it does not mean “fubar” as before stated

cripes maybe it does mean FUBAR?

see above site