版本:Unity 6 (6000.0)
语言 : 英语
URP 中运动向量的简介
URP 中的运动向量渲染通道

URP 中内置着色器对运动向量的支持

本节介绍不同 着色器在 GPU 上运行的程序。 更多信息
参见 术语表
类型支持的运动类型来计算运动向量。

URP 仅支持不透明材质的运动向量,包括 alpha 剪切材质。URP 不支持透明材质的运动向量。

URP ShaderLab 着色器

URP LitUnlitSimple LitComplex LitBaked Lit 着色器支持以下运动类型的每个对象运动向量

  • 刚性变换运动。
  • 骨骼动画。
  • 混合形状动画。
  • Alembic 动画。

要为特定材质启用 Alembic 运动向量,请在材质 检查器一个 Unity 窗口,用于显示有关当前选定游戏对象、资源或项目设置的信息,允许您检查和编辑值。 更多信息
参见 术语表
的“高级”部分启用“Alembic 运动向量”复选框。

注意::仅对使用 PlayableDirectors 组件渲染的 Alembic 顶点动画缓存使用启用“Alembic 运动向量”复选框的材质。当使用此类材质进行常规绘制调用和 MeshRenderers 时,这些材质无法读取正确的运动向量属性流,这会导致运动向量不正确。

URP Lit 和 Unlit Shader Graph 目标

URP Shader Graph LitUnlit 目标支持 URP ShaderLab 着色器 部分中描述的所有运动向量功能。除此之外,它们还具有以下选项的“附加运动向量”设置

  • 基于时间:Shader Graph 顶点动画的运动向量是通过使用 时间 节点的当前帧值和上一帧值两次运行顶点位置子图来自动生成的。此模式仅对根据 时间 节点以过程方式计算且仅使用用户定义参数(常量、属性、缓冲区、纹理)在帧之间不会改变的顶点动画正确起作用。

  • 自定义:选择此选项会添加一个额外的 运动向量 顶点输出。输出允许您指定自定义对象运动向量:每个顶点的 3D 局部对象空间偏移,表示其在上一帧中的位置。如果您知道如何在上一帧中计算顶点的位置,则可以为顶点动画创作自定义运动向量。Unity 将自定义运动向量累加到变换运动、骨骼动画和 Alembic 动画,然后将运动向量投影到最终的 2D 屏幕空间向量。

  • :默认值。如果着色器不修改顶点输出,或者它不动画顶点变形,则使用此选项。

选项 基于时间自定义 会在材质上启用 MotionVectors 通道。对象运动向量通道在每帧都渲染,即使对象的变换在帧之间保持静止,除非 MotionVectorGenerationMode 属性设置为 Camera

URP 中运动向量的简介
URP 中的运动向量渲染通道