包含此页的版本:
不含此页的版本:
本节介绍哪些类型的运动不同着色器在 GPU 上运行的程序。更多信息
请参阅术语表类型支持计算运动矢量。
URP 仅支持不透明材质(包括 alpha 裁剪材质)的运动矢量。URP 不支持透明材质的运动矢量。
URPLit,Unlit,Simple Lit,Complex Lit和Baked Lit着色器支持以下运动类型的每个对象运动矢量:
要为特定材质启用Alembic运动矢量,请启用材质的 高级(Advanced) 部分中的 Alembic运动矢量(Alembic Motion Vectors) 复选框inspector一个 Unity 窗口,显示有关当前所选游戏对象、资产或项目设置的信息,允许您检查和编辑值。更多信息
请参阅术语表.
注意:: 仅在使用 PlayableDirectors 组件渲染的 Alembic 顶点动画缓存上启用了 Alembic 运动矢量复选框的材质。当将此类材质与常规绘制调用和网格渲染器一起使用时,材质无法读取正确的运动矢量属性流,从而导致运动矢量不正确。
URP着色器图Lit和Unlit目标支持URP ShaderLab着色器部分中描述的所有运动矢量功能。除此之外,它们还具有 附加运动矢量(Additional Motion Vectors) 设置,其中包含以下选项:
基于时间:着色器图表顶点动画的运动矢量是通过使用 时间(Time) 节点的当前和前一帧值运行顶点位置子图两次来自动生成的。此模式仅适用于基于 时间(Time) 节点按程序计算的顶点动画,并且仅使用用户定义的参数(常量、属性、缓冲区、纹理),这些参数在帧之间不会更改。
自定义:选择此选项将添加额外的运动矢量顶点输出。输出允许您指定自定义对象运动矢量:每个顶点与上一帧中的位置的 3D 局部对象空间偏移量。如果您知道如何计算顶点在前一帧中的位置,则可以为顶点动画创作自定义运动矢量。Unity 将自定义运动矢量加法应用于变换运动、骨架动画和蒸馏动画,然后再将运动矢量投影到最终的 2D 屏幕空间矢量。
无:默认值。当着色器不修改顶点输出或不对顶点变形进行动画处理时,请使用此选项。
基于时间(Time-Based)和自定义(Custom)选项使运动矢量传递到材质上。对象运动矢量通道每帧渲染一次,即使对象的转换在帧之间静止,除非 MotionVectorGenerationMode 属性设置为Camera.