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
These are all features that have been asked by the community, some of them many many times.
This list is not prioritized, it's ordered by component in the SDK. Some of these features might not be feasible or might be better resolved via some workaround, it's still valuable to keep track of the fact that creators would like to have these.
All Shapes
Flip normals inside-out
Shape.getBoundingBox() to fetch the dimensions and positions of vertices of a bounding box of an entity
More primitives: torus, capsule, “ramp” (angled square surface, very used in Roblox)
Separate UV values on the different layers of the material, for example alpha channels or a lightmap (today only 1 UV layer can be set for all layers of the material)
Set custom reflection images on materials
Support gif textures (not just as NFTs)
Turn off shadows from other entities casted onto material
Turn off casting shadows onto other entities
Turn off ambient occlusion
BasicMaterial
AlphaTexture support
Texture
Use consistent orientation as VideoTexture
VideoTexture
Use consistent orientation as Texture
Read subtitle track of a video stream. Can be used to parse & control scene events in sync with video.
Get properties of a video file: duration, size, etc
Allow videos on UI elements
Animator
More control over animations: start from x frame, loop between x and y frames clip.play(start, end),
Event on animation end. Also events on arbitrary moments of an animation.
When a non-looping animation finishes playing once, the .playing parameter should be set back to false.
Read current animation progress as value from 0 to 1
Click distance for 3rd and 1st person calculated consistently (currently, 3rd person distance calculated from camera)
Whenever our settings allow for customized key mapping: UI hints match chosen keys
Properties for mouse-over highlighting. To dissable highlight, or to highlight another entity instead.
Billboard
Modifier areas
Debug mode to display area volumes in preview
Avatar modifier area to turn off player FX sounds, or to even add custom sounds (like footsteps on snow, or on water, etc)
Disable jumping in a region
Block player from walking or moving
Avatar modifier area to replace avatar default locomotion animations (eg: skate instead of running)
Change the strength of gravity in a region, maybe also friction amount …maybe we need a “friction” component, or property in materials or something (?)
Area to control voice chat, making exceptions for certain players. Eg: in a classroom, only the teacher can speak, but then allows others to speak if they raise their hands, or when opening the floor for questions.
Other things that aren’t components (at least not today)
Access the bones in a GLTF and parent child entities to a specific bone, to match animations
Scene root entity (?)
Know the resolution settings of the player, draw distance, etc
Allow the scene to know if you’re in mainnet or ropsten
Have a rotation field in scene.json to rotate the whole scene easily or use the engine.rootEntity (not currently working)
Method to get scene limit usage & available resources (used to exist in Babylon) ex: only add another entity if the triangles I have left are enough and won’t go over the max
Only whitelist certain users to use voice chat in a scene, or give them higher volume than others (for conferences, shows, etc)
Avatar entity (?)
Play custom avatar animations
Event or state for when player changes acceleration (jump/fall)
Event or state for when player stops standing on ground/touches ground
Event or state for when player opens backpack or settings menu
Apply a vector force on the avatar (to fly, be pushed, etc)
Read positions of other players in the scene
Attach to avatar bones (arm, foot, etc)
Read a velocity vector, with player's current speed if moving
Change player speed
Change player walking sounds
Prevent jumping
Prevent movement at all
Disable default locomotion animations, allow to play custom
Scale down entity (in Worlds only?)
Camera entity (?)
Camera.forward -> return direction vector (same for up, right, left, down, back)
Move the camera cinematically to specific positions & angles, for NPC cinematics, side-scrolling games, etc
Attach camera to entity, then move entity freely
Virtual Camera can turn based on mouse movement
Virtual Camera can orbit a custom entity with mouse movement
Inputs
Custom keyboard input events, be able to listen to any keyboard key
Ray tracing
Debug mode in preview, to display trajectory and hit points
Scene Loading Feedback: Be able to toggle showing/hiding loading assets while the scene loads to avoid users seeing meshes of the scene that hasn’t finished loading
Disposing mechanisms: destroy component? destroy entities? Be able to destroy everything that we are able to create, for better memory/resources management
State machine component. Maybe as part of a library. Maybe various variations: fsm, stack state machine, moore state machine etc
Display a toast message easily
Post to the chat window
Build underground, go below y=0 height
Foreign entities: Scenes can read (or write??) the components of another scene, if given permission somehow
Capture voicechat audio data (to have conversations w AI, also audio analysis)
Viewport textures (capturing cameras from another angle - portals, mirrors, big screens for shows, etc)
Control time of day dynamically (not just in worlds)
Customized loading screen - show specific hints and images when loading into my scene
More complete stats for content creators about player engagement
Asset merger: explicitly tell multiple 3D models should be treated by the renderer as one, with a single draw call
Blend Shape component
When FPS in preview is low, show warning with link to doc about scene limitations
The text was updated successfully, but these errors were encountered:
These are all features that have been asked by the community, some of them many many times.
This list is not prioritized, it's ordered by component in the SDK. Some of these features might not be feasible or might be better resolved via some workaround, it's still valuable to keep track of the fact that creators would like to have these.
All Shapes
Shape.getBoundingBox()
to fetch the dimensions and positions of vertices of a bounding box of an entityBox Shape
Plane Shape
Sphere/Cylinder/Cone
GLTFShape
Event when a 3d model finishes loadingTextShape
### MeshCollider
AvatarShape
AvatarShape official supportNFTShape
Support Polygon NFTsMaterial
Turn off shadows from other entities casted onto materialBasicMaterial
Texture
Use consistent orientation as VideoTextureVideoTexture
Use consistent orientation as TextureAnimator
.playing
parameter should be set back to false.AudioSource
Change sound's pitchPause a sound and resume it from where it was pausedPlay a sound starting and ending on arbitrary points in the sound, instead of the whole lengthEvent or callback when a sound finished playing. Also events on arbitrary moments of sound.AudioStream
Transform
Get the full transformation matrix from a Transform (maybe set it too)OnPointerDown /up
Billboard
Modifier areas
Disable jumping in a regionBlock player from walking or movingOther things that aren’t components (at least not today)
Parenting
Attach an entity to an avatar boneScene root entity (?)
Avatar entity (?)
Play custom avatar animationsRead positions of other players in the sceneAttach to avatar bones (arm, foot, etc)Prevent jumpingPrevent movement at allCamera entity (?)
Move the camera cinematically to specific positions & angles, for NPC cinematics, side-scrolling games, etcAttach camera to entity, then move entity freelyInputs
Ray tracing
Handle layer groupsUI
Pointer-up event (to allow dragging of elements)UIInputText : more configurable, change imput text, background color, etcsimple "Button" componentlossy UI updates, so that moving a UI element every frame isn't read as a buffered and delayed sequence of updatesisPassword
property In Input text, so that when typing the characters show as masked ****Tween
Specify start position (optional), ending position, speed and curve type. Movement of entity overrides transform for that period of time.Other
Event when specific 3D model is loadedDisposing mechanisms: destroy component? destroy entities? Be able to destroy everything that we are able to create, for better memory/resources managementThe text was updated successfully, but these errors were encountered: