SDK Release Notes: Version 2021.7.7.13756

Here are the release notes for the SDK version 2021.7.7.13756.

We have around a hundred scripting additions, fixes and improvements in this release. We've added support for changing uploaded UI element colours to match application via Lua script. Tooltips can now be added to any UI element automatically. Also added the SimpleStateMachine for creating interactive content without scripting. The Editor Pack will now check for lightmaps for export if baked lighting is detected in the scene.

That's just some of the highlights, the full list is below.

Features

  • Added new Lua functions with options for Audio Reactive Light/Animation/Material/Transform/Particle components.
  • Server scripts now have support for Script libraries (requires processing server change to be deployed)
  • Added support for changing uploaded UI element colours to match application via Lua script.
  • Added support to disable crouching/flying/jumping/running via script.
  • Added Space.TypeName(obj) to scripting.
  • Added SScript.Session to scripting. Returns a unique ID each time the viewer is started which remains consistent throughout the viewer during that time.
  • Added SShared.SetSuperGlobal / GetSuperGlobal - similar to SetGlobal/GetGlobal except these values will persist between scenes when teleporting.
  • Added OnApplicationQuit event for Lua.
  • Added SAvatar.SynchroniseState() which forces a network synchronization of the player state: It is useful in cases when you have blocked avatar movement or similar events which may block the avatar from transmitting a script-driven update. Only works once per 5 seconds.
  • Added SScript.TrackingAllowed(string key) & SScript.TrackingRequest(string key, string reason, Action<bool> callback); only usable on white label grids. Handles GPDR & similar prompts.
  • Added Space.Input.CursorInUI
  • Added onComplete Closure to SWebservice.GetImage. Added a way to get the Width and Height of Texture2D
  • Added SAvatar.TeleportToNextEvent, so the creator can Teleport user to the next event which will start in a defined time.
  • Added StartRecording ,StopRecording and StringToHash. Added a function transfer message based on SignalR, for sharing messages between different regions/shards.
  • Added Space.Grid to Lua SDK for accessing grid information on white labels.
  • Added AttachmentHelper to Lua API.
  • Added Space.Chat.JoinGridVoice
  • Added SAvatar.JobTitle and SAvatar.Company. AnalyticsEvent and SAnalyticsEvent. Added Space.Version which returns the revision number of a release.
  • Added OpenDevicePicker in SUI and Furioos.
  • Added SGameObject.OnParticleCollision.
  • Added SVideos for allowing videos to be uploaded to Sinespace.
  • Added SUIInputField.ActivateInputField() SUIInputField.DeactivateInputField() SUIInputField.Select()
  • Added a method and Lua interface to link playerID and VirtualGoodID.
  • Added Space.Scene.OnEditModeAdd and Space.Scene.OnEditMoveRemove. BlockMovement status would memorise the placement of the SAvatar object.
  • Added the Lua interface for GetCurrentAnimatorStateInfo
  • Added a new class for AnimatorStateInfo. Fixed null reference to make STween usable.
  • Added Cancel() function to stop a running tween in STween.
  • Added SGameObject.AddAnimator(). Fixed an issue where OnStateChange event in EmbeddedVideo does not pass the correct new state when transitioning from Stopped to Play
  • Added SGraphicRaycaster and SUIRaycastResult for raycasting UI elements.
  • Added StartFly and EndFly for player avatar control.
  • Added SAvatar.Gender which returns "Male" or "Female".
  • Added Scripting Resources component for attaching resources to objects without a runtime.
  • Added MouseX and MouseY in SInput.Enable to read the right stick value with these properties.
  • Added SGameObject.Networking to Lua SDK to access new SimpleNetworking component.
  • Added Boolean as option to ScriptDataVariableType and PublicScriptVariableType
  • Added an Avatar property to Clothing Item Settings for replacing the built-in animation skeleton layout in built-in-human avatars.
  • Added SContentSizeFitter. Added EnableInput API for block or enable browser's input.
  • Added WASM support for scripting.
  • Added C headers for scripting API which can be used with emscripten to compile WASM which can be loaded by the script engine.
  • ToolTipHint component added to allow tooltips to be added to any UI element automatically. Includes Lua scripting support.
  • Added an option in the scene save settings feature where users can select whether the fog will affect the skybox. The default will be false.
  • Added more animation Override slots for cloth items.
  • Added a new component "Attachment Control" - this component is designed to be used on Attached clothing items, it will show or hide the item, depending on whether it is attached to the player. This can be used, for example, to hide canvases that should only be seen by the player who owns the item.
  • Quest Designer: Added an option in quest designer which can show other avatars in quest conversation
  • Browser Surface: Added mute/unmute function for BrowserSurface, and a Lua function for the same.
  • Added an option for ultra skin for avatars and the option to activate it.
  • Creator Settings: Added a warning if you delete the Editor Default Resources folder in the editor pack
  • Added FrameCount and IsPlaying in SEmbeddedVideo.
  • Added Space.Grid.PlayerIsAdmin for grid admin, different from region admin. White Label Only.
  • Added support for SGameObject.UILayout to modify layout groups from Lua. Added ShowSearch, ShowMailButton, and ShowClock in SUI. Add Loop and ClearRenderTexture for MediaPlayer.
  • Enabled OnParticleTrigger() in Lua SDK.
  • Added SParticle to control each particle.
  • Added Set/GetTriggerParticles in SParticleSystem.

Improvements

  • ObjectRef public variables / data variables return as SGameObject in Lua now.
  • Added the SimpleStateMachine component for creating interactive content without Lua scripts. Also accessible from scripts via Object.StateMachine.
  • Added the ScriptingEvents component for attaching Unity events to objects without a scripting runtime. Also accessible from scripts via Object.Events.
  • SChat.JoinVoice can now create spatialized zones.
  • SDialogues.OpenURL takes optional newTab parameter.
  • Added Script support for VoiceZone Components
  • Added OnUploadStart event in SPhotos and modified some code to fit SVideo.
  • Added Audio Source Lua API. (PlayClipAtPoint)
  • Added a Lua function to call the enabled region list.
  • Tweaked LUA API for LineRenderer using a 0-based index. If ScriptingRuntime's index is Lua Standard, the index will be 1-based.
  • White label scripting APIs can now be toggled on/off on a per-grid basis for those not wanting to enable them.
  • The Editor Pack will now propose to set up lightmaps for export if baked lighting is detected in the scene; prior to uploading the scene.
  • Hardened script runtime against accidental non-play mode execution
  • Changed the annotation of SaveClothingBaseInternal in order to make the ClothingItemSetting component support the multi-object editing feature.
  • When previewing the scene in Unity, it can now generate the users' avatar.

    Fixes

    • Fixed scripts showing the wrong name in the System chatbox when calling Space.Log during startup.
    • Fixed an issue where Space.Input.MouseLook = true is not working
    • SWebService.GetImage source security hole is now fixed
    • SNetwork.Chat.JoinChat should now properly open a chat tab.
    • Fixed an issue where SSeat.InUse could incorrectly return 'false'.
    • SGameObject.StateMachine and SGameObject.Events should now work in Lua scripting.
    • Fixed an issue where avatars can move while playing animations by Lua.
    • Fixed an issue where images remained grey while loading on SWebService.GetImage
    • Fixed an issue with SharedPlayback being broken when using UMP to play videos.
    • Space.Scene.Find / FindID should no longer cause an exception that terminates the script if the object is not found. SUI.ShowActivityPanel should work now.
    • Chat channel joined via SChat can now exit normally when the user changes region.
    • Space.LoginTime will now return the total seconds since the user logged in.
    • ResetOutfitToTemplate will now refresh the inventory correctly.
    • Space.Log will no longer write to the player log on the live server, only the preview server. This is to minimize lag caused by synchronous log writes.
    • Space.Camera.MainCamera should now return null if the main camera is not initialized, instead of causing a fatal exception.
    • Fixed a Lua script crash when reading the custom tag. User-defined tags are unsupported.
    • Fixed a bug in SBrowserSurface, where the zoom function was not working in the BrowserSurface component. Also fixed an issue with SUISlider.Direction.
    • Fixed an issue with packaging custom .asset mesh files.
    • Fixed an issue with mesh preservation failing on temporary assets
    • Fixed an issue where emission materials on uploaded contents would have their shaders replaced.
    • Removed SNetwork.ReconnectGlobalNetwork and SNetwork.OnGlobalNetworkDisconnect
    • Fixed an issue with SChat generating invalid chat channel names.
    • SGameObject.AddClickable will now return an existing Clickable if it already exists.
    • Fixed an issue where an item cannot be uploaded if a particle is added to a virtual good.
    • Fixed an issue where two blank spaces appeared in the auto-generated Virtual Good name.
    • Fixed Steps in BranchedQuestWindow being dragged out of view, this will no longer be possible.
    • Fixed an issue in Branched Quest Window, where "Next Step" set to "End" won't automatically link to the newly created step.
    • Fixed Parts of Conversation in Quest Window not being visible on the screen.
    • Attachments can no longer be uploaded as Rigged Clothing if they have been previously attached to a bone.
    • Materials will no longer disappear when using Convert to Reweighting.
    • Fixed an issue where attachment ClothingItem doesn't work with the clothing previewer component

    Written by Hannah on Wednesday October 13, 2021

    Permalink Category: releases - Tags: editor, editor-pack, pack