On top of the low-level native plug-in interface, Unity also supports low level rendering extensions that can receive callbacks when certain events happen. This is mostly used to implement and control low-level rendering in your plug-in and enable it to work with Unity’s multithreaded rendering.
Due to the low-level nature of this extension the plug-in might need to be preloaded before the devices get created. Currently the convention is name-based; the plug-in name must begin GfxPlugin (for example: GfxPluginMyNativePlugin).
Unity 公开的渲染扩展定义位于随 Editor 提供的文件 IUnityRenderingExtensions.h 中(请参阅文件路径 _Unity\Editor\Data\PluginAPI_)。
All platforms supporting native plug-ins support these extensions.
To take advantage of the rendering extension, a plug-in should export UnityRenderingExtEvent and optionally UnityRenderingExtQuery. There is a lot of documentation provided inside the include file.
A plug-in gets called via UnityRenderingExtEvent whenever Unity triggers one of the built-in events. The callbacks can also be added to CommandBuffers via CommandBuffer.IssuePluginEventAndData or CommandBuffer.IssuePluginCustomBlit from scripts.
Unity 2017.1 中的新功能 NewIn20171
2017–07–04 Page published with no editorial review