decentraland / decentraland/godot-explorer

Implement Smart Wearables (Portable Experiences 2.0) on mobile

Open
#2,437 0 comments 0 reactions 0 assignees View on GitHub
claw-created enhancement mobile need definition triage
Dominant language
Rust
Stars
18
Forks
19
Avg merge
4d 2h
Merged PRs (30d)
43

Description

## Description

Smart Wearables (Portable Experiences 2.0) are not currently supported on mobile. When a Smart Wearable is equipped, the wearable's scene code (a Portable Experience) should execute; when un-equipped, execution should stop. This feature is fully implemented on Desktop (Unity client) and needs to be brought to mobile (Godot client) for feature parity.

## Requirements (mirrors Unity implementation)

- Main implementation: equipping a Smart Wearable starts its scene code (PEX); un-equipping stops it
- Scene flag to disable Smart Wearables within a given scene
- `/killpx` chat command support + `getPortableExperiencesLoaded`
- Wearable badge in the inventory/backpack UI marking items as Smart Wearables
- Backpack filter to show only Smart Wearables
- Sidebar/HUD icon indicating how many Smart Wearables/PEX are currently active
- Authorization prompt before running scene code, listing the SDK features requested; if denied, scene code doesn't run (wearable still shows as equipped)
- `kill()` SDK function support for Smart Wearables
- Testable in Local Scene Development mode (`npm run start`)

## Unity Reference Implementation

- Master ticket: decentraland/unity-explorer#5431 — "Smart Wearables Implementation" (requirements checklist)
- Shape Up doc: decentraland/unity-explorer#5316 — "Shape Up: Smart Wearables"
- Main feature PR: decentraland/unity-explorer#5381 — "feat: smart wearables"
- Follow-up fixes/hardening:
- decentraland/unity-explorer#6201 — fix: smart wearables startup errors
- decentraland/unity-explorer#6272 — style: fix backpack item 'smart' tag
- decentraland/unity-explorer#6500 — fix: clear smart wearable cache
- decentraland/unity-explorer#6544 — fix: Smart wearable crash
- decentraland/unity-explorer#8029 — fix: smart wearable metadata is null
- decentraland/unity-explorer#8586 — fix: outfit equip race condition + UX update

## Notes

- Smart Wearables run as Portable Experiences, so mobile support depends on/relates to the existing PEX runtime; scope should account for mobile performance budgets (see #2402 mobile asset/perf guidelines) since scene code from arbitrary user-published wearables will run alongside the current scene.
- Suggest scoping a definition/spike phase first given the number of Desktop sub-components (badges, filters, auth prompt UI, sidebar icon) before full implementation.

---
Requested by Rodri via Slack

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.