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/1930
is used with permission and is Copyright (c) 2009 David Milam.
- files in
jz/fmod
are part ofFMOD 3.75
and covered by the proprietary FMOD End User License Agreement. - files in
jz/freetype2
are part of theFreeType project
and are covered by the terms of theFreeType project license
. - files in
jz/glew
are part of theOpenGL Extension Wrangler Library
and are covered by the terms of the3-Clause BSD License
. - files in
jz/lua
are part ofLua 5.1.4
and are covered by the terms of theMIT License
. - files in
jz/tut_framework
are part of theTemplate Unit Tests Framework for C++
and are covered by the terms of theSimplified BSD License
. - files in
jz/zlib
are part of the'zlib' general purpose compression library version 1.2.3
and 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 ofjz_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 ofjz_graphics
.jz/jz_graphics_opengl
- OpenGL specific implementation ofjz_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 byjz_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.