attack-decay-sustain-release intensity envelope for laser alpha and width
multi-beam effects to model and manage simple laser cannon arrays
integrated hit detection into SLaserBeam updates
Restructuring
consolidated the following render settings into SSOBRenderState: doBillboarding, depthTest, depthFunction, depthWrite, lighted, alphaTest, alphaBlendingOn, blendEquationMode, blendFactorSrc, blendFactorDest
consolidated the following render settings into SSRenderConfig: enableFaceCulling, cullFaceMode, enableDepthClamp
created a system for rendering 2d sprites in screen space; sun flare now using this system and so is the new laser emission flare object
CPU-iterations mode for rendering multitude of things without actual instancing. Rendering 2d/screen space sprite systems now part of this system too and can be toggled to use instancing vs cpu iterations of GL calls. (as fitting for the nature of things to be rendered or the hardware to do it)
implemented math for plane and line (ray) intersection
cleaning up meshes; specifically object and mesh intersection mechanisms. SSIndexedMesh now has a bvh tree of triangles built on demand. SSMesh_wfOBJ now uses indexed meshes and so uses the bvh intersection search as well. Skeletal meshes currently falling back onto non-BVH tests because vertices keep moving.
allowing turning on/off individual parts of the explosion system. Emitters and effectors are allocated/deallocated as needed.
Lasers
Restructuring