Progress TrackerTrack the progress of the various systems of Plasma. The percentages assigned are arbitrary guesses. Application:Application Layer
Application layer is in charge of startup, main loop (message pump), reset, and shutdown. Managers:EventManager
Ties together the subsystem managers by providing a way for them to communicate with each other. TimeManager
High resolution timer used for updating objects each frame. InputManager
Handles various forms of user input, weather it be from mouse, keyboard, or gamepad. ResourceManager
Handles acquisition, loading, and unloading of resources that can be shared between objects. GraphicsManager
Handles initialization, reset, and shutdown of graphics systems. InterfaceManager
Handles user interface. SceneManager
Handles 3D scenes. Other Systems:Material System
Used in tandem with the render engine, used to define how a triangle is drawn. Animation System
Interfaces for interpolating keyframe data. Script System
Probably Lua, probably not Python. Physics System
Probably PAL with Bullet or ODE. Sound System
Not OpenAL, something better made from scratch. Networking System
Don't want to think about this. Interface:Resources:Actions
Defines an armature animation with channeled keyframe data. Armatures
A set of bones that form a skeleton. Fonts
Defines a type face. Geometry Shaders
Geometry shader resource. Index Buffers
GPU memory index buffer. Materials
Material resources define variable overrides for a material shader. Material Shaders
Material shader resources define how a triangle is drawn. Meshes
Mesh resource. Pixel Shaders
Pixel shader resource Skins
User interface skin. Textures
Texture. Vertex Buffers
GPU memory vertex buffer. Vertex Shaders
Vertex shader resource Renderers:D3D9FF
Direct3D 9 Fixed Function. D3D9
Direct3D 9. D3D10
Direct3D 10.
|