Makefile: added help and distclean target, plus small fixes
ccdemos/common_sdl.h:
print fps to window caption instead of console
update and key callbacks
fixed segfault when resizing window
pressing c now causes print out of camera coordinates
ccdemos/spheres_shadow.cc: controlling position of a light and focal length of camera
Bugs==== * concurrent read? (concurrent write should not occur)Future Plans============ * kd-tree: - optimize structures - optimize construction: do not use bounding boxes of shapes, instead implement box-shape intersection - optimize traversal -- no std::vector - save/load * textures (3D procedural, pixmaps later) * update Python binding: Camera, new classes * namespace * stochastic oversampling * absorbtion of refracted rays in dense materials (can be computed using shape distance and some 'absorbance' constant)New Classes?============container.h -- Containerkdtree.h -- KdTreeshapes.h -- Triangle, Spherescene.h -- Ray, Light, Camera, Scenematerial.h -- Material, Texturematrix.h -- Matrixvector.h -- Vector3reader.h -- Reader, WavefrontReaderKdTree topwf = new WavefrontReader()wf.setContainer(top)wf.setTransform(monkey_pos_matrix)wf.read("monkey.obj")// more transform&readsdestroy wftop.optimize() -- i.e. build treeScene scene -- container with shapes, a camera and lightsscene = new Scene()scene.setTop(top) -- top object in hierarchyscene.setCamera(new Camera(eye, u, v, p))scene.addLight(new PointLight(pos, color))rt.setScene(scene)rt.render(w,h)constructors have zero or one parameter by default -- the object to copy data frommore parameters -- the data (ray origin and direction)