OpenXRFutureExtension

继承: OpenXRExtensionWrapper < Object

OpenXR Future 扩展,允许使用异步 API。

描述

这是 OpenXR 中支持的扩展,能够让其他 OpenXR 扩展启动异步函数,在函数完成后获取回调。不应在 GDScript 中使用,但可以在 GDExtension 中访问。

方法

void

cancel_future(future: int)

bool

is_active() const

OpenXRFutureResult

register_future(future: int, on_success: Callable = Callable())


方法说明

void cancel_future(future: int) 🔗

取消正在进行中的 future。future 必须是此前启动异步函数 API 所返回的 XrFutureEXT 值。


bool is_active() const 🔗

如果 future 在所使用的 OpenXR 运行时中可用,则返回 true。该函数仅在 OpenXR 已被初始化后返回有效值。


OpenXRFutureResult register_future(future: int, on_success: Callable = Callable()) 🔗

注册 OpenXR Future 对象,用于监视完成情况。future 必须是此前启动异步函数 API 所返回的 XrFutureEXT 值。

你还可以指定 on_success,会在 future 成功完成时调用。

你也可以用返回的 OpenXRFutureResult 对象来 await 它的 OpenXRFutureResult.completed 信号。

var future_result = OpenXRFutureExtension.register_future(future)
await future_result.completed
if future_result.get_status() == OpenXRFutureResult.RESULT_FINISHED:
    # 处理成功的情况
    pass