The purpose of this tutorial is to serve as both a tutorial and a mini-manual on how to use Bling's features. All of the code described in this tutorial is in the Tutorial project of the distribution. To run the code, make sure you set the Tutorial project as the start project. The tutorial is organized as follows:
- Introduction: an overview of Bling's concepts and how to get started.
- Declarative constraints: use Bling's support for declarative constraints to easily create custom dynamic layouts and user interface behavior.
- Lighting example: example of cheap image-based lighting and layout in Bling.
- Pixel shader effects: write custom effects that use the GPU to quickly transform a UI element's pixels on every frame.
- Multi-pass bitmap effects: write more involved custom effects that require multiple passes and can be used to implement diffuse effects (coming soon!).
- UI Physics: incorporate a physics engine into your UI! Bling's experimental support for physics is very flexible and designed specifically to support productive natural user interfaces (as opposed to games).
- Geometry: having fun with geometric reasoning!