1. AI (artificial inteligence)
1.1. path finding
1.2. target finding
2. Level
2.1. operations
2.1.1. saving
2.1.2. loading
2.1.3. updating
2.1.4. creating
2.2. structure
2.2.1. actors
2.2.1.1. renderable
2.2.1.1.1. animating
2.2.1.1.2. not animating
2.2.1.2. not renderable
2.2.1.2.1. spawnpoint
2.2.1.2.2. trigger
2.3. handling
2.3.1. extension
2.3.1.1. XML
2.3.1.2. JSON
2.3.1.3. YAML
3. Storage
3.1. assets
3.1.1. sound
3.1.1.1. speach
3.1.1.2. music
3.1.1.3. effects
3.1.2. graphics
3.1.2.1. images
3.1.2.1.1. textures
3.1.2.1.2. animation
3.1.2.1.3. UI
3.1.2.2. fonts
3.1.3. dialogs
3.2. resources
3.2.1. world
3.2.1.1. levels
3.2.1.2. entities
3.2.2. character
3.2.2.1. NPC
3.2.2.1.1. hostile
3.2.2.1.2. friendly
3.2.2.2. PC
3.2.3. storyline
3.2.3.1. chapter
3.2.3.1.1. tasks
3.3. config
3.3.1. settings
3.3.2. debug
4. Video
4.1. Most popular APIs
4.1.1. OpenGL
4.1.1.1. simplifying libraries
4.1.1.1.1. GLFW
4.1.1.1.2. SDL
4.1.1.1.3. GLUT
4.1.1.2. improving libraries
4.1.1.2.1. GLEW
4.1.2. Direct3D
5. Input
5.1. tables
5.2. IO devices
5.2.1. PC
5.2.1.1. Keyboard
5.2.1.1.1. key handlers
5.2.1.2. mouse
5.2.2. Controller
5.2.2.1. Rotation
5.2.2.2. Output
5.2.2.2.1. vibration
5.2.3. Joystic
6. Event Manager
7. Physics
8. Collision
8.1. main approach
8.1.1. colidable
8.1.1.1. interactive
8.1.1.2. character
8.1.1.3. collectible
8.1.1.4. trigger
9. Subsystems
9.1. timer
9.2. rng (random number generator)
9.3. serialization
9.3.1. libraries
9.3.1.1. cereal
9.3.1.2. TinyXML