[unity]GPU Instancer 1.2.5 (GPU实例化器)

橙路
2023-03-05 / 0 评论 / 226 阅读 / 正在检测是否收录...
https://zy.hbrely.net 广告

图片名称

图片名称
图片名称
图片名称
图片名称
图片名称
图片名称Crowd Animations 是一个开箱即用的解决方案,支持在高性能场景中使用大量的动画角色。CA (Crowd Animations) 采用 GPU Instancer 核心功能,并在 GPUI 间接实例化解决方案和 GPU 剔除技术的基础上增加了 GPU 蒙皮技术。这一组合有助于你在 Unity 内充分利用 GPU 实例化,处理你的动画角色。



  • 带蒙皮网格的间接 GPU 实例化。
  • GPU 视锥、遮挡和距离剔除。
  • 兼容 VR。适用于单通道和多通道渲染模式。
  • 支持标准、LW、HD 和通用渲染管线。
  • 支持自定义着色器(需要手动设置)。
  • 动画混合(最多 4 个动画)。
  • 支持多个蒙皮网格渲染器和子网格。
  • 支持 LOD 群组(所有 LOD 网格必须使用同样的装备)。
  • 骨骼连接。
  • 支持根运动。
  • 能够按原型使用自定义阴影距离,以及选择用于渲染阴影的 LOD。
  • 自动检测已添加和移除的实例,无需任何其他代码。
  • 支持刚体和物理。
  • 自定义动画事件系统。
  • 易于使用的界面。

Crowd Animations 支持两种不同的动画器工作流程:

你可以跟往常一样使用 Unity Mecanim Animator 处理动画状态机,GPUI 将从 Mecanim Animator 读取动画器状态。因此,你可以将现有的动画器和脚本与 Crowd Animations 一起使用,从而能够直接综合使用间接 GPU 实例化和所有 GPUI 功能,如 GPU 视锥和遮挡剔除。这一工作流程可改进 GPU 性能,同时渲染蒙皮网格,但是对于受 CPU 约束的项目而言,这不是理想的解决方案,因为 Mecanim Animator 仍会为每个实例创建悬突。

你可以使用 Crowd Animator,通过 GPU Instancer API 在 GPU 内处理动画剪辑,并确定在给定时间播放哪个动画。这一工作流程要求你编写自己的脚本(或使用可视化脚本编写工具),手动处理动画状态 - 但该工作流程也有助于充分利用 GPU Instancer,因为 Mecanim Animator 不会创建任何悬突。

当前的局限:

  • 不支持动画分层和遮罩。
  • 不支持反向动力学。
  • 不支持移动端平台。
  • 动画混合采用线性插值,这意味着截然不同的混合动画可能导致错误的蒙皮效果。

评论 (0)

取消