# Low Level Native Plugin Rendering Extensions

> Access low-level graphics device and rendering features from native plug-ins.

[로우레벨 네이티브 플러그인 인터페이스](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/native-plugin-interface.md) 외에도 Unity는 특정 이벤트가 발생할 때 콜백을 수신할 수 있는 로우레벨 렌더링 확장 기능을 지원합니다. 이는 주로 플러그인의 로우레벨 렌더링을 구현 및 제어하고 Unity의 멀티스레드 렌더링과 함께 사용할 수 있도록 하는 데 사용됩니다.

확장 기능의 로우레벨 특성으로 인해, 기기가 생성되기 전에 플러그인을 미리 로드해야 할 수 있습니다. 현재 규칙은 이름 기반이며, 플러그인 이름은 \_GfxPlugin\_으로 시작해야 합니다(예: *GfxPluginMyNativePlugin*).

Unity에서 노출되는 렌더링 확장 기능 정의는 *IUnityRenderingExtensions.h* 파일에 있으며, 에디터와 함께 제공됩니다(파일 경로 *Unity\Editor\Data\PluginAPI* 참조).

네이티브 플러그인을 지원하는 모든 플랫폼에서 이 확장 기능이 지원됩니다.

## 렌더링 확장 기능 API##rendering-extensions-api

렌더링 확장 기능을 사용하기 위해서는 플러그인이 *UnityRenderingExtEvent* 및 *UnityRenderingExtQuery*(선택 사항)를 익스포트해야 합니다. include 파일에는 다양한 기술 자료가 있습니다.

## 렌더링 스레드에 대한 플러그인 콜백##plug-in-callbacks-on-the-rendering-thread

Unity가 빌트인 이벤트 중 하나를 트리거할 때마다 플러그인은 \_UnityRenderingExtEvent\_를 통해 호출됩니다. 이런 콜백은 현재 [CommandBuffer.IssuePluginEventAndData](/engine/6000.0/script-reference/unity-engine-rendering/command-buffer/issue-plugin-event-and-data.md) 또는 [CommandBuffer.IssuePluginCustomBlit](/engine/6000.0/script-reference/unity-engine-rendering/command-buffer/issue-plugin-custom-blit.md)을 통해 CommandBuffers에 추가됩니다.

## 추가 리소스##additional-resources

* [로우레벨 네이티브 플러그인 셰이더 컴파일러 액세스](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/native-plugin-interface/low-level-native-plugin-shader-compiler-access.md)
* [로우레벨 네이티브 플러그인 메모리 관리자 API](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/native-plugin-interface/low-level-native-plugin-memory-manager-api.md)
* [로우레벨 네이티브 플러그인 메모리 관리자 API 레퍼런스](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/native-plugin-interface/low-level-native-plugin-memory-manager-api/reference.md)
