Manual

Castle Game Engine Manual

Contents:

  1. Install
  2. Build your first application
  3. Designing user interface and handling events (press, update) within the state
    1. Managing States
  4. Viewport with scenes, camera, navigation
    1. Tutorial: Designing a 3D world
    2. Tutorial: Designing a 2D world
    3. Camera
    4. Navigation
    5. Writing code to modify scenes and transformations
    6. Multiple viewports to display one world
  5. User interface
    1. Text and fonts
    2. Customize loading image
    3. Custom drawn 2D controls: player HUD
  6. Editor
    1. Custom Components in Editor
  7. 2D games
    1. Sprite sheets
    2. Images
    3. How to render 2D images/sprites
  8. Physics
  9. Sound
    1. OpenAL
    2. FMOD
  10. Persistent data (user preferences, savegames)
  11. Save screen (screenshot)
  12. Network, downloading and using URLs
  13. Logging
  14. Cross-platform (desktop, mobile, consoles...) projects
    1. Data directory
    2. CastleEngineManifest.xml
    3. Customize UI scaling, font, warmup cache by CastleSettings.xml
    4. Build Tool
  15. Platforms details
    1. Android
    2. Android FAQ
    3. Android Services (Google Play Games and many more...)
    4. iOS
    5. iOS Services (Apple Game Center and many more...)
    6. In-App Purchases (Android, iOS)
    7. Nintendo Switch
    8. macOS
  16. Optimization
    1. Occlusion Query
    2. Profiling Using Valgrind
    3. Detecting Memory Leaks Using HeapTrc
  17. Making rendering prettier
    1. Bump Mapping (Normal Maps)
    2. Background (skybox, sky and ground)
    3. Fog
    4. Blending
    5. Color Space (Gamma Correction)
    6. Alpha Bleeding
  18. Use engine inside Lazarus form using TCastleControl
  19. Automatic Builds (Continuous Integration and Delivery)
    1. GitHub Actions (automatic builds for GitHub projects)
    2. GitLab CI/CD (automatic builds for GitLab projects)
    3. Docker (easily get CGE, compilers, texture compression tools)
    4. Jenkins (automatic builds by your Jenkins server)
  20. Miscellaneous
    1. Which way is up?
    2. Transformation hierarchy
    3. CastleWindow Backends
    4. Threads
    5. Compiling from source
    6. Supported compilers and IDEs
    7. Coding Traps
    8. Units Map
    9. fpcupdeluxe
    10. FpMake and FpPkg
    11. License
  21. Helping in engine development
    1. Donate
    2. Roadmap
    3. Coding Conventions
  22. Deprecated: Utilities for typical 3D games
    1. Overview
    2. Loading game level
    3. Player
    4. Defining creatures and items
    5. Using creatures and items
    6. Extending creatures and items classes
 
Manual