轻松实现高性能

借助Unity全新高性能多线程式数据导向型技术堆栈(DOTS),充分利用当今的多核处理器。游戏的运行速度会变得更快,其他项目也更容易读取和重复使用您的代码。

重建Unity的核心

我们正在使用高性能多线程式数据导向型技术堆栈重建Unity的核心基础。使用DOTS,您的游戏可充分利用最新的多核处理器,无需进行繁重的编程工作。DOTS包含以下功能:

  • C#任务系统,用于高效运行多线程代码。
  • 实体组件系统 (ECS),用于默认编写高性能代码。
  • Burst编译器,用于生成高度优化的本地代码。

这些DOTS功能为程序员提供了便捷的沙箱,支持他们编写可显著提升性能的多线程代码。DOTS目前仅支持预览版。

DOTS的多线程系统支持您创建可在各种硬件上运行的游戏,构建元素更多和模拟更复杂的丰富的游戏世界,甚至能优化玩家移动设备上的热控制和电池寿命。通过从面向对象的设计转向面向数据的设计,您可以更轻松地重用代码,其他人也能更轻松地理解和处理代码。

 

C# 任务系统

新的 C# 任务系统可以利用当下计算机中的多个核心。其旨在为 C# 用户脚本开辟此方法,既支持用户编写安全、迅速、作业化的代码,又能预防多线程的一些缺陷,例如竞态条件。

利用多个核心

C# 任务系统公开了原生 C++ 任务系统,允许 C# 脚本与 Unity 内部组件一起实现作业化。

安全的环境

预防多线程的一些缺陷,例如竞态条件。

实体组件系统 (ECS)

更好的游戏设计方式

ECS 是编写代码的一种方式,着眼于您在解决的实际问题:组成游戏的数据和行为。

使用 ECS 不仅能让您在设计方面实现更好的游戏编程,还能让您占据利用 Unity C# 任务系统和 Burst Compiler 的有利地位,助力您充分利用当下的多核处理器。

借助 ECS,我们可以从对象导向型设计转向数据导向型设计,这表示再利用代码会变得更加容易,其他人也更容易掌握并优化它。

突发编译器

优化后的代码

全新的以LLVM为基础的 后端编译技术,使用C#任务并制作高度优化的machine code

在各平台的最好发挥

针对您正在编译的平台的特定功能进行了优化。

更少的手动编程

无需繁琐的工作,拥有手动调整的跨平台汇编程序代码的许多优点。

发布Megacity演示

在Unite Los Angeles上,我们展示了Megacity演示,以着重介绍我们在ECS基础套件和Burst编译器方面取得的进展。 基于在Unite Austin 2017上展示的Nordeus演示的经验,我们的游戏代码团队与FPS示例团队联手创造了一个充满未来感的城市景观 - 其中包括飞行器、数十个细节极为精致的游戏对象以及独特的音频源,以展现使用Unity 2019.1中的DOTS可实现的效果。

事实上,Megacity拥有450万个网格渲染器、20万个独特的构建对象、10万条独特的音频源以及5000辆在基于样条线的行车道上飞行的动态车辆。 了解如何利用Unity的“默认性能”创造充满复杂对象和模拟的绚烂游戏世界。

点击此处详细了解该项目的创建方法并下载项目

 

 

在Unite Austin上的技术演示

在实体组件系统预发布会上,我们与来自Nordeus的朋友们一起制作了一个技术演示视频并在Unite Austin上进行了展示。

您可在Github上找到该视频的缩减版。 我们主要致力于为您提供采用最新实体组件系统的最新版本,并为纹理驱动型顶点动画提供功能多样的着色器。 该版本在图形方面与在Unite Austin上演示的版本不同。

您可以在此找到Nordeus演示制作的大致过程

 

了解Tic Toc Games如何在移动端解谜游戏中使用实体组件系统 (ECS)

Tic Toc Games最近在其移动解密引擎中部署了Unity的实体组件系统 (ECS),此举极大提升了性能、缩短了迭代时间。在洛杉矶Unite大会期间,他们举行了名为“我们重视性能”的会议,会上,Tic Toc的Garth Smith介绍了他们如何使用ECS提升迭代速度,并分享了他们在学习和使用Unity ECS工具包方面的经验。

点击此处阅读完整的案例分析

还在等什么

现在就开始

查找关于如何入门或特定问题的信息?

转至文档

加入讨论

在社区论坛上加入我们的开发者群体,提供有关试用版和测试预览的反馈,并相互交流。

加入论坛

We use cookies to ensure that we give you the best experience on our website. Click here for more information.