Vuer

Billboard

The Billboard component wraps children so they always face the camera. This is ideal for:

  • Creating labels that are always readable
  • Building floating UI elements
  • Displaying sprites and icons
  • Making annotations visible from any angle

Basic Usage

A minimal example that creates a billboard with text:

from vuer import Vuer, VuerSession
from vuer.schemas import DefaultScene, Billboard, Text, OrbitControls

app = Vuer()

@app.spawn(start=True)
async def main(sess: VuerSession):
    sess.set @ DefaultScene(
        Billboard(
            Text(
                "I always face you!",
                key="billboard-text",
                color="orange",
                fontSize=0.1,
            ),
            key="billboard",
            position=[0, 0.5, 0],
        ),
        bgChildren=[
            OrbitControls(key="OrbitControls")
        ],
    )

    await sess.forever()

Key Parameters

Parameter Type Default Description
follow bool True Whether to follow camera rotation
lockX bool False Lock rotation on X axis
lockY bool False Lock rotation on Y axis
lockZ bool False Lock rotation on Z axis

Learn More

For detailed examples of using Billboard, see: