CodeStructureForRazor

CodeStructureForRazor

The Razor Code Structure

The structure of the code is -

  • icollab
    • collada
      • COLLAborative Design Activity - For establishing an interchange file format for interactive 3D applications.
      • Developed by Sony during development of PS3.
      • Use for exchanging info among various graphic apps, that might otherwise store their assets in incompaitable format.
    • common
      • Contains the razor ray tracing code - the common files.
      • Other dirs include -
      • arena
      • bmp - Code for reading/writing bmp data.
      • catchall
      • filter -> Code for filtered image rescaling
      • geom -> Implementation of the geometry system. Contains the engines for loop and planar subdivision and the Catmull-Clark geometry system.
      • glut -> The opengl toolkit for windows.
      • hilbert
      • jpg, png, tiff -> libs for supporting these filetypes
      • logging
      • params -> The parameter manager code. Used for get/set/existance of parameters.
      • simpmath -> Simple math manipulations required for ray tracing.
      • sseaux -> Looks like deprecated code for modifying SSE variables.
      • Vtune -> Contains code for compiling with special hooks in vtune.
      • xml -> Contains the libxml files.
      • zlib - The zlib compression library.
  • docs -> Misc and random docs regarding licensing, submitted papers, memory usage, spec, wiki-backup etc.
  • misc
  • razor
    • Contains the main razor ray tracing code. This includes the kdtree manipulations, segment, shading, ray tracing and lighting.
  • RazorStaticLib
  • scenes
    • Scenes used to test the ray tracing. This dir is what makes the codebase so huge in size.
  • SCons
    • SCons is make equivalent, based on python. Files for Scons maintainence.
  • scripts
    • Perl scripts to run razor with different settings.
  • tools
  • build.bat --> Builds the VC solution for Razor.
  • icollab.sln --> The V solution file used to launch the build