Blender
V3.3
|
#include "BLI_kdopbvh.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_idprop.h"
#include "BKE_main.h"
#include "BKE_screen.h"
#include "DEG_depsgraph.h"
#include "ED_screen.h"
#include "ED_space_api.h"
#include "ED_transform_snap_object_context.h"
#include "ED_view3d.h"
#include "GHOST_Types.h"
#include "GPU_immediate.h"
#include "MEM_guardedalloc.h"
#include "PIL_time.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "WM_api.h"
#include "WM_types.h"
#include "wm_xr_intern.h"
Go to the source code of this file.
Classes | |
struct | XrGrabData |
struct | XrRaycastData |
struct | XrFlyData |
Functions | |
Operator Conditions | |
static bool | wm_xr_operator_sessionactive (bContext *C) |
static bool | wm_xr_operator_test_event (const wmOperator *op, const wmEvent *event) |
XR Session Toggle | |
Toggles an XR session, creating an XR context if necessary. | |
static void | wm_xr_session_update_screen (Main *bmain, const wmXrData *xr_data) |
static void | wm_xr_session_update_screen_on_exit_cb (const wmXrData *xr_data) |
static int | wm_xr_session_toggle_exec (bContext *C, wmOperator *UNUSED(op)) |
static void | WM_OT_xr_session_toggle (wmOperatorType *ot) |
XR Navigation Grab | |
Navigates the scene by grabbing with XR controllers. | |
static int | wm_xr_navigation_grab_invoke (bContext *C, wmOperator *op, const wmEvent *event) |
static int | wm_xr_navigation_grab_exec (bContext *UNUSED(C), wmOperator *UNUSED(op)) |
static bool | wm_xr_navigation_grab_can_do_bimanual (const wmXrActionData *actiondata, const XrGrabData *data) |
static bool | wm_xr_navigation_grab_is_bimanual_ending (const wmXrActionData *actiondata, const XrGrabData *data) |
static bool | wm_xr_navigation_grab_is_locked (const XrGrabData *data, const bool bimanual) |
static void | wm_xr_navigation_grab_apply (wmXrData *xr, const wmXrActionData *actiondata, const XrGrabData *data, bool bimanual) |
static void | wm_xr_navigation_grab_bimanual_state_update (const wmXrActionData *actiondata, XrGrabData *data) |
static int | wm_xr_navigation_grab_modal (bContext *C, wmOperator *op, const wmEvent *event) |
static void | WM_OT_xr_navigation_grab (wmOperatorType *ot) |
XR Navigation Teleport | |
Casts a ray from an XR controller's pose and teleports to any hit geometry. | |
static void | wm_xr_navigation_teleport (bContext *C, wmXrData *xr, const float origin[3], const float direction[3], float *ray_dist, bool selectable_only, const bool teleport_axes[3], float teleport_t, float teleport_ofs) |
static int | wm_xr_navigation_teleport_invoke (bContext *C, wmOperator *op, const wmEvent *event) |
static int | wm_xr_navigation_teleport_exec (bContext *UNUSED(C), wmOperator *UNUSED(op)) |
static int | wm_xr_navigation_teleport_modal (bContext *C, wmOperator *op, const wmEvent *event) |
static void | WM_OT_xr_navigation_teleport (wmOperatorType *ot) |
XR Navigation Reset | |
Resets XR navigation deltas relative to session base pose. | |
static int | wm_xr_navigation_reset_exec (bContext *C, wmOperator *op) |
static void | WM_OT_xr_navigation_reset (wmOperatorType *ot) |
Operator Registration | |
void | wm_xr_operatortypes_register (void) |
XR Grab Utilities | |
typedef struct XrGrabData | XrGrabData |
static void | wm_xr_grab_init (wmOperator *op) |
static void | wm_xr_grab_uninit (wmOperator *op) |
static void | wm_xr_grab_update (wmOperator *op, const wmXrActionData *actiondata) |
static void | orient_mat_z_normalized (float R[4][4], const float z_axis[3]) |
static void | wm_xr_navlocks_apply (const float nav_mat[4][4], const float nav_inv[4][4], bool loc_lock, bool locz_lock, bool rotz_lock, float r_prev[4][4], float r_curr[4][4]) |
static void | wm_xr_grab_compute (const wmXrActionData *actiondata, const XrGrabData *data, const float nav_mat[4][4], const float nav_inv[4][4], bool reverse, float r_delta[4][4]) |
static void | wm_xr_grab_compute_bimanual (const wmXrActionData *actiondata, const XrGrabData *data, const float nav_mat[4][4], const float nav_inv[4][4], bool reverse, float r_delta[4][4]) |
XR Raycast Utilities | |
typedef struct XrRaycastData | XrRaycastData |
static const float | g_xr_default_raycast_axis [3] = {0.0f, 0.0f, -1.0f} |
static const float | g_xr_default_raycast_color [4] = {0.35f, 0.35f, 1.0f, 1.0f} |
static void | wm_xr_raycast_draw (const bContext *UNUSED(C), ARegion *UNUSED(region), void *customdata) |
static void | wm_xr_raycast_init (wmOperator *op) |
static void | wm_xr_raycast_uninit (wmOperator *op) |
static void | wm_xr_raycast_update (wmOperator *op, const wmXrData *xr, const wmXrActionData *actiondata) |
static void | wm_xr_raycast (Scene *scene, Depsgraph *depsgraph, const float origin[3], const float direction[3], float *ray_dist, bool selectable_only, float r_location[3], float r_normal[3], int *r_index, Object **r_ob, float r_obmat[4][4]) |
#define XR_DEFAULT_FLY_SPEED_MOVE 0.054f |
Definition at line 758 of file wm_xr_operators.c.
#define XR_DEFAULT_FLY_SPEED_TURN 0.03f |
Definition at line 759 of file wm_xr_operators.c.
typedef enum eXrFlyMode eXrFlyMode |
typedef struct XrGrabData XrGrabData |
typedef struct XrRaycastData XrRaycastData |
enum eXrFlyMode |
Definition at line 761 of file wm_xr_operators.c.
Definition at line 197 of file wm_xr_operators.c.
References cross_v3_v3v3(), len_v3(), mul_v3_v3fl(), normalize_v3(), and R.
Referenced by wm_xr_navlocks_apply().
|
static |
Definition at line 1101 of file wm_xr_operators.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::modal, wmOperatorType::name, NULL, ot, wmOperatorType::poll, RNA_def_boolean(), RNA_def_enum(), RNA_def_float(), RNA_def_float_vector(), wmOperatorType::srna, wm_xr_navigation_fly_exec(), wm_xr_navigation_fly_invoke(), wm_xr_navigation_fly_modal(), wm_xr_operator_sessionactive(), XR_DEFAULT_FLY_SPEED_MOVE, XR_FLY_BACK, XR_FLY_CONTROLLER_FORWARD, XR_FLY_DOWN, XR_FLY_FORWARD, XR_FLY_LEFT, XR_FLY_RIGHT, XR_FLY_TURNLEFT, XR_FLY_TURNRIGHT, XR_FLY_UP, XR_FLY_VIEWER_BACK, XR_FLY_VIEWER_FORWARD, XR_FLY_VIEWER_LEFT, and XR_FLY_VIEWER_RIGHT.
Referenced by wm_xr_operatortypes_register().
|
static |
Definition at line 559 of file wm_xr_operators.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::modal, wmOperatorType::name, ot, wmOperatorType::poll, RNA_def_boolean(), wmOperatorType::srna, wm_xr_navigation_grab_exec(), wm_xr_navigation_grab_invoke(), wm_xr_navigation_grab_modal(), and wm_xr_operator_sessionactive().
Referenced by wm_xr_operatortypes_register().
|
static |
Definition at line 1492 of file wm_xr_operators.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::idname, wmOperatorType::name, ot, wmOperatorType::poll, RNA_def_boolean(), wmOperatorType::srna, wm_xr_navigation_reset_exec(), and wm_xr_operator_sessionactive().
Referenced by wm_xr_operatortypes_register().
|
static |
Definition at line 1342 of file wm_xr_operators.c.
References BVH_RAYCAST_DIST_MAX, wmOperatorType::description, wmOperatorType::exec, g_xr_default_raycast_axis, g_xr_default_raycast_color, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::modal, wmOperatorType::name, ot, wmOperatorType::poll, RNA_def_boolean(), RNA_def_boolean_vector(), RNA_def_float(), RNA_def_float_color(), RNA_def_float_vector(), wmOperatorType::srna, wm_xr_navigation_teleport_exec(), wm_xr_navigation_teleport_invoke(), wm_xr_navigation_teleport_modal(), and wm_xr_operator_sessionactive().
Referenced by wm_xr_operatortypes_register().
|
static |
Definition at line 137 of file wm_xr_operators.c.
References wmOperatorType::description, ED_operator_view3d_active(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_INTERNAL, ot, wmOperatorType::poll, and wm_xr_session_toggle_exec().
Referenced by wm_xr_operatortypes_register().
|
static |
Definition at line 890 of file wm_xr_operators.c.
References axis_angle_to_quat_single(), mul_qt_qtqt(), wmXrSessionState::prev_base_pose, quat_to_eul(), wmXrData::runtime, and wmXrRuntimeData::session_state.
Referenced by wm_xr_navigation_fly_modal(), and wm_xr_navigation_teleport().
|
static |
Definition at line 797 of file wm_xr_operators.c.
References BLI_assert_unreachable, copy_v3_v3(), madd_v3_v3fl(), mul_v3_fl(), negate_v3_v3(), normalize_v3(), normalize_v3_v3(), project_v3_v3v3_normalized(), quat_to_mat3(), sub_v3_v3(), unit_m4(), XR_FLY_BACK, XR_FLY_CONTROLLER_FORWARD, XR_FLY_DOWN, XR_FLY_FORWARD, XR_FLY_LEFT, XR_FLY_RIGHT, XR_FLY_TURNLEFT, XR_FLY_TURNRIGHT, XR_FLY_UP, XR_FLY_VIEWER_BACK, XR_FLY_VIEWER_FORWARD, XR_FLY_VIEWER_LEFT, and XR_FLY_VIEWER_RIGHT.
Referenced by wm_xr_navigation_fly_modal().
|
static |
Definition at line 864 of file wm_xr_operators.c.
References axis_angle_normalized_to_mat3(), BLI_assert, copy_m4_m3(), copy_m4_m4(), ELEM, invert_m4(), mul_m4_m4m4(), normalize_v3_v3(), blender::meshintersect::prev(), wm_xr_navlocks_apply(), XR_FLY_TURNLEFT, and XR_FLY_TURNRIGHT.
Referenced by wm_xr_navigation_fly_modal().
|
static |
Definition at line 782 of file wm_xr_operators.c.
References BLI_assert, wmOperator::customdata, data, MEM_callocN, NULL, PIL_check_seconds_timer(), and WM_xr_session_state_viewer_pose_rotation_get().
Referenced by wm_xr_navigation_fly_invoke().
|
static |
Definition at line 792 of file wm_xr_operators.c.
References wmOperator::customdata, and MEM_SAFE_FREE.
Referenced by wm_xr_navigation_fly_modal().
|
static |
Compute transformation delta for a one-handed grab interaction.
actiondata | Contains current controller pose in world space. |
data | Contains previous controller pose in world space. |
The delta is computed as the difference between the current and previous controller poses i.e. delta = curr * prev^-1.
Definition at line 253 of file wm_xr_operators.c.
References copy_m4_m4(), copy_v3_v3(), data, invert_m4(), mul_m4_m4m4(), blender::meshintersect::prev(), quat_to_mat4(), unit_m4(), wm_xr_navlocks_apply(), and zero_v3().
Referenced by wm_xr_navigation_grab_apply().
|
static |
Compute transformation delta for a two-handed (bimanual) grab interaction.
actiondata | Contains current controller poses in world space. |
data | Contains previous controller poses in world space. |
The delta is computed as the difference (delta = curr * prev^-1) between the current and previous transformations, where the transformations themselves are determined as follows:
Definition at line 305 of file wm_xr_operators.c.
References add_v3_v3v3(), cross_v3_v3v3(), data, invert_m4(), len_v3(), mul_m4_m4m4(), mul_v3_fl(), normalize_v3_v3(), blender::meshintersect::prev(), quat_to_mat3(), sub_v3_v3v3(), unit_m4(), v, and wm_xr_navlocks_apply().
Referenced by wm_xr_navigation_grab_apply().
|
static |
Definition at line 168 of file wm_xr_operators.c.
References BLI_assert, wmOperator::customdata, MEM_callocN, and NULL.
Referenced by wm_xr_navigation_grab_invoke().
|
static |
Definition at line 175 of file wm_xr_operators.c.
References wmOperator::customdata, and MEM_SAFE_FREE.
Referenced by wm_xr_navigation_grab_modal().
|
static |
Definition at line 180 of file wm_xr_operators.c.
References copy_v3_v3(), wmOperator::customdata, data, and quat_to_mat4().
Referenced by wm_xr_navigation_grab_invoke().
|
static |
Definition at line 916 of file wm_xr_operators.c.
References OPERATOR_CANCELLED.
Referenced by WM_OT_xr_navigation_fly().
|
static |
Definition at line 901 of file wm_xr_operators.c.
References C, CTX_wm_manager(), OPERATOR_PASS_THROUGH, OPERATOR_RUNNING_MODAL, WM_event_add_modal_handler(), wm_xr_fly_init(), wm_xr_operator_test_event(), and wmWindowManager::xr.
Referenced by WM_OT_xr_navigation_fly().
|
static |
Definition at line 921 of file wm_xr_operators.c.
References XrSessionSettings::base_scale, BLI_assert_unreachable, C, copy_qt_qt(), CTX_wm_manager(), wmOperator::customdata, data, ELEM, fabsf, interp_v2_v2v2v2v2_cubic(), KM_PRESS, KM_RELEASE, len_v2(), mat4_to_quat(), mul_m4_m4m4(), OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, OPERATOR_RUNNING_MODAL, usdtokens::out(), PIL_check_seconds_timer(), wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RNA_property_float_get_array(), RNA_property_is_set(), RNA_struct_find_property(), wmXrData::session_settings, state, unit_m4(), wmEvent::val, wm_xr_basenav_rotation_calc(), wm_xr_fly_compute_move(), wm_xr_fly_compute_turn(), wm_xr_fly_uninit(), wm_xr_operator_test_event(), wm_xr_pose_to_imat(), wm_xr_pose_to_mat(), WM_xr_session_state_nav_location_get(), WM_xr_session_state_nav_location_set(), WM_xr_session_state_nav_rotation_get(), WM_xr_session_state_nav_rotation_set(), WM_xr_session_state_nav_scale_get(), WM_xr_session_state_viewer_pose_location_get(), WM_xr_session_state_viewer_pose_rotation_get(), wmWindowManager::xr, XR_BOOLEAN_INPUT, XR_FLOAT_INPUT, XR_FLY_BACK, XR_FLY_CONTROLLER_FORWARD, XR_FLY_DOWN, XR_FLY_FORWARD, XR_FLY_LEFT, XR_FLY_RIGHT, XR_FLY_TURNLEFT, XR_FLY_TURNRIGHT, XR_FLY_UP, XR_FLY_VIEWER_BACK, XR_FLY_VIEWER_FORWARD, XR_FLY_VIEWER_LEFT, XR_FLY_VIEWER_RIGHT, XR_POSE_INPUT, XR_VECTOR2F_INPUT, and XR_VIBRATION_OUTPUT.
Referenced by WM_OT_xr_navigation_fly().
|
static |
Definition at line 443 of file wm_xr_operators.c.
References XrSessionSettings::clip_end, data, len_v3(), mat4_to_quat(), mul_m4_m4m4(), normalize_qt(), NULL, usdtokens::out(), wmXrData::session_settings, wm_xr_grab_compute(), wm_xr_grab_compute_bimanual(), wm_xr_pose_scale_to_imat(), wm_xr_pose_scale_to_mat(), WM_xr_session_state_nav_location_get(), WM_xr_session_state_nav_location_set(), WM_xr_session_state_nav_rotation_get(), WM_xr_session_state_nav_rotation_set(), WM_xr_session_state_nav_scale_get(), and WM_xr_session_state_nav_scale_set().
Referenced by wm_xr_navigation_grab_modal().
|
static |
Definition at line 491 of file wm_xr_operators.c.
References copy_v3_v3(), data, and quat_to_mat4().
Referenced by wm_xr_navigation_grab_modal().
|
static |
Definition at line 417 of file wm_xr_operators.c.
References data.
Referenced by wm_xr_navigation_grab_modal().
|
static |
Definition at line 412 of file wm_xr_operators.c.
References OPERATOR_CANCELLED.
Referenced by WM_OT_xr_navigation_grab().
|
static |
Definition at line 396 of file wm_xr_operators.c.
References C, OPERATOR_PASS_THROUGH, OPERATOR_RUNNING_MODAL, WM_event_add_modal_handler(), wm_xr_grab_init(), wm_xr_grab_update(), and wm_xr_operator_test_event().
Referenced by WM_OT_xr_navigation_grab().
|
static |
Definition at line 428 of file wm_xr_operators.c.
References data.
Referenced by wm_xr_navigation_grab_modal().
|
static |
Definition at line 434 of file wm_xr_operators.c.
References data.
Referenced by wm_xr_navigation_grab_modal().
|
static |
Definition at line 512 of file wm_xr_operators.c.
References BLI_assert_unreachable, C, CTX_wm_manager(), wmOperator::customdata, data, KM_PRESS, KM_RELEASE, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, OPERATOR_RUNNING_MODAL, wmOperator::ptr, RNA_boolean_get(), wmEvent::val, wm_xr_grab_uninit(), wm_xr_navigation_grab_apply(), wm_xr_navigation_grab_bimanual_state_update(), wm_xr_navigation_grab_can_do_bimanual(), wm_xr_navigation_grab_is_bimanual_ending(), wm_xr_navigation_grab_is_locked(), wm_xr_operator_test_event(), and wmWindowManager::xr.
Referenced by WM_OT_xr_navigation_grab().
|
static |
Definition at line 1428 of file wm_xr_operators.c.
References add_v3_v3(), C, CTX_wm_manager(), mul_qt_v3(), mul_v3_v3fl(), negate_v3(), OPERATOR_FINISHED, wmXrSessionState::prev_base_pose, project_v3_v3v3_normalized(), wmOperator::ptr, quat_to_mat3(), RNA_boolean_get(), rot, wmXrData::runtime, wmXrRuntimeData::session_state, sub_v3_v3(), unit_qt(), v, WM_xr_session_state_nav_location_get(), WM_xr_session_state_nav_location_set(), WM_xr_session_state_nav_rotation_get(), WM_xr_session_state_nav_rotation_set(), WM_xr_session_state_nav_scale_get(), WM_xr_session_state_nav_scale_set(), wmWindowManager::xr, and zero_v3().
Referenced by WM_OT_xr_navigation_reset().
|
static |
Definition at line 1208 of file wm_xr_operators.c.
References Freestyle::a, add_v3_v3(), C, CTX_data_ensure_evaluated_depsgraph(), CTX_data_scene(), depsgraph, madd_v3_v3fl(), normal, NULL, usdtokens::out(), project_v3_v3v3_normalized(), quat_to_mat3(), scene, sub_v3_v3(), v1, wm_xr_basenav_rotation_calc(), wm_xr_raycast(), WM_xr_session_state_nav_location_get(), WM_xr_session_state_nav_location_set(), WM_xr_session_state_nav_rotation_get(), and WM_xr_session_state_viewer_pose_location_get().
Referenced by wm_xr_navigation_teleport_modal().
|
static |
Definition at line 1289 of file wm_xr_operators.c.
References OPERATOR_CANCELLED.
Referenced by WM_OT_xr_navigation_teleport().
|
static |
Definition at line 1272 of file wm_xr_operators.c.
References C, wmOperatorType::modal, OPERATOR_PASS_THROUGH, OPERATOR_RUNNING_MODAL, wmOperator::type, WM_event_add_modal_handler(), wm_xr_operator_test_event(), and wm_xr_raycast_init().
Referenced by WM_OT_xr_navigation_teleport().
|
static |
Definition at line 1294 of file wm_xr_operators.c.
References BLI_assert_unreachable, C, CTX_wm_manager(), wmOperator::customdata, data, KM_PRESS, KM_RELEASE, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, OPERATOR_RUNNING_MODAL, wmOperator::ptr, RNA_boolean_get(), RNA_boolean_get_array(), RNA_float_get(), wmEvent::val, wm_xr_navigation_teleport(), wm_xr_operator_test_event(), wm_xr_raycast_uninit(), wm_xr_raycast_update(), and wmWindowManager::xr.
Referenced by WM_OT_xr_navigation_teleport().
|
static |
Definition at line 213 of file wm_xr_operators.c.
References copy_v3_v3(), mul_m4_m4m4(), and orient_mat_z_normalized().
Referenced by wm_xr_fly_compute_turn(), wm_xr_grab_compute(), and wm_xr_grab_compute_bimanual().
Definition at line 49 of file wm_xr_operators.c.
References C, CTX_wm_manager(), WM_xr_session_is_ready(), and wmWindowManager::xr.
Referenced by WM_OT_xr_navigation_fly(), WM_OT_xr_navigation_grab(), WM_OT_xr_navigation_reset(), and WM_OT_xr_navigation_teleport().
|
static |
Definition at line 55 of file wm_xr_operators.c.
References BLI_assert, wmEvent::custom, wmEvent::customdata, EVT_DATA_XR, EVT_XR_ACTION, IDP_EqualsProperties(), wmOperator::properties, wmOperator::type, and wmEvent::type.
Referenced by wm_xr_navigation_fly_invoke(), wm_xr_navigation_fly_modal(), wm_xr_navigation_grab_invoke(), wm_xr_navigation_grab_modal(), wm_xr_navigation_teleport_invoke(), and wm_xr_navigation_teleport_modal().
Definition at line 1515 of file wm_xr_operators.c.
References WM_operatortype_append(), WM_OT_xr_navigation_fly(), WM_OT_xr_navigation_grab(), WM_OT_xr_navigation_reset(), WM_OT_xr_navigation_teleport(), and WM_OT_xr_session_toggle().
Referenced by wm_operatortypes_register().
|
static |
Definition at line 715 of file wm_xr_operators.c.
References depsgraph, ED_transform_snap_object_context_create(), ED_transform_snap_object_context_destroy(), ED_transform_snap_object_project_ray_ex(), NULL, SCE_SNAP_TARGET_ALL, SCE_SNAP_TARGET_ONLY_SELECTABLE, and scene.
Referenced by wm_xr_navigation_teleport().
|
static |
Definition at line 605 of file wm_xr_operators.c.
References col, data, GPU_COMP_F32, GPU_DEPTH_LESS_EQUAL, GPU_DEPTH_NONE, GPU_depth_test(), GPU_FETCH_FLOAT, GPU_point_size(), GPU_PRIM_LINES, GPU_PRIM_POINTS, GPU_SHADER_3D_POLYLINE_FLAT_COLOR, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), GPU_viewport_size_get_f(), immAttr4fv(), immAttrSkip(), immBegin(), immBindBuiltinProgram(), immEnd(), immUnbindProgram(), immUniform1f(), immUniform2fv(), immUniformColor4fv(), immVertex3fv(), immVertexFormat(), and pos.
Referenced by wm_xr_raycast_init().
|
static |
Definition at line 648 of file wm_xr_operators.c.
References BKE_regiontype_from_id(), BKE_spacetype_from_id(), BLI_assert, wmOperator::customdata, data, ED_region_draw_cb_activate(), MEM_callocN, NULL, REGION_DRAW_POST_VIEW, RGN_TYPE_XR, SPACE_VIEW3D, usdtokens::st(), and wm_xr_raycast_draw().
Referenced by wm_xr_navigation_teleport_invoke().
|
static |
Definition at line 669 of file wm_xr_operators.c.
References BKE_regiontype_from_id(), BKE_spacetype_from_id(), wmOperator::customdata, data, ED_region_draw_cb_exit(), MEM_freeN, RGN_TYPE_XR, SPACE_VIEW3D, and usdtokens::st().
Referenced by wm_xr_navigation_teleport_modal().
|
static |
Definition at line 687 of file wm_xr_operators.c.
References XrSessionSettings::clip_end, XrSessionSettings::clip_start, copy_v3_v3(), wmOperator::customdata, data, madd_v3_v3v3fl(), mul_qt_v3(), wmOperator::ptr, RNA_boolean_get(), RNA_float_get_array(), wmXrData::session_settings, WM_xr_session_state_viewer_pose_location_get(), and WM_xr_session_state_viewer_pose_rotation_get().
Referenced by wm_xr_navigation_teleport_modal().
|
static |
Definition at line 115 of file wm_xr_operators.c.
References C, CTX_data_main(), CTX_wm_manager(), CTX_wm_view3d(), CTX_wm_window(), View3D_Runtime::flag, NC_WM, ND_XR_DATA_CHANGED, NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, View3D::runtime, V3D_RUNTIME_XR_SESSION_ROOT, WM_event_add_notifier(), wm_xr_init(), wm_xr_session_toggle(), wm_xr_session_update_screen(), wm_xr_session_update_screen_on_exit_cb(), and wmWindowManager::xr.
Referenced by WM_OT_xr_session_toggle().
Definition at line 77 of file wm_xr_operators.c.
References blender::compositor::area(), ListBase::first, View3D_Runtime::flag, View3D::flag, LISTBASE_FOREACH, NC_WM, ND_XR_DATA_CHANGED, NULL, View3D::runtime, scene, Main::screens, SPACE_VIEW3D, V3D_RUNTIME_XR_SESSION_ROOT, V3D_XR_SESSION_MIRROR, Main::wm, WM_main_add_notifier(), WM_windows_scene_get_from_screen(), and WM_xr_session_exists().
Referenced by wm_xr_session_toggle_exec(), and wm_xr_session_update_screen_on_exit_cb().
Definition at line 109 of file wm_xr_operators.c.
References G_MAIN, and wm_xr_session_update_screen().
Referenced by wm_xr_session_toggle_exec().
|
static |
Definition at line 593 of file wm_xr_operators.c.
Referenced by WM_OT_xr_navigation_teleport().
|
static |
Definition at line 594 of file wm_xr_operators.c.
Referenced by WM_OT_xr_navigation_teleport().