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: