manuals.md 4.6 KB

Manuals {#manuals}

Quick start

Getting started - This is a short guide on how to create a fully functional Banshee application, aimed to get you up and running quickly, without going into too much detail.

User manuals

A complete set of manuals covering all major functionality provided by Banshee, starting with basics and slowly guiding you through more advanced concepts. This should be the primary entry point for new users.

  • Startup and main loop
  • Scene objects and components
  • Resources
    • Basics and import
    • Saving and loading
  • Utilities
    • Containers
    • Strings
    • Memory allocation
    • Smart pointers
    • Events
    • File system
    • Math utilities
    • Logging messages
    • Measuring time
  • Graphics
    • Windows
    • Cameras
    • Importing textures
    • Importing meshes
    • Materials
    • Rendering objects
    • Lighting
    • Image based lighting
  • Input
    • Input polling
    • Input events
    • Virtual input
  • Creating custom components
  • Serializing objects
  • GUI
    • Sprite textures
    • Basic setup
    • Elements
    • Layouts
    • Styles
    • Importing fonts
    • Localization
  • Audio
    • Importing audio files
    • Playing audio
  • Physics
    • Colliders
    • Physics mesh import
    • Triggers
    • Dynamic objects
    • Physics material
    • Character controller
    • Scene queries
    • Joints
  • Animation
    • Loading animation clips
    • Playing animation
    • Bones
    • Advanced animation
  • Advanced
    • Shaders
    • BSL syntax
    • Importing shaders
    • Surface & lighting shaders
    • Manipulating textures
    • Offscreen rendering
    • Creating meshes
    • Advanced startup
    • Advanced RTTI
    • Advanced resources
    • Prefabs
    • Cursors
    • Profiling

Developer manuals

A set of manuals covering advanced functionality intented for those wanting to extend the engine or tinker with the internals, rather than for normal users. You are expected to have read the user manuals first.

  • Architecture overview
  • Low level rendering API
    • Core thread
    • GPU programs
    • Non-programmable states
    • Geometry
    • Render targets
    • Drawing
    • Load-store textures
    • GPU buffers
    • Compute
    • Command buffers
    • GPU profiling
    • Working example
  • More utilities
    • Modules
    • Advanced memory allocation
    • Crash handling
    • Dynamic libraries
    • Flags
    • Any
    • Unit tests
  • Advanced materials
  • Threading
  • Plugins
  • Renderer
    • Renderer extensions
    • Creating a renderer plugin
  • Resources
    • Creating new resource types
    • Creating custom importers
  • Scripting
    • Exposing code to script API (automated)
    • Exposing code to script API (manually)
    • Interacting with the script runtime
    • Script objects
  • Extending the GUI system
  • Porting to other platforms
  • Code style
  • Quick reference