Skip to main content

最佳实践

CyanTriggers 基于 Udon,有一些可以同时适用于 Udon 和 CyanTriggers 的最佳实践。

在创建自定义 Udon 事件时,建议为所有事件名称添加下划线前缀(例如:“_MyCustomEvent”)。此举可有效防止意外调用联网事件,即使在网络广播场景中依然适用。这是因为修改后的客户端可能调用任何事件作为联网事件,即使您从未计划将其联网。

使用 CyanTrigger 自定义事件时,如果自定义事件位于同一 CyanTrigger 上,请优先使用变量“This CyanTrigger”。这将优化后台程序性能。

请谨慎使用 Update 事件,避免在其中执行大量运算,以免造成延迟。虽然某些操作需要在更新循环中执行,但我们鼓励您采用基于事件驱动的设计,仅在特定输入触发时执行相关操作。

切勿在 Update 事件中调用网络事件,这会浪费带宽。请重新设计程序逻辑以避免这种情况。

将 CyanTrigger 添加到场景时,最佳实践是将其放置在一个空的 GameObject 上,避免添加其他组件。UdonBehaviour.cs 组件包含许多 Unity 回调函数,即使未实现这些函数,Unity 也会调用它们。例如,如果将 CyanTrigger/UdonBehaviour 附加到包含渲染器的 GameObject 上,则 Unity 将在每一帧渲染时调用 OnRenderObject 函数。少量事件的调用影响可能微不足道,但如果数百个对象触发此类事件,则性能影响将变得显著。其他许多事件也可能引发类似问题。建议您仔细阅读 Unity 官方文档中关于 MonoBehaviours 的内容,了解潜在的性能问题。