GL.IssuePluginEvent

Switch to Manual
Obsolete public static void IssuePluginEvent (int eventID);
public static void IssuePluginEvent (IntPtr callback, int eventID);

Parameters

eventID要发送给回调的用户定义 ID。
callback排队等待 Unity 的渲染器调用的本机代码回调。

Description

向本机代码插件发送用户定义的事件。

如果平台和可用 CPU 数允许,则在 Unity 中的渲染可以是 多线程的。当使用多线程渲染时, 执行这些渲染 API 命令的线程完全 独立于运行脚本的线程。因此, 您的插件无法立即开始渲染, 因为它可能会干扰渲染线程此时正在进行的工作。

为了从该插件进行任何渲染,您应通过脚本调用 GL.IssuePluginEvent,这将导致您的原生 插件从渲染线程调用。例如,如果您 从摄像机的 OnPostRender 函数调用 GL.IssuePluginEvent,则在该摄像机已完成渲染后, 您将立即获得插件回调。

回调必须是签名为“void UNITY_INTERFACE_API UnityRenderingEvent(int eventId)”的原生函数。

有关详细信息和示例, 请参阅Native Plugin Interface

另请参阅:SystemInfo.graphicsMultiThreaded