Shows how to support rendering per-instance motion vectors within Indirect instanced drawing of Unity.
This is an example that shows how to support rendering per-instance motion vectors within indirect instanced drawing of Unity.
(In this document, the term "indirect instanced drawing" refers to drawing instanced geometries with using the indirect drawing API -- specifically using Graphics.DrawMeshInstancedIndirect.)
This example uses BuiltinRenderTextureType.MotionVectors that is newly introduce in Unity 2017.2, so that it only runs on 2017.2 or later versions.
Write the MotionVectors
light mode pass for the custom shader. It's
recommended to use the first pass of the subshader to make it easy to refer
from command buffers. ⇒ Example
Implement the OnRenderObject
method and manually invoke the MotionVectors
pass with using a command buffer. BuiltinRenderTextureType.MotionVectors
can be used to set the motion vectors texture as a render target. ⇒
Example
Copyright (c) 2017 Unity Technologies
This repository is to be treated as an example content of Unity; you can use the code freely in your projects. Also see the FAQ about example contents.