-Billboard         The use of sprites in a 3D environment
Print

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0-9


Billboard - A flat square polygon (2 triangles) for high speed displaying of 2D textures. Mostly the face points to the camera. Often it's also called sprite, although this not right in historical context (see Wikipedia article(external link) and sprites on C64(external link)).

To make one, you first have to make a BillboardSet. Then, the billboards can be added to it on a given position. The BillboardSet is a MovableObject and should therefore be added to a SceneNode.

Billboards can be used e.g. to create a HUD (heads up display) for characters.

 

Types of Billboard:

 

  • BBT_POINT:
    Standard point billboard (default), always faces the camera completely and is always upright

 

  • BBT_ORIENTED_COMMON:
    Billboards are oriented around a shared direction vector (used as Y axis) and only rotate around this to face the camera

 

  • BBT_ORIENTED_SELF:
    Billboards are oriented around their own direction vector (their own Y axis) and only rotate around this to face the camera

 

  • BBT_PERPENDICULAR_COMMON:
    Billboards are perpendicular to a shared direction vector (used as Z axis, the facing direction) and X, Y axis are determined by a shared up-vertor

 

  • BBT_PERPENDICULAR_SELF:
    Billboards are perpendicular to their own direction vector (their own Z axis, the facing direction) and X, Y axis are determined by a shared up-vertor

 

Example

 
Image

On right side is an example usage (from the Ogre game APOX).

A billboard used for a green circle marker. The face doesn't point to the camera - the billboard is parallel to the terrain. It's not rendered on top (behind the helicopter model). For this the RenderQueue was modified and maybe some material settings were changed (Depth Check ON/OFF, Depth Write ON/OFF, etc.). The usage of billboards supports high performance. An alternative would be to use Projective Decals which renders an additional layer to a texture. (But this would be slower, when you need to update its size/position for each frame.)

 

See Also
Image

 

 

 
See also: Sprite (computer graphics) (Wikipedia)(external link)


Contributors to this page: IgnisInCaelum41 points  , spacegaier3733 points  , sarcacid623 points  , jacmoe111451 points  and Beauty5965 points  .
Page last modified on Tuesday 09 of August, 2011 21:34:58 GMT by IgnisInCaelum41 points .


The content on this page is licensed under the terms of the Creative Commons Attribution-ShareAlike License.
As an exception, any source code contributed within the content is released into the Public Domain.