传统的 Unity 项目在两个相关方面是面向对象的
面向对象开发的一种替代方法是面向数据开发,它是一种编程理念和一组技术,可帮助你实现这些原则。面向数据的方法提供了强大的性能优势,但对于没有经验的开发人员来说,学习起来可能更具挑战性。
面向对象和面向数据开发并不是相互排斥的,你可以结合两者的元素。有关面向数据开发的信息,请参阅 Unity 的面向数据技术栈。
主题 | 描述 |
---|---|
变换对象 | 通过改变对象的位置、旋转和大小来移动和变换对象。 |
管理时间和帧速率 | 了解 Unity 如何度量时间,以便你可以管理应用程序中的时间流逝速度,并确保值根据适当的时间刻度进行更新。 |
在运行时实例化预制件 | 以编程方式实例化 预制件一种资产类型,允许你存储完整的 GameObject 及其组件和属性。预制件充当模板,你可以在场景中使用该模板创建新的对象实例。 更多信息 请参阅 词汇表,使用相对较少的代码在游戏中创建结构和令人印象深刻的效果。 |
处理事件 | 让你的应用程序对诸如用户输入、对象碰撞当物理引擎探测到两个 GameObjects 的碰撞器进行接触或重叠时就会发生碰撞,其中至少一个具有刚体组件并且正在运动中。 更多信息 请参阅 词汇表以及物理和渲染更新等事件响应。 |
在多个帧中拆分任务 | 使用协程同步跨多个场景拆分任务执行。这可用于应该在多个帧中逐渐推进的任务,例如淡出效果。 |
与 Web 服务器交互 | 使用 UnityWebRequest 系统允许你的应用程序通过 HTTP 与 Web 服务器交互。 |
在运行时向对象添加功能 | 使用 Unity 属性 API 实现访问者设计模式并在运行时向 .NET 对象添加新操作。 |
使用通用数学函数 | 在你的应用程序中使用通用数学函数,包括三角函数、对数函数以及其他函数。 |
使用随机性 | 生成常见所需的各种随机值类型。 |
Gizmos 和 Handles | 在场景视图你所创建世界的互动视图。使用场景视图选择并放置场景、角色、摄像机、灯光以及所有其他类型的游戏对象。 更多信息 请参阅 词汇表和游戏视图中绘制线条和形状,以及交互式控制柄和控件。 |
空引用 | 理解和诊断 Unity 项目中的空引用异常。 |
Unity 属性 | 使用特定于 Unity 的 C# 属性为你的代码定义特殊行为。 |