DEVNOTES
author Radek Brich <radek.brich@devl.cz>
Mon, 05 May 2008 15:31:14 +0200
branchpyrit
changeset 92 9af5c039b678
parent 64 5785cca4cdb9
child 94 4c8abb8977dc
permissions -rw-r--r--
add MSVC compiler support, make it default for Windows new header file simd.h for SSE abstraction and helpers add mselect pseudo instruction for common or(and(...), andnot(...)) replace many SSE intrinsics with new names new MemoryPool class (mempool.h) for faster KdNode allocation remove setMaxDepth() from Octree and KdTree, make max_depth const, it should be defined in constructor and never changed, change after building tree would cause error in traversal modify DefaultSampler to generate nice 2x2 packets of samples for packet tracing optimize Box and BBox::intersect_packet add precomputed invdir attribute to RayPacket scons build system: check for pthread library on Windows check for SDL generate include/config.h with variables detected by scons configuration move auxiliary files to build/ add sanity checks add writable operator[] to Vector
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
     1
Classes
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
     2
-------
7
bf17f9f84c91 kd-tree: build algorithm - searching for all posible splits
Radek Brich <radek.brich@devl.cz>
parents:
diff changeset
     3
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
     4
vector.h -- vector of three scalars, also used for colour
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
     5
matrix.h -- matrix class, currently not used
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
     6
quaternion.h -- quaternion class for camera rotation
7
bf17f9f84c91 kd-tree: build algorithm - searching for all posible splits
Radek Brich <radek.brich@devl.cz>
parents:
diff changeset
     7
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
     8
container.h  -- container for shapes, base class for octree and kd-tree
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
     9
octree.h -- Octree space subdivision structure for acceleration of ray-shape intersection search
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    10
kdtree.h  -- KdTree space subdivision structure
7
bf17f9f84c91 kd-tree: build algorithm - searching for all posible splits
Radek Brich <radek.brich@devl.cz>
parents:
diff changeset
    11
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    12
scene.h -- scene objects: Ray, Light, Camera and shapes
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    13
raytracer.h -- ray tracer class
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    14
common.h -- Float definition (float/double) and some helper functions
7
bf17f9f84c91 kd-tree: build algorithm - searching for all posible splits
Radek Brich <radek.brich@devl.cz>
parents:
diff changeset
    15
bf17f9f84c91 kd-tree: build algorithm - searching for all posible splits
Radek Brich <radek.brich@devl.cz>
parents:
diff changeset
    16
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    17
Container Usage
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    18
---------------
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    19
(Container|Octree|KdTree) top;
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    20
scene.setTop(top)  // top object in hierarchy
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 7
diff changeset
    21
top.optimize()     // build optimization structure
45
76b254ce92cf note for new camera classes
Radek Brich <radek.brich@devl.cz>
parents: 44
diff changeset
    22
76b254ce92cf note for new camera classes
Radek Brich <radek.brich@devl.cz>
parents: 44
diff changeset
    23
Rework camera
76b254ce92cf note for new camera classes
Radek Brich <radek.brich@devl.cz>
parents: 44
diff changeset
    24
-------------
46
6493fb65f0b1 Doxygen
Radek Brich <radek.brich@devl.cz>
parents: 45
diff changeset
    25
Sampler - generate points in screen plane
45
76b254ce92cf note for new camera classes
Radek Brich <radek.brich@devl.cz>
parents: 44
diff changeset
    26
Camera - transform point from sampler to a ray