Además de la interfaz de plugin nativo de bajo nivel, Unity también admite extensiones de rendering de bajo nivel que pueden recibir callbacks cuando ocurren ciertos eventos. Esto se usa principalmente para implementar y controlar el rendering de bajo nivel en su complemento y permitir que funcione con el rendering de varios hilos de Unity.
Debido a la naturaleza de bajo nivel de esta extensión, es posible que sea necesario precargar el complemento antes de que se creen los dispositivos. Actualmente la convención está basada en nombres; el nombre del complemento debe comenzar GfxPlugin (por ejemplo: GfxPluginMyNativePlugin).
La definición de la extensión de rendering expuesta por Unity se encuentra en el archivo IUnityRenderingExtensions.h, provisto con el Editor (mire la ruta del archivo Unity\Editor\Data\PluginAPI).
Todas las plataformas que admiten plugins nativos admiten estas extensiones.
Para aprovechar la extensión de rendering, un plugin debería exportar UnityRenderingExtEvent y opcionalmente UnityRenderingExtQuery. Hay una gran cantidad de documentación provista dentro del archivo de inclusión.
Un plugin se llama a través de UnityRenderingExtEvent cada vez que Unity desencadena uno de los eventos incorporados. Los callbacks también se pueden agregar a CommandBuffers a través de CommandBuffer.IssuePluginEventAndData o CommandBuffer.IssuePluginCustomBlit desde los scripts.
Nuevas características de Unity 2017.1 NewIn20171
2017–07–04 Page published with no editorial review