You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Feature parity: import getConnectedPlayers() from '~system/Players' from kernel-api-rpc
get a full list of players currently in the scene
Feature parity: import getPlayersInScene() from '~system/Players' from kernel-api-rpc
player position / feetPosition / worldPosition & rotation in eurler & quaternion
Feature parity: PlayerEntity.Transform
player data: name, id, publicKey, hasConnectedWeb3, avatar (wearables, bodyshape, skin color, snapshots, etc), version
Feature parity: import { getPlayerData } from '~system/Players' from kernel-api-rpc
same data for any nearby player by ID (from renderer)
Feature parity: import { getPlayerData } from '~system/Players' // with { userId } as param from kernel-api-rpc
same data for any player by ID (from catalysts) (use fetch)
Ok
get decentraland time
Feature parity: import { getDecentralandTime } from '~system/EnvironmentAPI' from kernel-api-rpc
get player realm, server URL, server name
Feature parity: import { getCurrentRealm } from '~system/EnvironmentAPI' from kernel-api-rpc
get player platform (desktop / browser)
Feature parity: import { getPlatform } from '~system/EnvironmentAPI' from kernel-api-rpc
get active portable experience
Feature parity: import { getPortableExperiencesLoaded } from '~system/PortableExperiences' from kernel-api-rpc
get player's current camera mode
Feature parity CameraEntity.CameraMode component
Scene data:
Fetch full metadata, including parcels, spawnpoints, title, tags, etc
Feature parity: import { getParcel } from '~system/ParcelIdentity' from kernel-api-rpc
Events
All these events were found in the repositories js-sdk-toolchain@6.x.x, unity-renderer, kernel and posix.
The ones used by the ECS6 are the actually that need to have a fallback for the feature parity.
Full Feature parity checklist
These are all the features currently available in SDK 6, that we should support on SDK7
Definitions
Transform.getMutable(PlayerEntity).position
#356Base components
AUDIO_SOURCE
#405AUDIO_STREAM
#406NFT_SHAPE
#415TEXT_SHAPE
#414BOX_SHAPE
#411CYLINDER_SHAPE
#410SPHERE_SHAPE
#412PLANE_SHAPE
#413CONE_SHAPE
#416ANIMATOR
&ANIMATION
#404AVATAR_ATTACH
#407AVATAR_MODIFIER_AREA
#408CAMERA_MODE_AREA
#418BASIC_MATERIAL
&PBR_MATERIAL
#420BILLBOARD
#409CameraMode
andPointerLocked
state as components to scene #395TRANSFORM
#403MESH_RENDERER
#426MESH_COLLIDER
#435GLTF_CONTAINER
#417 and GltfContainer component #367AVATAR_SHAPE
#421AVATAR_TEXTURE
#419Special components
PointerLocked
componentCameraMode
andPointerLocked
state as components to scene #395CameraMode
component (first, third, distance to player)CameraMode
andPointerLocked
state as components to scene #395Entities
Observables
player connected observable (other players) player disconnected observable (other players)
onPlayerDisconnectedObservable
andonPlayerConnectedObservable
(ECS6)player entered scene observable (any player) ### player left scene observable (any player)
onEnterSceneObservable
andonLeaveSceneObservable
(ECS6)player changes camera mode observable (current player)
player plays animation observable (current player)
onPlayerExpressionObservable
(ECS6)Current player clicks on another player observable (includes userId, & ray data)
onPlayerClickedObservable
(ECS6)player locks/unlocks cursor observable (current player)
player goes idle/returns from idle observable (current player)
player changes profile observable (any player) (includes name, wearables list, etc)
onProfileChanged
(ECS6)scene finished loading observable
onSceneReadyObservable
(ECS6)videoTexture changed state observable (playing/paused/etc)
onVideoEvent
(ECS6)player changes realm or island observable
onRealmChangedObservable
(ECS6)use message bus
MessageBus
Message Bus #454Data: player, scene, environment, and others
get a full list of connected players
import getConnectedPlayers() from '~system/Players'
fromkernel-api-rpc
get a full list of players currently in the scene
import getPlayersInScene() from '~system/Players'
fromkernel-api-rpc
player position / feetPosition / worldPosition & rotation in eurler & quaternion
player data: name, id, publicKey, hasConnectedWeb3, avatar (wearables, bodyshape, skin color, snapshots, etc), version
import { getPlayerData } from '~system/Players'
fromkernel-api-rpc
same data for any nearby player by ID (from renderer)
import { getPlayerData } from '~system/Players' // with { userId } as param
fromkernel-api-rpc
same data for any player by ID (from catalysts) (use fetch)
get decentraland time
import { getDecentralandTime } from '~system/EnvironmentAPI'
fromkernel-api-rpc
get player realm, server URL, server name
import { getCurrentRealm } from '~system/EnvironmentAPI'
fromkernel-api-rpc
get player platform (desktop / browser)
import { getPlatform } from '~system/EnvironmentAPI'
fromkernel-api-rpc
get active portable experience
import { getPortableExperiencesLoaded } from '~system/PortableExperiences'
fromkernel-api-rpc
get player's current camera mode
Scene data:
import { getParcel } from '~system/ParcelIdentity'
fromkernel-api-rpc
Events
All these events were found in the repositories
js-sdk-toolchain@6.x.x
,unity-renderer
,kernel
andposix
.The ones used by the ECS6 are the actually that need to have a fallback for the feature parity.
Used by ECS6 (js-sdk-toolchain branch 6.x.x)
Ticked means it's tracked.
Other functionalities:
Definition: Teleport is now handled via
Transform.getMutable(PlayerEntity).position
#356remove events entirely?
Helpers:
UI Support #424
Docs
The text was updated successfully, but these errors were encountered: