分组。
我有个问题。使用Dllbind时,是否可以在UnrealScript中侦听来自本机DLL的事件?
不,这是不可能的。使用DllBind,可以从UnrealScript调用DLL,但不能反过来调用。没有从DLL调用UnrealScript的机制。
如果你许可了虚幻引擎,你就可以在C++中创建本机类。本机类能够调用UnrealScript事件。但是,即使是本机类也不应该随意调用脚本事件,尤其是当本机代码在不同的线程中运行时。来自本机代码的调用需要与引擎的执行同步,这通常是通过在Actor‘s Tick中执行本机代码来实现的。
因此,您的解决方案是在Tick或Timer中从UnrealScript查询DLL。如果DLL在线程中执行异步代码,则DLL需要提供一种对结果进行排队的机制,以便脚本在请求时可以访问这些结果。