README
author Radek Brich <radek.brich@devl.cz>
Thu, 15 May 2008 00:07:25 +0200
branchpyrit
changeset 96 9eb71e76c7fd
parent 94 4c8abb8977dc
child 98 64638385798a
permissions -rw-r--r--
added Python binding for material.h classes added raytracermodule.h header file for declarations updated car.py demo added texture.py demo (based on spheres_glass.py) all remaining 'centre' changed to more common 'center' added some more const's to material.h
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
     5
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
     6
File Organization
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
     7
-----------------
94
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
     8
/build    -- output directory for binaries and other generated files
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
     9
/ccdemos  -- ray tracer demos in C++
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    10
/demos    -- ray tracer demos in Python
96
9eb71e76c7fd added Python binding for material.h classes
Radek Brich <radek.brich@devl.cz>
parents: 94
diff changeset
    11
/docs     -- Doxygen generated documentation
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    12
/include  -- header files
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    13
/models   -- common models for use by demos
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    14
/src      -- ray tracing library source code
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    15
/tests    -- test programs for classes
94
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    16
/tools    -- auxiliary programs
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    17
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    18
Classes organization throughout header files is explained in DEVNOTES.
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    19
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    20
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    21
Building
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    22
--------
94
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    23
Type 'scons pyrit' to build and 'scons -h' for list of targets.
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    24
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    25
Requirements:
66
c5b89d16497a fixed ICC detection
Radek Brich <radek.brich@devl.cz>
parents: 44
diff changeset
    26
    SCons
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    27
    pthreads (see bellow)
94
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    28
    libpng, zlib
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    29
    Python 2.4 or newer for Python module and demos
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    30
    SDL for interactive C++ demos
94
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    31
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    32
It should build with these compilers: GCC, IntelC, MSVC
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    33
GCC is default in Linux, MSVC is default in Windows.
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    34
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    35
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    36
Downloading model files
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    37
-----------------------
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    38
Not all models are included in distribution. To download the large
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    39
Stanford models, type 'scons download-models', which will download
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    40
end extract the archives to appropriate location.
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    41
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    42
The download script uses 'tar' and 'wget' utilities.
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    43
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    44
For Windows, these are available here:
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    45
http://gnuwin32.sourceforge.net/packages/wget.htm
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    46
http://gnuwin32.sourceforge.net/packages/libarchive.htm
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    47
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
    48
4
c73bc405ee7a multi-threaded rendering via pthreads
Radek Brich <radek.brich@devl.cz>
parents:
diff changeset
    49
Pthreads
c73bc405ee7a multi-threaded rendering via pthreads
Radek Brich <radek.brich@devl.cz>
parents:
diff changeset
    50
--------
94
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    51
Threads can be used to render rays paralelly. Arbitrary number
4c8abb8977dc update README
Radek Brich <radek.brich@devl.cz>
parents: 66
diff changeset
    52
of threads can be used.
4
c73bc405ee7a multi-threaded rendering via pthreads
Radek Brich <radek.brich@devl.cz>
parents:
diff changeset
    53
96
9eb71e76c7fd added Python binding for material.h classes
Radek Brich <radek.brich@devl.cz>
parents: 94
diff changeset
    54
For Windows, get Pthreads library here:
6
d8d596d26f25 pthreads and other fixes for Windows
Radek Brich <radek.brich@devl.cz>
parents: 4
diff changeset
    55
http://sources.redhat.com/pthreads-win32/
44
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    56
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    57
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    58
License
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    59
-------
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    60
This software is published under terms of MIT license.
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    61
See COPYING for full text of license.
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    62
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    63
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    64
Website
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    65
-------
3763b26244f0 MIT license for sources
Radek Brich <radek.brich@devl.cz>
parents: 14
diff changeset
    66
Latest version can be obtained at http://wiki.fiction.cz/Pyrit