Archive of C++ code developed while working on my System for Automated Interactive Lighting (SAIL) dissertation work (2009).
Note that the codebase which was actually used as part of the interview portion of my dissertation is the sailcs-codebase. That codebase is written in C#.
This C++ jz-codebase was built in tandum and is less complete in terms
of the implementation of SAIL itself (training and real-time lighting).
- original code is licensed under the MIT License and is Copyright (c) 2009-2012 Joseph A. Zupko.
- Environment and character art in media/1930is used with permission and is Copyright (c) 2009 David Milam.
- files in jz/fmodare part ofFMOD 3.75and covered by the proprietary FMOD End User License Agreement.
- files in jz/freetype2are part of theFreeType projectand are covered by the terms of theFreeType project license.
- files in jz/gleware part of theOpenGL Extension Wrangler Libraryand are covered by the terms of the3-Clause BSD License.
- files in jz/luaare part ofLua 5.1.4and are covered by the terms of theMIT License.
- files in jz/tut_frameworkare part of theTemplate Unit Tests Framework for C++and are covered by the terms of theSimplified BSD License.
- files in jz/zlibare part of the'zlib' general purpose compression library version 1.2.3and are covered by the terms of thezlib License.
This codebase includes my personal projects as well as a C++ implementation of my System for Automated Interactive Lighting (SAIL) dissertation work.
This codebase is not well documented or thoroughly tested and should be considered
a snapshot of WIP when I was finishing up my dissertation. It is only known to
compile with Visual Studio 2008 Express Edition under Windows XP 32-bit.
The codebase should be considered 32-bit and Windows brittle.
- jz/jz_ai- fuzzy logic and learning (neural network and simulated annealing).
- jz/jz_app_3D- sample implementation of- jz_engine_3D, also a sample implementation of jz_sail.
- jz/jz_core- core library, provides platform independent math and utility functions.
- jz/jz_engine_3D- 3D engine, primitives based around scene nodes.
- jz/jz_filesystem- pack file filesystem, unfinished and unused.
- jz/jz_graphics- low-level access to graphics device functionality.
- jz/jz_graphics_directx9- DirectX 9 specific implementation of- jz_graphics.
- jz/jz_graphics_opengl- OpenGL specific implementation of- jz_graphics, unfinished and unused.
- jz/jz_pathfinding- dynamic 2D pathfinding, unfinished and unused.
- jz/jz_physics- 2D and 3D collision.
- jz/jz_pipeline- content processor written in C#, converts COLLADA files into content usable by- jz_engine_3D.
- jz/jz_sail- System for Automated Interactive Lighting (SAIL), C++ implementation of the solver described in my dissertation.
- jz/jz_sound- streaming audio and SFX playback, unfinished and unused.
- jz/jz_system- system library, provides I/O, timing, threading, and other platform dependent functions.