SDK 版本:2021.7.7.13756
新增功能
- 新增了带有选项的 Lua 函数,用于音频响应式灯光/动画/材质/变换/粒子组件。
- 服务器脚本现在支持脚本库(需要处理服务器更改才能部署)。
- 新增通过 Lua 脚本更改已上传 UI 元素颜色以匹配应用程序的支持。
- 新增通过脚本禁用蹲下/飞行/跳跃/跑步的支持。
- 在脚本中添加了 Space.TypeName(obj)。
- 在脚本中添加了 SScript.Session。每次启动查看器时返回一个唯一 ID,在该查看器运行期间保持一致。
- 添加了 SShared.SetSuperGlobal / GetSuperGlobal - 类似于 SetGlobal/GetGlobal,但这些值在传送时会在场景之间持久保存。
- 为 Lua 添加了 OnApplicationQuit 事件。
- 添加了 SAvatar.SynchroniseState(),强制同步玩家状态的網絡同步:在您阻止头像移动或类似可能阻止头像传输脚本驱动更新的事件的情况下很有用。每 5 秒仅工作一次。
- 添加了 SScript.TrackingAllowed(string key) & SScript.TrackingRequest(string key, string reason, Action\<bool> callback);仅在白标网格上可用。处理 GPDR 及类似提示。
- 添加了 Space.Input.CursorInUI
- 在 SWebservice.GetImage 中添加了 onComplete 闭包。提供了一种获取 Texture2D 宽度和高度的方法
- 添加了 SAvatar.TeleportToNextEvent,以便创作者可以将用户传送到将在定义时间内开始的下一个事件。
- 添加了 StartRecording、StopRecording 和 StringToHash。添加了一个基于 SignalR 的消息传输函数,用于在不同区域/分片之间共享消息。
- 在 Lua SDK 中添加了 Space.Grid,用于访问白标上的网格信息。
- 在 Lua API 中添加了 AttachmentHelper。
- 添加了 Space.Chat.JoinGridVoice
- 添加了 SAvatar.JobTitle 和 SAvatar.Company。AnalyticsEvent 和 SAnalyticsEvent。添加了 Space.Version,它返回发布的修订号。
- 在 SUI 和 Furioos 中添加了 OpenDevicePicker。
- 添加了 SGameObject.OnParticleCollision。
- 添加了 SVideos,允许将视频上传到 Sinespace。
- 添加了 SUIInputField.ActivateInputField() SUIInputField.DeactivateInputField() SUIInputField.Select()
- 添加了一个方法和 Lua 接口来链接 playerID 和 VirtualGoodID。
- 添加了 Space.Scene.OnEditModeAdd 和 Space.Scene.OnEditMoveRemove。BlockMovement 状态将记住 SAvatar 对象的位置。
- 添加了 GetCurrentAnimatorStateInfo 的 Lua 接口
- 为 AnimatorStateInfo 添加了一个新类。修复了空引用以使 STween 可用。
- 在 STween 中添加了 Cancel() 函数以停止正在运行的 tween。
- 添加了 SGameObject.AddAnimator()。修复了 EmbeddedVideo 中 OnStateChange 事件在从 Stopped 过渡到 Play 时未传递正确新状态的问题
- 添加了 SGraphicRaycaster 和 SUIRaycastResult 用于对 UI 元素进行射线检测。
- 添加了 StartFly 和 EndFly 用于玩家头像控制。
- 添加了 SAvatar.Gender,它返回 "Male" 或 "Female"。
- 添加了 Scripting Resources 组件,用于将资源附加到没有运行时的对象。
- 在 SInput.Enable 中添加了 MouseX 和 MouseY,以通过这些属性读取右摇杆值。
- 在 Lua SDK 中添加了 SGameObject.Networking 以访问新的 SimpleNetworking 组件。
- 在 ScriptDataVariableType 和 PublicScriptVariableType 中添加了 Boolean 作为选项
- 在服装项目设置中添加了一个 Avatar 属性,用于替换内置人类头像中的内置动画骨骼布局。
- 添加了 SContentSizeFitter。添加了 EnableInput API 以阻止或启用浏览器的输入。
- 为脚本添加了 WASM 支持。
- 为脚本 API 添加了 C 头文件,可以与 emscripten 一起使用以编译可由脚本引擎加载的 WASM。
- 添加了 ToolTipHint 组件,允许自动为任何 UI 元素添加工具提示。包括 Lua 脚本支持。
- 在场景保存设置功能中添加了一个选项,用户可以选择雾是否会影响天空盒。默认值为 false。
- 为服装项目添加了更多动画覆盖槽。
- 添加了一个新组件“Attachment Control” - 该组件设计用于附加的服装项目,它将根据是否附加到玩家来显示或隐藏该项目。例如,这可用于隐藏只有拥有该项目的玩家才能看到的画布。
- 任务设计器:在任务设计器中添加了一个选项,可以在任务对话中显示其他头像
- 浏览器表面:为 BrowserSurface 添加了静音/取消静音功能,以及相应的 Lua 函数。
- 为头像添加了超精细皮肤选项以及激活它的选项。
- 创作者设置:如果在编辑器包中删除 Editor Default Resources 文件夹,则添加警告
- 在 SEmbeddedVideo 中添加了 FrameCount 和 IsPlaying。
- 添加了 Space.Grid.PlayerIsAdmin 用于网格管理员,不同于区域管理员。仅限白标。
- 添加了对 SGameObject.UILayout 的支持,以从 Lua 修改布局组。在 SUI 中添加了 ShowSearch、ShowMailButton 和 ShowClock。为 MediaPlayer 添加了 Loop 和 ClearRenderTexture。
- 在 Lua SDK 中启用了 OnParticleTrigger()。
- 添加了 SParticle 以控制每个粒子。
- 在 SParticleSystem 中添加了 Set/GetTriggerParticles。
- ObjectRef 公共变量/数据变量现在在 Lua 中返回为 SGameObject。
- 添加了 SimpleStateMachine 组件,用于在不使用 Lua 脚本的情况下创建交互式内容。也可以通过 Object.StateMachine 从脚本访问。
- 添加了 ScriptingEvents 组件,用于将 Unity 事件附加到没有脚本运行时的对象。也可以通过 Object.Events 从脚本访问。
- SChat.JoinVoice 现在可以创建空间化区域。
- SDialogues.OpenURL 接受可选的 newTab 参数。
- 为 VoiceZone 组件添加了脚本支持
- 在 SPhotos 中添加了 OnUploadStart 事件,并修改了一些代码以适应 SVideo。
- 添加了音频源 Lua API。(PlayClipAtPoint)
- 添加了一个 Lua 函数来调用已启用的区域列表。
- 使用基于 0 的索引调整了 LineRenderer 的 LUA API。如果 ScriptingRuntime 的索引是 Lua Standard,则索引将基于 1。
- 白标脚本 API 现在可以针对每个网格单独开关,以便那些不想启用它们的人。
- 如果在场景中检测到烘焙光照,编辑器包现在将在上传场景之前建议设置光照贴图以进行导出。
- 增强了脚本运行时以防止意外在非播放模式下执行
- 更改了 SaveClothingBaseInternal 的注释,以便 ClothingItemSetting 组件支持多对象编辑功能。
- 在 Unity 中预览场景时,现在可以生成用户的头像。
- 修复了在启动期间调用 Space.Log 时脚本在系统聊天框中显示错误名称的问题。
- 修复了 Space.Input.MouseLook = true 不起作用的问题
- SWebService.GetImage 源安全漏洞现已修复
- SNetwork.Chat.JoinChat 现在应该正确打开聊天标签页。
- 修复了 SSeat.InUse 可能错误返回 'false' 的问题。
- SGameObject.StateMachine 和 SGameObject.Events 现在应该在 Lua 脚本中工作。
- 修复了头像在通过 Lua 播放动画时可以移动的问题。
- 修复了在 SWebService.GetImage 加载时图像保持灰色的问题
- 修复了使用 UMP 播放视频时 SharedPlayback 损坏的问题。
- Space.Scene.Find / FindID 如果未找到对象,不再会导致终止脚本的异常。SUI.ShowActivityPanel 现在应该可以工作。
- 通过 SChat 加入的聊天频道现在在用户更改区域时可以正常退出。
- Space.LoginTime 现在将返回用户登录以来的总秒数。
- ResetOutfitToTemplate 现在将正确刷新库存。
- Space.Log 将不再写入实时服务器上的玩家日志,仅写入预览服务器。这是为了最小化由同步日志写入引起的延迟。
- Space.Camera.MainCamera 现在如果主相机未初始化,将返回 null,而不是导致致命异常。
- 修复了读取自定义标签时 Lua 脚本崩溃的问题。不支持用户定义的标签。
- 修复了 SBrowserSurface 中的一个错误,其中缩放功能在 BrowserSurface 组件中不起作用。还修复了 SUISlider.Direction 的问题。
- 修复了打包自定义 .asset 网格文件的问题。
- 修复了临时资产上网格保留失败的问题
- 修复了上传内容上的发射材料会被替换着色器的问题。
- 移除了 SNetwork.ReconnectGlobalNetwork 和 SNetwork.OnGlobalNetworkDisconnect
- 修复了 SChat 生成无效聊天频道名称的问题。
- SGameObject.AddClickable 现在如果已存在 Clickable,将返回现有的 Clickable。
- 修复了如果向虚拟商品添加粒子则无法上传该项目的问题。
- 修复了自动生成的虚拟商品名称中出现两个空格的问题。
- 修复了 BranchedQuestWindow 中的步骤被拖出视图的问题,这现在不再可能。
- 修复了 Branched Quest Window 中的一个问题,其中“下一步”设置为“结束”不会自动链接到新创建的步骤。
- 修复了 Quest Window 中对话的部分在屏幕上不可见的问题。
- 如果附件之前已附加到骨骼,则不能再作为 Rigged Clothing 上传。
- 使用 Convert to Reweighting 时,材料将不再消失。
- 修复了附件 ClothingItem 与服装预览器组件不兼容的问题。