Version: 2017.3
Low-level Native Plugin Interface
Low-level native plugin Shader compiler access

Extensiones de rendering de plugins nativos de bajo nivel

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.

API de Extensiones de Rendering

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.

Plugin callbacks en el hilo de rendering

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.


Low-level Native Plugin Interface
Low-level native plugin Shader compiler access