Starting up the ray tracer coding
At last I am starting the coding part after making some decision about the spects of the project
here are the spects:
|
|
Type |
Priority |
|
Ray |
Backward |
1st |
|
Primitive |
Sphere and Plane |
1st |
|
Triangles |
2nd |
|
|
Meshes |
3rd priority |
|
|
Super |
Fixed |
2nd |
|
Dynamic |
3rd priority |
|
|
Main |
KD |
1st |
|
Job |
Fixed |
1st |
|
Dynamic |
2nd priority |
|
|
Texturing |
2D texturing |
2nd |
|
3D texturing |
4th |
|
|
Diffuse |
|
N/A (will be considered during development time) |
So the project is mostly focused on multiprocessing and implementation of the acceleration structure.
One of the important decisions I made is about development process. I want to follow an evolutional method during development. First of all I’ll create a very basic framework to build up my the ray-tracer. At the moment I am working on that framework and already got some results and probably will put a uml diagram of my framework. At the very beginning I wanted to implement the ray-tracer with minimum use of object oriented patterns. However, it really was a pain in the neck. After creating a pure procedural screen-paint-only structure (which only paints the screen) I started implementing a more object oriented one.
I got these results for only screen painting (just setting the color codes of the pixel in a 800×600 window (by the way I am using windows functions to do that, probably will move to OpenGL frambuffers anyway))
|
Almost completely procedural |
Much more object Oriented |
|
start = |
start = |
|
start = |
start = |
|
start = |
start = |