XRInterfaceExtension¶
继承: XRInterface < RefCounted < Object
XR接口扩展(插件)的基类。
描述¶
外部XR接口插件应该继承自此类。
方法¶
void |
_end_frame() virtual |
_get_anchor_detection_is_enabled() virtual const |
|
_get_camera_feed_id() virtual const |
|
_get_camera_transform() virtual |
|
_get_capabilities() virtual const |
|
_get_color_texture() virtual |
|
_get_depth_texture() virtual |
|
_get_name() virtual const |
|
_get_play_area() virtual const |
|
_get_play_area_mode() virtual const |
|
_get_projection_for_view(view: int, aspect: float, z_near: float, z_far: float) virtual |
|
_get_render_target_size() virtual |
|
_get_suggested_pose_names(tracker_name: StringName) virtual const |
|
_get_suggested_tracker_names() virtual const |
|
_get_system_info() virtual const |
|
_get_tracking_status() virtual const |
|
_get_transform_for_view(view: int, cam_transform: Transform3D) virtual |
|
_get_velocity_texture() virtual |
|
_get_view_count() virtual |
|
_get_vrs_texture() virtual |
|
_initialize() virtual |
|
_is_initialized() virtual const |
|
void |
_post_draw_viewport(render_target: RID, screen_rect: Rect2) virtual |
_pre_draw_viewport(render_target: RID) virtual |
|
void |
_pre_render() virtual |
void |
_process() virtual |
void |
_set_anchor_detection_is_enabled(enabled: bool) virtual |
_set_play_area_mode(mode: PlayAreaMode) virtual const |
|
_supports_play_area_mode(mode: PlayAreaMode) virtual const |
|
void |
_trigger_haptic_pulse(action_name: String, tracker_name: StringName, frequency: float, amplitude: float, duration_sec: float, delay_sec: float) virtual |
void |
_uninitialize() virtual |
void |
add_blit(render_target: RID, src_rect: Rect2, dst_rect: Rect2i, use_layer: bool, layer: int, apply_lens_distortion: bool, eye_center: Vector2, k1: float, k2: float, upscale: float, aspect_ratio: float) |
get_render_target_texture(render_target: RID) |
|
方法说明¶
void _end_frame() virtual 🔗
如果接口处于活动状态并且已提交队列,则调用。
bool _get_anchor_detection_is_enabled() virtual const 🔗
如果为此接口启用了锚检测,则返回true。
int _get_camera_feed_id() virtual const 🔗
返回向CameraFeed注册的CameraServer的摄像机源ID,该ID应作为支持AR的设备(如果适用)上的背景呈现。
Transform3D _get_camera_transform() virtual 🔗
返回在世界中定位Transform3D的Transform3D。
int _get_capabilities() virtual const 🔗
返回此接口的功能。
RID _get_color_texture() virtual 🔗
返回要渲染的颜色纹理(如果适用)。
RID _get_depth_texture() virtual 🔗
返回要渲染的深度纹理(如果适用)。
StringName _get_name() virtual const 🔗
返回此接口的名称。
PackedVector3Array _get_play_area() virtual const 🔗
返回表示游戏区域边界的PackedVector3Array(如果适用)。
PlayAreaMode _get_play_area_mode() virtual const 🔗
返回设置游戏区域的游戏区域模式。
PackedFloat64Array _get_projection_for_view(view: int, aspect: float, z_near: float, z_far: float) virtual 🔗
以PackedFloat64Array的形式返回给定视图的投影矩阵。
Vector2 _get_render_target_size() virtual 🔗
返回此界面的渲染目标的大小,这会覆盖标记为xr视口的Viewport的大小。
PackedStringArray _get_suggested_pose_names(tracker_name: StringName) virtual const 🔗
返回带有此接口配置的姿势名称的PackedStringArray。请注意,用户配置可以覆盖此列表。
PackedStringArray _get_suggested_tracker_names() virtual const 🔗
返回带有此接口配置的跟踪器名称的PackedStringArray。请注意,用户配置可以覆盖此列表。
Dictionary _get_system_info() virtual const 🔗
返回包含与此接口相关的系统信息的Dictionary。
TrackingStatus _get_tracking_status() virtual const 🔗
返回一个TrackingStatus,指定我们跟踪的当前状态。
Transform3D _get_transform_for_view(view: int, cam_transform: Transform3D) virtual 🔗
返回给定视图的Transform3D。
RID _get_velocity_texture() virtual 🔗
返回要渲染的速度纹理(如果适用)。
int _get_view_count() virtual 🔗
返回此界面所需的视图数,1表示单声道,2表示立体。
RID _get_vrs_texture() virtual 🔗
初始化接口,成功时返回true。
bool _is_initialized() virtual const 🔗
如果此接口已初始化,则返回true。
void _post_draw_viewport(render_target: RID, screen_rect: Rect2) virtual 🔗
在XRViewport绘制逻辑完成后调用。
bool _pre_draw_viewport(render_target: RID) virtual 🔗
如果这是我们开始处理每个活动XRViewport的Viewport之前的主要XRInterfaceExtension,则调用,如果该视口应该呈现,则返回true。如果用户摘下耳机并且我们可以暂停渲染,XR界面可能会返回false。
void _pre_render() virtual 🔗
如果此XRInterfaceExtension在渲染开始前处于活动状态,则调用。大多数XR接口将在此时同步跟踪。
void _process() virtual 🔗
如果此XRInterfaceExtension在我们的物理和应用进程调用之前处于活动状态,则调用。大多数XR接口将在此时更新其XRPositionalTracker。
void _set_anchor_detection_is_enabled(enabled: bool) virtual 🔗
如果支持,在此接口上启用锚点检测。
bool _set_play_area_mode(mode: PlayAreaMode) virtual const 🔗
设置此界面的游戏区域模式。
bool _supports_play_area_mode(mode: PlayAreaMode) virtual const 🔗
如果此界面支持此游戏区域模式,则返回true。
void _trigger_haptic_pulse(action_name: String, tracker_name: StringName, frequency: float, amplitude: float, duration_sec: float, delay_sec: float) virtual 🔗
触发要在指定跟踪器上发出的触觉脉冲。
void _uninitialize() virtual 🔗
取消初始化接口。
void add_blit(render_target: RID, src_rect: Rect2, dst_rect: Rect2i, use_layer: bool, layer: int, apply_lens_distortion: bool, eye_center: Vector2, k1: float, k2: float, upscale: float, aspect_ratio: float) 🔗
将我们的渲染结果混合到屏幕上,可选地应用镜头失真。这只能在处理_commit_views时调用。
RID get_render_target_texture(render_target: RID) 🔗
返回纹理的有效RID,如果接口支持,我们应该向其呈现当前帧。