Unity 2018.3地形功能更新介绍

简介: Unity 2018.3将更新地形系统,此次更新涉及改进的工具和利用GPU实现的更高性能。它还添加了HDRP高清晰渲染管线和LWRP轻量级渲染管线的支持,同时兼容内置渲染管线和现有Unity地形系统。

Unity 2018.3将更新地形系统,此次更新涉及改进的工具和利用GPU实现的更高性能。它还添加了HDRP高清晰渲染管线和LWRP轻量级渲染管线的支持,同时兼容内置渲染管线和现有Unity地形系统。

  请获取Unity 2018.3 Beta体验更新内容,但是需要注意:Unity 2018.3 Beta版仍处于开发阶段,新版本的用户界面和API可能会受到未来改动影响。
  性能
  在性能方面,我们为地形添加了GPU实例渲染路径。大多数情况下,实例化会大幅减少绘制调用。我们进行了大量测试都表明,它能减少50%以上的CPU消耗。
  你可以在Terrain settings中勾选‘Draw Instanced’来使用新的渲染路径。
 启用后,Unity会将所有大型地形数据,例如:高度图和Splat贴图等转换为GPU上的纹理。
  我们可以使用GPU实例化功能来复制单个网格并采样高度图纹理来产生正确的几何体,而不必为CPU上的每个地形补丁块构建自定义网格。这会将减少地形的CPU工作负载降低不少数量级,因为一些实例化的绘制调用会替换大量潜在的自定义网格绘制。
  它还能改进加载时间。我们不仅不用构建所有自定义网格,而且还能使用GPU来构建底图预混合的LOD纹理,GPU完成该任务的速度更快。这还意味着,如果你想开发自定义地形着色器,可以重写‘build basemap’着色器,生成匹配底图的LOD纹理。
  地形效果
  实例化也会改善地形法线的外观。我们可以通过将法线保存在由高度图生成的法线贴图纹理,并在像素着色器中进行采样,从而从几何体解耦地形网格法线。这意味着法线会独立于网格LOD层级。因此,你可以提高“像素误差率”来减少顶点消耗,得到更少的瑕疵。
 对比旧版各顶点法线(左)和新版各顶点法线(右)
  我们还为HDRP和LWRP开发了支持实例化渲染的地形着色器。HD着色器在改进后,支持各顶点法线和大量新功能,例如:高度和密度的混合模式、法线缩放、由纹理控制的表面金属和光滑度。HD地形着色器受限于单通道,但它支持在一个通道混合最多8个地形图层。
  可编程GPU工具
  在编辑器方面,我们公开了一个脚本API可用于构建自定义地形工具,以及一套实用函数,你可以使用它们在GPU上轻松实现无缝的交叉平铺雕刻和绘制操作。
  新的TerrainAPI包含TerrainPaintTool和TerrainPaintUtility,前者是地形工具的基类,后者包含用于修改地形数据的实用函数。
  通过这些改动,我们将现有地形工具转换为GPU操作。除了使这些工具速度更快,也为我们提供了笔刷大小,改进的笔刷预览,以及通过自动无缝拼接来绘制地形平铺边界的功能。
新的标记地形工具仍处于预览阶段,将于Unity 2018.3b 6推出
  我们还开发了笔刷功能,例如:笔刷旋转,随机化。还有一些更高级的绘图工具,例如:高度图和网格标记,克隆笔刷等。这些绘图工具的功能还未在Unity 2018.3中提供,但将于不久后发布,敬请关注。
  多地形支持
  我们使处理多个地形平铺的过程更为简单。除了地形之间的无缝绘制,你还可以自动管理相邻地形间的连接。此前,开发者需要编写脚本来手动连接地形。
  勾选Terrain Settings中的‘Auto connect’,地形会自动和相邻部分连接,使用相同的分组ID。
扩展现有地形时,你可以使用全新的‘Create Neighbor Terrain’工具来沿着空白边界快速添加匹配的地形平铺。
我们努力减小调整尺寸和修改分辨率所产生的影响。在Unity 2018.3中,当修改分辨率时,高度图和Splat图会重新采样,而不是像之前那样清除数据并丢失所有内容。我们还将在未来改进所有涉及调整大小的操作。
  新资源类型
  为了简化工作流程,我们还加入了二个与地形相关的全新资源类型:TerrainLayer和Brush。
1
TerrainLayer
TerrainLayer资源允许我们定义独立于地形对象的地形材质,从而能够轻松跟踪多个地形中相同材质的变化,这样能实现无缝绘制和材质修改。
  我们扩展了TerrainLayer资源以支持“遮罩贴图”纹理,可用于任意着色目的,还扩展了脚本界面,为TerrainLayer资源提供与着色器相关的自定义GUI。
更多unity2018的功能介绍请到paws3d学习中心查找。

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
4月前
|
定位技术 C# 图形学
从零开始的unity3d入门教程(二)----基本功能讲解
这是一篇Unity3D入门教程,详细介绍了Unity界面操作、游戏物体创建修改、场景搭建、玩家控制、音效添加以及游戏测试和导出的全过程。
从零开始的unity3d入门教程(二)----基本功能讲解
|
4月前
|
图形学
小功能⭐️Unity获取场景中所有物体
小功能⭐️Unity获取场景中所有物体
小功能⭐️Unity获取场景中所有物体
|
4月前
|
图形学 开发者 存储
超越基础教程:深度拆解Unity地形编辑器的每一个隐藏角落,让你的游戏世界既浩瀚无垠又细节满满——从新手到高手的全面技巧升级秘籍
【8月更文挑战第31天】Unity地形编辑器是游戏开发中的重要工具,可快速创建复杂多变的游戏环境。本文通过比较不同地形编辑技术,详细介绍如何利用其功能构建广阔且精细的游戏世界,并提供具体示例代码,展示从基础地形绘制到植被与纹理添加的全过程。通过学习这些技巧,开发者能显著提升游戏画面质量和玩家体验。
171 3
|
4月前
|
图形学
小功能⭐️Unity UnityEvent实现代码的选择
小功能⭐️Unity UnityEvent实现代码的选择
|
4月前
|
机器学习/深度学习 图形学 Windows
小功能⭐️unity3d KeyCode各键值说明
小功能⭐️unity3d KeyCode各键值说明
|
4月前
|
图形学 Android开发
小功能⭐️Unity调用Android常用事件
小功能⭐️Unity调用Android常用事件
|
4月前
|
图形学
小功能⭐️获取Unity游戏物体上,所挂载组件的名称
小功能⭐️获取Unity游戏物体上,所挂载组件的名称
|
4月前
|
图形学
小功能⭐️Unity截屏功能的实现
小功能⭐️Unity截屏功能的实现
|
4月前
|
图形学
小功能⭐️Unity中Texture2D、Sprite、Texture、RenderTexture、image、byte的转换
小功能⭐️Unity中Texture2D、Sprite、Texture、RenderTexture、image、byte的转换
|
4月前
|
图形学