README
branchpyrit
changeset 98 64638385798a
parent 96 9eb71e76c7fd
child 102 de3e9ea18f56
equal deleted inserted replaced
97:2a853d284a6a 98:64638385798a
    12 /include  -- header files
    12 /include  -- header files
    13 /models   -- common models for use by demos
    13 /models   -- common models for use by demos
    14 /src      -- ray tracing library source code
    14 /src      -- ray tracing library source code
    15 /tests    -- test programs for classes
    15 /tests    -- test programs for classes
    16 /tools    -- auxiliary programs
    16 /tools    -- auxiliary programs
    17 
       
    18 Classes organization throughout header files is explained in DEVNOTES.
       
    19 
    17 
    20 
    18 
    21 Building
    19 Building
    22 --------
    20 --------
    23 Type 'scons pyrit' to build and 'scons -h' for list of targets.
    21 Type 'scons pyrit' to build and 'scons -h' for list of targets.
    35 
    33 
    36 Downloading model files
    34 Downloading model files
    37 -----------------------
    35 -----------------------
    38 Not all models are included in distribution. To download the large
    36 Not all models are included in distribution. To download the large
    39 Stanford models, type 'scons download-models', which will download
    37 Stanford models, type 'scons download-models', which will download
    40 end extract the archives to appropriate location.
    38 and extract the archives to appropriate location.
    41 
    39 
    42 The download script uses 'tar' and 'wget' utilities.
    40 The download script uses 'tar' and 'wget' utilities.
    43 
    41 
    44 For Windows, these are available here:
    42 For Windows, these are available here:
    45 http://gnuwin32.sourceforge.net/packages/wget.htm
    43 http://gnuwin32.sourceforge.net/packages/wget.htm
    46 http://gnuwin32.sourceforge.net/packages/libarchive.htm
    44 http://gnuwin32.sourceforge.net/packages/libarchive.htm
    47 
    45 
    48 
    46 
    49 Pthreads
    47 Pthreads
    50 --------
    48 --------
    51 Threads can be used to render rays paralelly. Arbitrary number
    49 Threads are used to render rays paralelly. Arbitrary number
    52 of threads can be used.
    50 of threads can be used.
    53 
    51 
    54 For Windows, get Pthreads library here:
    52 For Windows, get Pthreads library here:
    55 http://sources.redhat.com/pthreads-win32/
    53 http://sources.redhat.com/pthreads-win32/
       
    54 
       
    55 
       
    56 Python Demos
       
    57 ------------
       
    58 All demos render images and write the result to PNG file
       
    59 named with same base name as the script.
       
    60 Scene is constructed using classes imported from pyrit
       
    61 Python module.
       
    62 
       
    63 boxes.py
       
    64         512 cubes with reflections and refractions
       
    65         4x oversampling, two lights, octree
       
    66 
       
    67 bunny.py
       
    68         glass bunny, ~70k polygons
       
    69         4x oversampling, two lights, kd-tree
       
    70 
       
    71 car.py
       
    72         low poly car model, LWOB format
       
    73         9x oversampling, two lights, kd-tree
       
    74 
       
    75 spheres_shadow.py
       
    76         three spheres, sharp shadows
       
    77         4x oversampling, two lights, kd-tree
       
    78 
       
    79 spheres_ao.py
       
    80         three spheres, ambient occlussion
       
    81 
       
    82 spheres_glass.py
       
    83         row of glass spheres
       
    84         4x oversampling, three lights, kd-tree
       
    85 
       
    86 render_nff.py [input.nff] [output.png]
       
    87         renders nff files (http://tog.acm.org/resources/SPD/)
       
    88         reads stdin if no args given
       
    89 
       
    90 triangles_*.py
       
    91         older examples using OBJ file format
       
    92 
       
    93 
       
    94 C++ Demos
       
    95 ---------
       
    96 Compiled interactive demos. Camera can move freely in the scene.
       
    97 
       
    98 realtime.exe
       
    99         one hundred spheres with reflections
       
   100 
       
   101 realtime_bunny.exe
       
   102         bunny model (it loads silently, so be patient)
       
   103 
       
   104 spheres_shadow.exe
       
   105         "interactive" version of spheres_shadow.py
       
   106 
       
   107 textures.exe
       
   108         demo of different texture mappings
       
   109 
       
   110 
       
   111 Control keys:
       
   112 
       
   113         Up, Down, Left, Right   look around
       
   114         w/s                     forward, backward
       
   115         c                       print camera coordinates
       
   116 
       
   117         spheres_shadow demo supports also:
       
   118         r/t, f/g, v/b           move the light (-x/+x, -y/+y, -z/+z)
       
   119         z/x                     change camera focal length (-/+)
    56 
   120 
    57 
   121 
    58 License
   122 License
    59 -------
   123 -------
    60 This software is published under terms of MIT license.
   124 This software is published under terms of MIT license.