Commit: 05c3e5c43344a0830b742e75aaa974479b30f183 Author: Peter Kim Date: Sun Aug 8 13:17:18 2021 +0900 Branches: xr-controller-support https://developer.blender.org/rB05c3e5c43344a0830b742e75aaa974479b30f183
Cleanup - Remove unused wmSurface.is_xr member - Rename "actionmap" to "action_set" in wmXrActionData - Use BLI_findstring() - Add modifications note to tinygltf readme =================================================================== M extern/tinygltf/README.blender M source/blender/makesrna/intern/rna_wm.c M source/blender/windowmanager/WM_api.h M source/blender/windowmanager/WM_types.h M source/blender/windowmanager/intern/wm_event_query.c M source/blender/windowmanager/wm_surface.h M source/blender/windowmanager/xr/intern/wm_xr_session.c =================================================================== diff --git a/extern/tinygltf/README.blender b/extern/tinygltf/README.blender index 1d34ea25966..cc63dc758bf 100644 --- a/extern/tinygltf/README.blender +++ b/extern/tinygltf/README.blender @@ -2,4 +2,4 @@ Project: tinygltf URL: https://github.com/syoyo/tinygltf License: MIT Upstream version: 2.5.0 -Local modifications: None +Local modifications: Use C++17 attribute [[fallthrough]] to quiet compiler warnings. diff --git a/source/blender/makesrna/intern/rna_wm.c b/source/blender/makesrna/intern/rna_wm.c index ed5f471aa37..a3e88754e51 100644 --- a/source/blender/makesrna/intern/rna_wm.c +++ b/source/blender/makesrna/intern/rna_wm.c @@ -703,7 +703,7 @@ static bool rna_Event_is_xr_get(PointerRNA *ptr) return WM_event_is_xr(event); } -static void rna_Event_xr_actionmap_get(PointerRNA *ptr, char *value) +static void rna_Event_xr_action_set_get(PointerRNA *ptr, char *value) { const wmEvent *event = ptr->data; if (WM_event_is_xr(event)) { @@ -715,12 +715,12 @@ static void rna_Event_xr_actionmap_get(PointerRNA *ptr, char *value) } } -static int rna_Event_xr_actionmap_length(PointerRNA *ptr) +static int rna_Event_xr_action_set_length(PointerRNA *ptr) { const wmEvent *event = ptr->data; if (WM_event_is_xr(event)) { wmXrActionData *data = event->customdata; - return strlen(data->actionmap) + 1; + return strlen(data->action_set) + 1; } else { return 0; @@ -2490,11 +2490,11 @@ static void rna_def_event(BlenderRNA *brna) RNA_def_property_boolean_funcs(prop, "rna_Event_is_xr_get", NULL); RNA_def_property_ui_text(prop, "Is XR", "The event has XR data"); - prop = RNA_def_property(srna, "xr_actionmap", PROP_STRING, PROP_NONE); + prop = RNA_def_property(srna, "xr_action_set", PROP_STRING, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_string_funcs( - prop, "rna_Event_xr_actionmap_get", "rna_Event_xr_actionmap_length", NULL); - RNA_def_property_ui_text(prop, "XR Action Map", "XR action map name"); + prop, "rna_Event_xr_action_set_get", "rna_Event_xr_action_set_length", NULL); + RNA_def_property_ui_text(prop, "XR Action Set", "XR action set name"); prop = RNA_def_property(srna, "xr_action", PROP_STRING, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); diff --git a/source/blender/windowmanager/WM_api.h b/source/blender/windowmanager/WM_api.h index 0908a854a14..6572e37ef18 100644 --- a/source/blender/windowmanager/WM_api.h +++ b/source/blender/windowmanager/WM_api.h @@ -912,7 +912,7 @@ int WM_event_absolute_delta_x(const struct wmEvent *event); int WM_event_absolute_delta_y(const struct wmEvent *event); void WM_event_xr_data(const struct wmEvent *event, - char **actionmap, + char **action_set, char **action, char *type, float state[2], diff --git a/source/blender/windowmanager/WM_types.h b/source/blender/windowmanager/WM_types.h index ac7afbe0dca..7eee79994f0 100644 --- a/source/blender/windowmanager/WM_types.h +++ b/source/blender/windowmanager/WM_types.h @@ -717,8 +717,8 @@ typedef struct wmXrActionState { #endif typedef struct wmXrActionData { - /** Action map name. */ - char actionmap[64]; + /** Action set name. */ + char action_set[64]; /** Action name. */ char action[64]; /** Type. */ diff --git a/source/blender/windowmanager/intern/wm_event_query.c b/source/blender/windowmanager/intern/wm_event_query.c index da229a93fcc..562a1f83473 100644 --- a/source/blender/windowmanager/intern/wm_event_query.c +++ b/source/blender/windowmanager/intern/wm_event_query.c @@ -484,7 +484,7 @@ int WM_event_absolute_delta_y(const struct wmEvent *event) * \{ */ void WM_event_xr_data(const wmEvent *event, - char **actionmap, + char **action_set, char **action, char *type, float state[2], @@ -500,8 +500,8 @@ void WM_event_xr_data(const wmEvent *event, { const wmXrActionData *data = event->customdata; - if (actionmap) { - strcpy(*actionmap, data->actionmap); + if (action_set) { + strcpy(*action_set, data->action_set); } if (action) { strcpy(*action, data->action); diff --git a/source/blender/windowmanager/wm_surface.h b/source/blender/windowmanager/wm_surface.h index 602c095a186..a2483d38154 100644 --- a/source/blender/windowmanager/wm_surface.h +++ b/source/blender/windowmanager/wm_surface.h @@ -36,9 +36,6 @@ typedef struct wmSurface { GHOST_ContextHandle ghost_ctx; struct GPUContext *gpu_ctx; - /* Used for XR event handling. */ - bool is_xr; - void *customdata; void (*draw)(struct bContext *); diff --git a/source/blender/windowmanager/xr/intern/wm_xr_session.c b/source/blender/windowmanager/xr/intern/wm_xr_session.c index a99a5d74dd5..aeed1bbeb00 100644 --- a/source/blender/windowmanager/xr/intern/wm_xr_session.c +++ b/source/blender/windowmanager/xr/intern/wm_xr_session.c @@ -839,7 +839,7 @@ static void wm_xr_session_controller_data_update(const bContext *C, } if (!controller->model) { - /* Notify ghost to load/continue loading the controller model data. This can be called more + /* Notify GHOST to load/continue loading the controller model data. This can be called more * than once since the model may not be available from the runtime yet. The batch itself will * be created in wm_xr_draw_controllers(). */ GHOST_XrLoadControllerModel(xr_context, controller->subaction_path); @@ -850,12 +850,9 @@ static void wm_xr_session_controller_data_update(const bContext *C, static const GHOST_XrPose *wm_xr_session_controller_aim_pose_find(const wmXrSessionState *state, const char *subaction_path) { - LISTBASE_FOREACH (wmXrController *, controller, &state->controllers) { - if (STREQ(controller->subaction_path, subaction_path)) { - return &controller->aim_pose; - } - } - return NULL; + const wmXrController *controller = BLI_findstring( + &state->controllers, subaction_path, offsetof(wmXrController, subaction_path)); + return controller ? &controller->aim_pose : NULL; } BLI_INLINE bool test_float_state(const float *state, float threshold, eXrAxisFlag flag) @@ -1222,7 +1219,7 @@ static wmXrActionData *wm_xr_session_event_create(const char *action_set_name, bool bimanual) { wmXrActionData *data = MEM_callocN(sizeof(wmXrActionData), __func__); - strcpy(data->actionmap, action_set_name); + strcpy(data->action_set, action_set_name); strcpy(data->action, action->name); data->type = action->type; @@ -1669,7 +1666,6 @@ static wmSurface *wm_xr_session_surface_create(void) surface->ghost_ctx = DRW_xr_opengl_context_get(); surface->gpu_ctx = DRW_xr_gpu_context_get(); - surface->is_xr = true; data->controller_art->regionid = RGN_TYPE_XR; surface->customdata = data; _______________________________________________ Bf-blender-cvs mailing list [email protected] List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs
