DEVNOTES
author Radek Brich <radek.brich@devl.cz>
Wed, 09 Apr 2008 16:51:14 +0200
branchpyrit
changeset 63 440e1ae80459
parent 46 6493fb65f0b1
child 64 5785cca4cdb9
permissions -rw-r--r--
add many SCons targets (see DEVNOTES) make automatic model downloading work again remove Makefiles -- now obsolete and hardly maintainable

SCons Targets
-------------
models = local-models, download-models
local-models
download-models

demos = python-demos, cc-demos
python-demos
cc-demos

libs = static-lib, python-module
objs
static-lib
shared-objs
python-module

all = no-docs, docs
no-download = libs, demos, local-models
no-docs = libs, demos, models
docs

Default is no-docs.

Classes
-------

vector.h -- vector of three scalars, also used for colour
matrix.h -- matrix class, currently not used
quaternion.h -- quaternion class for camera rotation

container.h  -- container for shapes, base class for octree and kd-tree
octree.h -- Octree space subdivision structure for acceleration of ray-shape intersection search
kdtree.h  -- KdTree space subdivision structure

scene.h -- scene objects: Ray, Light, Camera and shapes
raytracer.h -- ray tracer class
common.h -- Float definition (float/double) and some helper functions


Container Usage
---------------
(Container|Octree|KdTree) top;
scene.setTop(top)  // top object in hierarchy
top.optimize()     // build optimization structure

Rework camera
-------------
Sampler - generate points in screen plane
Camera - transform point from sampler to a ray