Author: 0x83f9192d59b393c8789b55d446e5d4a77075c820
Update Status: Late
Project Health: On Track
Introduction
Welcome to the fourth grant update. This team has the primary goal of developing an explorer version using two different technologies:
- Bevy targeting to Desktop: featuring experimental and developer features to enhance the creator’s possibilities
- Godot targeting to Mobile and VR: pointing to have a reliable and production-ready explorer.
Highlights
In February, we implemented the Foundation approach for communications in the Bevy Explorer to test and evaluate documentation limitations. Additionally, we completed the first iteration of asset optimization for Mobile and VR in Godot. Lastly, we’ve made significant progress on the Backpack UI Scene for Bevy Explorer. All the details are provided below.
Bevy (Desktop)
Features
- switch to native tls to avoid windows certificate issues
- update comms to allow communication with explorer alpha client
- code / decode MovementCompressed messages
- use velocity and falling data from movementCompressed to better inter/extrapolate foreign avatar positions
- use gatekeeper to resolve and connect to scene rooms
- echo chat and scene messages to island and scene room
- allow scenes to target particular recipients for binary data with
peerData
- try to fetch profiles from catalyst
- use livekit metadata if exists to resolve home catalyst
- add RealmInfo component to scene root
- parse realm/about map data and scene_local_parcels to establish scene bounds
- code / decode MovementCompressed messages
- add ui dev features
- add ui toggle button (pageup)
- add ui scene hot reload and inspect features (
--ui-preview
) - add system ui
setAvatar
- give all permissions to system ui scene
- improve file cache
- cache all remote requests (not just ipfs requests)
- clear old cache items automatically above a given size
- add user setting for cache size
Bugfixes
- fix ui color conversions
- disable imposters by default to avoid querying for 90k scenes on startup (will re-enable once we have query-all-parcels api)
- correct swapped serif / sans-serif fonts
- fix impost binary missing resources
- misc wearable issues
- fix 100 limit on owned wearables
- fix
hand_wear
hidden byupper_body
- add
exotic
rarity - fix wearables not loaded when missing
name
ordescription
in metadata
Godot
- Finish Asset Optimization Pipeline and working
- Fork Godot completetly and use binaries from that Fork for iOS/Android/Windows/Linux/MacOS
- Fix Godot bug with loading too many zipped godot packages
- Implement World Time API on SDK and also add a setting for changing the local time (for Skybox)
- Fix ignoring SSL errors on Android (which was triggering a warning on Play Store)
- Change profile image request to use the new endpoint format
- Add docker image for building Android with Rust on Docker HUB
- Implement new Skybox, Bloom and Environment
- Fix lighting issues
Blockers
Next steps
We will be working on:
- Finish Backpack integration in (UI Scene, Bevy)
- Improve avatar animation map (Godot)
- Test asset pipeline in Mobile (Godot)
- Spike in UI Landscape/Portrait (Godot)
- Implementing imposters pipeline generation (Bevy)
- (Experimental SDK feature) Local storage (Bevy)
- add local storage for scenes
- todo: allow user to clear, manage size limits, key from realm/parcel
Additional notes and links
- Join us on our Discord server: Decentraland DAO Explorers
- Public home page to get links: https://dclexplorer.com/
- X Account: https://twitter.com/DclDaoExplorers/