Skip to content

feat: add look_at_entity field to Billboard component#389

Open
decentraland-bot wants to merge 1 commit intomainfrom
feat/billboard-look-at-entity
Open

feat: add look_at_entity field to Billboard component#389
decentraland-bot wants to merge 1 commit intomainfrom
feat/billboard-look-at-entity

Conversation

@decentraland-bot
Copy link
Copy Markdown

Summary

  • Adds an optional look_at_entity field (uint32) to the PBBillboard protobuf message
  • When set, the Billboard rotates to face the world-space Transform position of the specified entity rather than the camera
  • Fully backward-compatible: omitting the field preserves all existing camera-facing behavior

Behavior

Scenario Result
look_at_entity not set Billboard faces the camera (existing default behavior)
look_at_entity set to a valid entity with a Transform Billboard faces that entity's world-space position
look_at_entity set to a non-existent or Transform-less entity Billboard falls back to facing the camera

The billboard_mode field continues to control which axes (X/Y/Z) are affected by the rotation, regardless of whether look_at_entity is set.

Changes

  • proto/decentraland/sdk/components/billboard.proto: Added optional uint32 look_at_entity = 2; with comprehensive inline documentation

Related PRs

  • SDK: decentraland/js-sdk-toolchain — adds lookAtEntity to the TypeScript API surface and tests
  • Explorer: decentraland/unity-explorer — implements the entity-lookup logic in BillboardSystem

🤖 Created via Slack with Claude
Requested by Nico Earnshaw via Slack

@github-actions
Copy link
Copy Markdown

Test this pull request

  • The @dcl/protocol package can be tested in scenes by running
    npm install "https://sdk-team-cdn.decentraland.org/@dcl/protocol/branch//dcl-protocol-1.0.0-24530609736.commit-d60a3e6.tgz"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant