로우레벨 네이티브 플러그인 인터페이스 외에, Unity 에디터는 특정 이벤트가 발생하면 콜백을 수신할 수 있는 로우레벨 렌더링 확장 기능도 지원합니다. 주로 플러그인에서 로우레벨 렌더링을 구현 및 제어하고 Unity의 멀티스레드 렌더링과 함께 작동하도록 하는 데 사용됩니다.
확장 기능의 로우레벨 특성으로 인해, 장치가 생성되기 전에 플러그인을 미리 로드해야 할 수 있습니다. 현재 규칙은 이름 기반입니다. 즉 플러그인 이름 앞에 “GfxPlugin”을 추가해야 합니다(예: GfxPluginMyFancyNativePlugin).
Unity 에디터에서 노출하는 렌더링 확장 기능 정의는 IUnityRenderingExtensionss.h에서 찾을 수 있고 에디터와 함께 제공됩니다.
이 확장 기능은 네이티브 플러그인을 지원하는 모든 플랫폼에서 지원됩니다.
렌더링 확장 기능을 이용하기 위해서는 플러그인이 UnityRenderingExtEvent 및 UnityRenderingExtQuery(선택 사항)를 익스포트해야 합니다. 포함 파일에 여러 문서가 있습니다.
Unity 에디터에서 빌트인 이벤트 중 하나가 트리거될 때마다 UnityRenderingExtEvent를 통해 플러그인이 호출됩니다. 스크립트에서 CommandBuffer.IssuePluginEventAndData 또는 CommandBuffer.IssuePluginCustomBlit 커맨드를 통해 콜백을 CommandBuffers에 추가할 수도 있습니다.