================================================================================
				Ray Tracing with BIH
					by
				Budianto Tandianus
  				   (Eon Strife)
 			       eon_strife@yahoo.com
================================================================================
This program is downloaded from http://www.geocities.com/eon_strife/index.htm.
This program is for private or personal use only. However, one may use it for
educational use. Using it in commercial and/or promotional activity without 
my consent is strictly prohibited.

All trademarks and copyrights contained in this document and/or the program
are owned by their respective trademark and copyright holders.
================================================================================
Description :
	This was my first attempt in developing a ray tracing program. The
program was very simple thus the rendering result will be lower than the ones
available in the market. The accelerations used are the Bounding Interval
Hierarchy (BIH) based on the paper on http://graphics.uni-ulm.de/BIH.pdf, and
OpenMP which is a library for multithreading. The 3D object format used in this
program is .m.

How to use :
	Most of the menus are self-explanatory, you are encouraged to try
them on your own. As for the controls :
Keyboard :
- Global Settings :
  * Show Grids 			: 'g'
  * Show Axes  			: 'x'
  * Perspective Projection 	: 'p'
  * Enable Lighting 		: 'l'
- Model
  * Smooth Shading 		: 'h'
  * Filled Polygons 		: 'f'
  * Wireframe 			: 'w'
  * Vertices 			: 'v'
  * AABB (faster, inaccurate) 	: 'a'
  * AABB (slower, accurate) 	: 's'
  * Color 			: 'c'
- Exit the program 		: Escape
- Transform the world 		: Hold the Ctrl button

Mouse :
- Object :
  * Left button : rotate around the object's local axes.
  * Middle button : translate the object up and down with respect to the screen
  * Wheel scroll : translate the object inside or outside with respect to
    the screen
- world :
  * Ctrl + left button : rotate the world
  * Ctrl + middle button : translate the world up and down with respect to the
    screen
  * Ctrl + wheel scroll : translate the world inside or outside with respect
    to the screen
  * Right button : Zooming in or out.

Requirement :
	MS Windows XP or later.
	OpenGL-enabled PC
	Corona (http://corona.sourceforge.net/)
	OpenMP (If you do not have MS VC Prof. Edition, you may try to
downloading the MS VC++ Redistributable Package at:
http://www.microsoft.com/downloads/details.aspx?familyid=200b2fd9-ae1a-4a14-
984d-389c36f85647&displaylang=en

	GLUT (http://www.realmtech.net/opengl/glut.php
)
	

Acknowledgment :
	Lecturers from my Advanced Computer Graphics course.

================================================================================
Copyright 2007. Budianto Tandianus.
All Rights Reserved.
================================================================================

