| author | Radek Brich <radek.brich@devl.cz> | 
| Fri, 28 Mar 2008 17:13:21 +0100 | |
| branch | pyrit | 
| changeset 50 | 14a727b70d07 | 
| parent 44 | 3763b26244f0 | 
| child 66 | c5b89d16497a | 
| permissions | -rw-r--r-- | 
| 
4
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
1  | 
==================  | 
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
2  | 
Pyrit Ray Tracer  | 
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
3  | 
==================  | 
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
4  | 
|
| 44 | 5  | 
|
6  | 
File Organization  | 
|
7  | 
-----------------  | 
|
8  | 
/bin -- output directory for binary objects  | 
|
9  | 
/ccdemos -- ray tracer demos in C++  | 
|
10  | 
/demos -- ray tracer demos in Python  | 
|
11  | 
/include -- header files  | 
|
12  | 
/models -- common models for use by demos  | 
|
13  | 
/src -- ray tracing library source code  | 
|
14  | 
/tests -- test programs for classes  | 
|
15  | 
||
16  | 
Classes organization throughout header files is explained in DEVNOTES.  | 
|
17  | 
||
18  | 
||
19  | 
Building  | 
|
20  | 
--------  | 
|
21  | 
Type 'make all' to build everything and 'make help' for list of targets.  | 
|
22  | 
||
23  | 
Requirements:  | 
|
24  | 
pthreads (see bellow)  | 
|
25  | 
Python 2.4 or newer for Python module and demos  | 
|
26  | 
PIL (Python Imaging Library) for Python demos  | 
|
27  | 
SDL for interactive C++ demos  | 
|
28  | 
libpng and zlib for rendering to PNG file from C++ demos  | 
|
29  | 
||
30  | 
Flags can be adjusted in config.mk.  | 
|
31  | 
||
| 
14
 
fc18ac4833f2
replace Plane with axis-aligned Box (because infinite Plane is not usable with kd-tree)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
6 
diff
changeset
 | 
32  | 
|
| 
4
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
33  | 
Pthreads  | 
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
34  | 
--------  | 
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
35  | 
Threads can be used to render rows of picture paralelly. Arbitrary number  | 
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
36  | 
of threads can be used, even numbers like 17 are acceptable.  | 
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
37  | 
|
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
38  | 
To completely disable this feature just remove "-DPTHREADS -pthreads"  | 
| 
 
c73bc405ee7a
multi-threaded rendering via pthreads
 
Radek Brich <radek.brich@devl.cz> 
parents:  
diff
changeset
 | 
39  | 
from flags in makefile.  | 
| 
6
 
d8d596d26f25
pthreads and other fixes for Windows
 
Radek Brich <radek.brich@devl.cz> 
parents: 
4 
diff
changeset
 | 
40  | 
|
| 
 
d8d596d26f25
pthreads and other fixes for Windows
 
Radek Brich <radek.brich@devl.cz> 
parents: 
4 
diff
changeset
 | 
41  | 
For Windows + Mingw32, get pthreads library here:  | 
| 
 
d8d596d26f25
pthreads and other fixes for Windows
 
Radek Brich <radek.brich@devl.cz> 
parents: 
4 
diff
changeset
 | 
42  | 
http://sources.redhat.com/pthreads-win32/  | 
| 44 | 43  | 
|
44  | 
||
45  | 
License  | 
|
46  | 
-------  | 
|
47  | 
This software is published under terms of MIT license.  | 
|
48  | 
See COPYING for full text of license.  | 
|
49  | 
||
50  | 
||
51  | 
Website  | 
|
52  | 
-------  | 
|
53  | 
Latest version can be obtained at http://wiki.fiction.cz/Pyrit  |