Unity3D:模拟类
推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生
模拟类
设备模拟器提供模拟类,可用于测试响应设备模拟器中特定于设备的行为的代码。
以下模拟类位于 UnityEngine.Device 命名空间中:
- 应用
- 屏幕
- 系统信息
这些模拟类具有与其常规 UnityEngine 命名空间对应项相同的成员。您可以在代码库中通常使用常规类的任何位置使用它们。没有性能影响,您可以在发布版本中使用它们。
在编辑器中,当设备模拟器处于活动状态时,模拟类将模拟模拟设备的特定于平台的行为;例如,Device.SystemInfo.operatingSystem 返回模拟设备的 Android 或 iOS 版本。
在生成的应用程序中,或者当设备模拟器未处于活动状态时,模拟类的行为与 UnityEngine 命名空间中的对应类具有相同的行为。
尽管模拟类具有与常规类相同的成员,但设备模拟器不会模拟每个行为。在 UnityEditor 中,设备模拟器不模拟的成员具有与其 UnityEngine 等效项相同的行为,这与平台无关。例如,设备模拟器不会模拟 Device.Screen.brightness。这意味着此成员具有与 UnityEngine.Screen.brightness 相同的编辑器内行为,后者始终返回 。有关设备模拟器模拟哪些成员的信息,请参阅 API 文档:1
- 设备.应用
- 设备屏幕
- 设备系统信息
更新脚本以使用模拟类
如果要将现有代码转换为使用 UnityEngine.Device 命名空间中的类,最佳做法是使用 alias 指令。例如:
using Screen = UnityEngine.Device.Screen;
using Application = UnityEngine.Device.Application;
using SystemInfo = UnityEngine.Device.SystemInfo;
这样,您可以更改整个文件使用的类,而不是更改每个 API 调用。
此文由3D建模学习工作室整理翻译,转载请注明出处!