版本:Unity 6 (6000.0)
语言中文(简体)
  • C#

SkinnedMeshRenderer.GetPreviousVertexBuffer

提交更改建议

成功!

感谢你帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们会阅读用户提交的每条更改建议,并在适用时进行更新。

关闭

提交失败

由于某种原因,无法提交你建议的更改。请在几分钟后<a>重试</a>。感谢你花时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册

声明

public GraphicsBuffer GetPreviousVertexBuffer();

返回

GraphicsBufferGraphicsBuffer 为形式返回蒙皮网格顶点缓冲区。

描述

为上个帧获取一个 GraphicsBuffer,该 GraphicsBuffer 可直接访问这个蒙皮网格的 GPU 顶点缓冲区。

在运动矢量渲染(用于运动模糊、时间抗锯齿或其他效果)期间,带有 skinnedMotionVectors 的蒙皮网格会在两个 GPU 顶点缓冲区之间交替。你可以使用 GetVertexBuffer 访问当前帧的 GPU 顶点缓冲区,使用 `GetPreviousVertexBuffer` 访问上个帧的 GPU 顶点缓冲区。

你可以在 ComputeShader 中使用此方法来访问上个帧的蒙皮网格顶点缓冲区。为此,首先通过 vertexBufferTarget 请求一个相应的缓冲区绑定目标,然后使用 `GetPreviousVertexBuffer` 获取图形缓冲区,最后使用 ComputeBuffer.SetBuffer、Material.SetBuffer 和类似的方法将其设置为着色器的参数。

其他资源: vertexBufferTargetGetVertexBuffer