Tue, 06 May 2008 09:39:58 +0200 more build script tuning pyrit
Radek Brich <radek.brich@devl.cz> [Tue, 06 May 2008 09:39:58 +0200] rev 93
more build script tuning make all float constants single precision solve many warnings from msvc and gcc with various -W... flags add common.cc file for dbgmsg() function witch apparently cannot be inlined fix python module building with msvc, add manifest file handling remove forgotten RenderrowData class add stanford models download script for windows (.bat)
Mon, 05 May 2008 15:31:14 +0200 add MSVC compiler support, make it default for Windows pyrit
Radek Brich <radek.brich@devl.cz> [Mon, 05 May 2008 15:31:14 +0200] rev 92
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
Fri, 02 May 2008 13:27:47 +0200 packetize Phong shader pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 02 May 2008 13:27:47 +0200] rev 91
packetize Phong shader new scons config options: simd=(yes|no) - allow/suppress explicit SSE force_flags=(yes|no) - force use of specified flags instead of autodetected profile=(yes|no) - enable gcc's profiling (-pg option) check for pthread.h header, don't try to build without it add fourth Vector3 component for better memory aligning rename Vector3 to Vector partialy SSE-ize Vector class (only fully vertical operations) build static lib and python module in distinctive directories to avoid collision of library file names on some platforms
Tue, 29 Apr 2008 23:31:08 +0200 rename Python module from 'raytracer' to 'pyrit' pyrit
Radek Brich <radek.brich@devl.cz> [Tue, 29 Apr 2008 23:31:08 +0200] rev 90
rename Python module from 'raytracer' to 'pyrit' improve Python binding: - new objects: Container, Octree, KdTree, Shape, Pixmap, Sampler, DefaultSampler - all shapes are now subclasses of Shape - clean, remove redundant Getattr's - Raytracer render method now just wraps C++ method without doing any additional work adjust all demos for changes in Python binding, remove PIL dependency add demo_PIL.py as a example of pyrit + PIL usage render_nff.py now either loads file given as a argument or reads input from stdin otherwise fix bug in pixmap float to char conversion
Tue, 29 Apr 2008 13:56:29 +0200 use SSE for float to char image buffer conversion pyrit
Radek Brich <radek.brich@devl.cz> [Tue, 29 Apr 2008 13:56:29 +0200] rev 89
use SSE for float to char image buffer conversion
Mon, 28 Apr 2008 11:44:11 +0200 merge pixmap handling from sampler, material.h and ccdemos's image module to new Pixmap class pyrit
Radek Brich <radek.brich@devl.cz> [Mon, 28 Apr 2008 11:44:11 +0200] rev 88
merge pixmap handling from sampler, material.h and ccdemos's image module to new Pixmap class add check for PNG library, allow writing PNG file from a Pixmap simplify demos using new methods from Sampler and Pixmap
Sun, 27 Apr 2008 22:55:17 +0200 Sphere, Box - RayPacket intersection pyrit
Radek Brich <radek.brich@devl.cz> [Sun, 27 Apr 2008 22:55:17 +0200] rev 87
Sphere, Box - RayPacket intersection replace 5x oversampling with 4x uniform oversampling
Sun, 27 Apr 2008 19:56:23 +0200 BBox - RayPacket intersection pyrit
Radek Brich <radek.brich@devl.cz> [Sun, 27 Apr 2008 19:56:23 +0200] rev 86
BBox - RayPacket intersection clean up
Sun, 27 Apr 2008 14:19:37 +0200 implement triangle packet intersection pyrit
Radek Brich <radek.brich@devl.cz> [Sun, 27 Apr 2008 14:19:37 +0200] rev 85
implement triangle packet intersection
Sun, 27 Apr 2008 09:44:49 +0200 prepare kd-tree traversal for packet tracing (4 rays at once) pyrit
Radek Brich <radek.brich@devl.cz> [Sun, 27 Apr 2008 09:44:49 +0200] rev 84
prepare kd-tree traversal for packet tracing (4 rays at once) RayPacket and VectorPacket structures for packet tracing remove some redundant const's
Thu, 24 Apr 2008 18:12:32 +0200 vectorize makeRayPacket() using SSE intrinsics pyrit
Radek Brich <radek.brich@devl.cz> [Thu, 24 Apr 2008 18:12:32 +0200] rev 83
vectorize makeRayPacket() using SSE intrinsics
Thu, 24 Apr 2008 13:55:11 +0200 prepare structures for packet tracing pyrit
Radek Brich <radek.brich@devl.cz> [Thu, 24 Apr 2008 13:55:11 +0200] rev 82
prepare structures for packet tracing (it's already slightly faster, even without any explicit parallelization) supply missing virtual destructors
Thu, 24 Apr 2008 10:49:11 +0200 add 2D pixmap texture class pyrit
Radek Brich <radek.brich@devl.cz> [Thu, 24 Apr 2008 10:49:11 +0200] rev 81
add 2D pixmap texture class
Wed, 23 Apr 2008 19:35:03 +0200 remove forgotten noise.h includes pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 23 Apr 2008 19:35:03 +0200] rev 80
remove forgotten noise.h includes common_ply.h: ignore invalid faces with duplicated points (this solves visual flaws in dragon model) extend loadShape for loading triangles realtime_dragon.cc demo: add kd-tree dump/load functionality, add colored perlin cloud texture
Wed, 23 Apr 2008 14:39:33 +0200 material and texture classes moved to material.(cc,h) pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 23 Apr 2008 14:39:33 +0200] rev 79
material and texture classes moved to material.(cc,h) 2D texture mappings from textures.cc polished and moved to material.h add ColourMap class and subclasses to make textures more flexible two example textures: CheckersTexture and CloudTexture (using Perlin noise)
Wed, 23 Apr 2008 10:38:33 +0200 move shapes to extra source file pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 23 Apr 2008 10:38:33 +0200] rev 78
move shapes to extra source file add serialize header and source file with common serialization functions dump/load feature for shapes and kd-tree fix few minor bugs
Tue, 22 Apr 2008 13:33:12 +0200 rewrite subsampling from old code to DefaultSampler pyrit
Radek Brich <radek.brich@devl.cz> [Tue, 22 Apr 2008 13:33:12 +0200] rev 77
rewrite subsampling from old code to DefaultSampler render in phases, clean workers after each phase
Mon, 21 Apr 2008 19:35:27 +0200 kd-tree: move recursive build subroutine from KdNode to KdTree pyrit
Radek Brich <radek.brich@devl.cz> [Mon, 21 Apr 2008 19:35:27 +0200] rev 76
kd-tree: move recursive build subroutine from KdNode to KdTree
Mon, 21 Apr 2008 09:05:09 +0200 unify capitalization of method names in C++ and Python pyrit
Radek Brich <radek.brich@devl.cz> [Mon, 21 Apr 2008 09:05:09 +0200] rev 75
unify capitalization of method names in C++ and Python
Mon, 21 Apr 2008 08:47:36 +0200 kd-tree traversal - avoid dynamic memory allocation pyrit
Radek Brich <radek.brich@devl.cz> [Mon, 21 Apr 2008 08:47:36 +0200] rev 74
kd-tree traversal - avoid dynamic memory allocation use minimum storage size for KdNode (8B on 32bit cpu) vector.h - add division operator, fix semicolons
Sun, 20 Apr 2008 19:27:59 +0200 correct camera angle of view pyrit
Radek Brich <radek.brich@devl.cz> [Sun, 20 Apr 2008 19:27:59 +0200] rev 73
correct camera angle of view render_nff.py - polygonal patches
Sun, 20 Apr 2008 16:48:24 +0200 kd-tree building - check all axes for best split, add additional shape-bbox check pyrit
Radek Brich <radek.brich@devl.cz> [Sun, 20 Apr 2008 16:48:24 +0200] rev 72
kd-tree building - check all axes for best split, add additional shape-bbox check extent Container bounds by Eps to fix invisible triangles on borders new Camera constructor with more intuitive lookat/up vectors fix camera axes (mirrored images) better camera angle-of-view change capitalization of addShape and addLight
Sat, 19 Apr 2008 18:00:27 +0200 simplify kd-tree building, it's also much faster now pyrit
Radek Brich <radek.brich@devl.cz> [Sat, 19 Apr 2008 18:00:27 +0200] rev 71
simplify kd-tree building, it's also much faster now
Tue, 15 Apr 2008 17:12:50 +0200 a fix for CPU and compiler detection pyrit
Radek Brich <radek.brich@devl.cz> [Tue, 15 Apr 2008 17:12:50 +0200] rev 70
a fix for CPU and compiler detection
Mon, 14 Apr 2008 12:51:50 +0200 move "smooth" attribute from Triangle to Material pyrit
Radek Brich <radek.brich@devl.cz> [Mon, 14 Apr 2008 12:51:50 +0200] rev 69
move "smooth" attribute from Triangle to Material lwo reader enhancements - implement more chunk types, support for smoothing flag and SMAN (smoothing max. angle)
Sat, 12 Apr 2008 02:02:45 +0200 added detection of optimal CPU flags for both GCC and IntelC pyrit
Radek Brich <radek.brich@devl.cz> [Sat, 12 Apr 2008 02:02:45 +0200] rev 68
added detection of optimal CPU flags for both GCC and IntelC
Fri, 11 Apr 2008 12:46:36 +0200 new option to choose single or double precision floats pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 11 Apr 2008 12:46:36 +0200] rev 67
new option to choose single or double precision floats
Fri, 11 Apr 2008 00:13:59 +0200 fixed ICC detection pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 11 Apr 2008 00:13:59 +0200] rev 66
fixed ICC detection
Thu, 10 Apr 2008 23:20:36 +0200 basic detection of compiler (GCC or ICC) and CPU capabilities pyrit
Radek Brich <radek.brich@devl.cz> [Thu, 10 Apr 2008 23:20:36 +0200] rev 65
basic detection of compiler (GCC or ICC) and CPU capabilities try to detect Python path in Windows and allow direct specification through build option plus other build system fixes
Wed, 09 Apr 2008 17:55:29 +0200 add Help with list of targets to SConstruct pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 09 Apr 2008 17:55:29 +0200] rev 64
add Help with list of targets to SConstruct
Wed, 09 Apr 2008 16:51:14 +0200 add many SCons targets (see DEVNOTES) pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 09 Apr 2008 16:51:14 +0200] rev 63
add many SCons targets (see DEVNOTES) make automatic model downloading work again remove Makefiles -- now obsolete and hardly maintainable
Wed, 09 Apr 2008 11:35:59 +0200 more SConscript tweaking, make model preparation work again pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 09 Apr 2008 11:35:59 +0200] rev 62
more SConscript tweaking, make model preparation work again
Wed, 09 Apr 2008 00:29:11 +0200 minor SConscript tweaking pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 09 Apr 2008 00:29:11 +0200] rev 61
minor SConscript tweaking
Tue, 08 Apr 2008 01:05:12 +0200 moving to SCons build system pyrit
Radek Brich <radek.brich@devl.cz> [Tue, 08 Apr 2008 01:05:12 +0200] rev 60
moving to SCons build system
Fri, 04 Apr 2008 13:54:47 +0200 add color support to lwo reader pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 04 Apr 2008 13:54:47 +0200] rev 59
add color support to lwo reader python binding for Camera
Fri, 04 Apr 2008 01:55:25 +0200 new python demo: car.py pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 04 Apr 2008 01:55:25 +0200] rev 58
new python demo: car.py new model format reader: LightWave lwo
Sat, 29 Mar 2008 18:01:45 +0100 new python demo: boxes pyrit
Radek Brich <radek.brich@devl.cz> [Sat, 29 Mar 2008 18:01:45 +0100] rev 57
new python demo: boxes
Sat, 29 Mar 2008 17:54:27 +0100 fix sphere transmissivity, rename demo.py to spheres_glass.py pyrit
Radek Brich <radek.brich@devl.cz> [Sat, 29 Mar 2008 17:54:27 +0100] rev 56
fix sphere transmissivity, rename demo.py to spheres_glass.py
Sat, 29 Mar 2008 12:09:50 +0100 fix bugs pyrit
Radek Brich <radek.brich@devl.cz> [Sat, 29 Mar 2008 12:09:50 +0100] rev 55
fix bugs
Sat, 29 Mar 2008 10:56:56 +0100 more raytrace_worker optimization and cleaning pyrit
Radek Brich <radek.brich@devl.cz> [Sat, 29 Mar 2008 10:56:56 +0100] rev 54
more raytrace_worker optimization and cleaning
Sat, 29 Mar 2008 02:17:22 +0100 slighly optimized raytrace_worker pyrit
Radek Brich <radek.brich@devl.cz> [Sat, 29 Mar 2008 02:17:22 +0100] rev 53
slighly optimized raytrace_worker
Fri, 28 Mar 2008 23:30:04 +0100 new implementation of sample_queue pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 28 Mar 2008 23:30:04 +0100] rev 52
new implementation of sample_queue
Fri, 28 Mar 2008 21:47:32 +0100 remove debug messages - algorithm seems stable, but it's slow pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 28 Mar 2008 21:47:32 +0100] rev 51
remove debug messages - algorithm seems stable, but it's slow
Fri, 28 Mar 2008 17:13:21 +0100 rewritten threads with heavy debug information pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 28 Mar 2008 17:13:21 +0100] rev 50
rewritten threads with heavy debug information disabling pthreads library will not be possible any more
Fri, 28 Mar 2008 00:53:20 +0100 workaround for divide by zero bug in octree pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 28 Mar 2008 00:53:20 +0100] rev 49
workaround for divide by zero bug in octree enable oversampling for DefaultSampler sampler and camera performance enhancements
Wed, 26 Mar 2008 17:03:38 +0100 begin moving subsampling and oversampling to Sampler pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 26 Mar 2008 17:03:38 +0100] rev 48
begin moving subsampling and oversampling to Sampler
Wed, 26 Mar 2008 14:29:21 +0100 move Sampler classes to sampler.cc pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 26 Mar 2008 14:29:21 +0100] rev 47
move Sampler classes to sampler.cc fix demos, make whole project compilable again
Wed, 26 Mar 2008 00:52:27 +0100 Doxygen pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 26 Mar 2008 00:52:27 +0100] rev 46
Doxygen new Sampler object replacing rendering algorithm with more flexible one -- this breaks most of demos and disables threads and (over-/sub-)sampling functionality, need a rewrote
Wed, 19 Mar 2008 17:18:59 +0100 note for new camera classes pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 19 Mar 2008 17:18:59 +0100] rev 45
note for new camera classes
Thu, 03 Jan 2008 18:06:34 +0100 MIT license for sources pyrit
Radek Brich <radek.brich@devl.cz> [Thu, 03 Jan 2008 18:06:34 +0100] rev 44
MIT license for sources update README, DEVNOTES and TODO
Sun, 30 Dec 2007 00:11:47 +0100 memory optimization for octree pyrit
Radek Brich <radek.brich@devl.cz> [Sun, 30 Dec 2007 00:11:47 +0100] rev 43
memory optimization for octree fixed some visual artifacts in textures C++ demo and set ambient occlussion for rendering (-r)
Sat, 29 Dec 2007 13:53:33 +0100 cleaned Texture interface pyrit
Radek Brich <radek.brich@devl.cz> [Sat, 29 Dec 2007 13:53:33 +0100] rev 42
cleaned Texture interface new C++ demo: textures slightly adjusted SAH for kd-tree slightly optimized kd-tree building -- moved termination cond. so it's tested before recursion minor sphere intersection optimization
Tue, 18 Dec 2007 12:36:01 +0100 fix possible division by zero in ccdemos/common_ply.h pyrit
Radek Brich <radek.brich@devl.cz> [Tue, 18 Dec 2007 12:36:01 +0100] rev 41
fix possible division by zero in ccdemos/common_ply.h don't use DEFS variable in makefiles, just add it to CCFLAGS compile float version of libs with -fsingle-precision-constant
Mon, 17 Dec 2007 22:03:50 +0100 Makefile: added help and distclean target, plus small fixes pyrit
Radek Brich <radek.brich@devl.cz> [Mon, 17 Dec 2007 22:03:50 +0100] rev 40
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
Fri, 14 Dec 2007 16:51:22 +0100 ccdemos: put the common code to header files, common_ply.h and common_sdl.h pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 14 Dec 2007 16:51:22 +0100] rev 39
ccdemos: put the common code to header files, common_ply.h and common_sdl.h move all ccdemos on octree and make them all realtime (-i argument)
Fri, 14 Dec 2007 10:34:31 +0100 realtime_dragon demo: now fullsize model + octree pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 14 Dec 2007 10:34:31 +0100] rev 38
realtime_dragon demo: now fullsize model + octree realtime_bunny demo: bigger resolution Box, Sphere: implemented AABB intersection new stop condition for octree building (when number of shapes in children >= 6x shapes in parent node) fixes for octree traversal
Fri, 14 Dec 2007 00:05:54 +0100 octree traversal rewritten to avoid recursion pyrit
Radek Brich <radek.brich@devl.cz> [Fri, 14 Dec 2007 00:05:54 +0100] rev 37
octree traversal rewritten to avoid recursion reenabled -O3 optimizations (was accidentaly disabled, now it traces even faster! :-)) realtime_bunny: added FPS counter, fixed a bug in ply loader min3 and max3 templates added to common.h
Thu, 13 Dec 2007 00:08:11 +0100 new virtual Shape::intersect_bbox pyrit
Radek Brich <radek.brich@devl.cz> [Thu, 13 Dec 2007 00:08:11 +0100] rev 36
new virtual Shape::intersect_bbox implementation of triangle-AABB intersection octree building updated and simplified with help of this new method octree made default for Python, it's currently much faster than kd-tree (both building and traversal)
Wed, 12 Dec 2007 19:59:19 +0100 new space partitioning structure: octree pyrit
Radek Brich <radek.brich@devl.cz> [Wed, 12 Dec 2007 19:59:19 +0100] rev 35
new space partitioning structure: octree realtime_bunny updated to use octree plus other files updated to be container type independent (only user programs are supposed to include and use special containers)
Sun, 09 Dec 2007 23:10:58 +0100 quaternion moved to extra header file pyrit
Radek Brich <radek.brich@devl.cz> [Sun, 09 Dec 2007 23:10:58 +0100] rev 34
quaternion moved to extra header file updated headers in all sources
(0) -60 tip