Cleanup: USD: Assign op properties directly to the import/export options
Assign the incoming operator properties directly to their corresponding import/export options. This removes over 100 lines of unnecessary ceremony assigning to local variables first. Pull Request: https://projects.blender.org/blender/blender/pulls/141803
This commit is contained in:
committed by
Jesse Yurkovich
parent
c8052bd0dc
commit
deb86f3840
@@ -280,63 +280,6 @@ static wmOperatorStatus wm_usd_export_exec(bContext *C, wmOperator *op)
|
||||
char filepath[FILE_MAX];
|
||||
RNA_string_get(op->ptr, "filepath", filepath);
|
||||
|
||||
const bool selected_objects_only = RNA_boolean_get(op->ptr, "selected_objects_only");
|
||||
const bool visible_objects_only = RNA_boolean_get(op->ptr, "visible_objects_only");
|
||||
const bool export_animation = RNA_boolean_get(op->ptr, "export_animation");
|
||||
const bool export_hair = RNA_boolean_get(op->ptr, "export_hair");
|
||||
const bool export_uvmaps = RNA_boolean_get(op->ptr, "export_uvmaps");
|
||||
const bool rename_uvmaps = RNA_boolean_get(op->ptr, "rename_uvmaps");
|
||||
const bool export_mesh_colors = RNA_boolean_get(op->ptr, "export_mesh_colors");
|
||||
const bool export_normals = RNA_boolean_get(op->ptr, "export_normals");
|
||||
const bool export_materials = RNA_boolean_get(op->ptr, "export_materials");
|
||||
const eSubdivExportMode export_subdiv = eSubdivExportMode(
|
||||
RNA_enum_get(op->ptr, "export_subdivision"));
|
||||
|
||||
const bool export_meshes = RNA_boolean_get(op->ptr, "export_meshes");
|
||||
const bool export_lights = RNA_boolean_get(op->ptr, "export_lights");
|
||||
const bool export_cameras = RNA_boolean_get(op->ptr, "export_cameras");
|
||||
const bool export_curves = RNA_boolean_get(op->ptr, "export_curves");
|
||||
const bool export_points = RNA_boolean_get(op->ptr, "export_points");
|
||||
const bool export_volumes = RNA_boolean_get(op->ptr, "export_volumes");
|
||||
|
||||
const bool use_instancing = RNA_boolean_get(op->ptr, "use_instancing");
|
||||
const bool evaluation_mode = RNA_enum_get(op->ptr, "evaluation_mode");
|
||||
|
||||
const bool generate_preview_surface = RNA_boolean_get(op->ptr, "generate_preview_surface");
|
||||
const bool generate_materialx_network = RNA_boolean_get(op->ptr, "generate_materialx_network");
|
||||
const bool overwrite_textures = RNA_boolean_get(op->ptr, "overwrite_textures");
|
||||
const bool relative_paths = RNA_boolean_get(op->ptr, "relative_paths");
|
||||
|
||||
const bool export_armatures = RNA_boolean_get(op->ptr, "export_armatures");
|
||||
const bool export_shapekeys = RNA_boolean_get(op->ptr, "export_shapekeys");
|
||||
const bool only_deform_bones = RNA_boolean_get(op->ptr, "only_deform_bones");
|
||||
|
||||
const bool export_custom_properties = RNA_boolean_get(op->ptr, "export_custom_properties");
|
||||
const bool author_blender_name = RNA_boolean_get(op->ptr, "author_blender_name");
|
||||
|
||||
const bool triangulate_meshes = RNA_boolean_get(op->ptr, "triangulate_meshes");
|
||||
const int quad_method = RNA_enum_get(op->ptr, "quad_method");
|
||||
const int ngon_method = RNA_enum_get(op->ptr, "ngon_method");
|
||||
|
||||
const bool convert_orientation = RNA_boolean_get(op->ptr, "convert_orientation");
|
||||
|
||||
const int global_forward = RNA_enum_get(op->ptr, "export_global_forward_selection");
|
||||
const int global_up = RNA_enum_get(op->ptr, "export_global_up_selection");
|
||||
|
||||
const bool convert_world_material = RNA_boolean_get(op->ptr, "convert_world_material") &&
|
||||
export_lights;
|
||||
|
||||
const eUSDXformOpMode xform_op_mode = eUSDXformOpMode(RNA_enum_get(op->ptr, "xform_op_mode"));
|
||||
|
||||
const eUSDZTextureDownscaleSize usdz_downscale_size = eUSDZTextureDownscaleSize(
|
||||
RNA_enum_get(op->ptr, "usdz_downscale_size"));
|
||||
|
||||
const int usdz_downscale_custom_size = RNA_int_get(op->ptr, "usdz_downscale_custom_size");
|
||||
|
||||
const bool merge_parent_xform = RNA_boolean_get(op->ptr, "merge_parent_xform");
|
||||
|
||||
const bool allow_unicode = RNA_boolean_get(op->ptr, "allow_unicode");
|
||||
|
||||
/* When the texture export settings were moved into an enum this bit
|
||||
* became more involved, but it needs to stick around for API backwards
|
||||
* compatibility until Blender 5.0. */
|
||||
@@ -361,64 +304,61 @@ static wmOperatorStatus wm_usd_export_exec(bContext *C, wmOperator *op)
|
||||
}
|
||||
}
|
||||
|
||||
const eUSDSceneUnits convert_scene_units = eUSDSceneUnits(
|
||||
RNA_enum_get(op->ptr, "convert_scene_units"));
|
||||
const float meters_per_unit = RNA_float_get(op->ptr, "meters_per_unit");
|
||||
|
||||
USDExportParams params;
|
||||
params.export_animation = export_animation;
|
||||
params.selected_objects_only = selected_objects_only;
|
||||
params.visible_objects_only = visible_objects_only;
|
||||
params.export_animation = RNA_boolean_get(op->ptr, "export_animation");
|
||||
params.selected_objects_only = RNA_boolean_get(op->ptr, "selected_objects_only");
|
||||
params.visible_objects_only = RNA_boolean_get(op->ptr, "visible_objects_only");
|
||||
|
||||
params.export_meshes = export_meshes;
|
||||
params.export_lights = export_lights;
|
||||
params.export_cameras = export_cameras;
|
||||
params.export_curves = export_curves;
|
||||
params.export_points = export_points;
|
||||
params.export_volumes = export_volumes;
|
||||
params.export_hair = export_hair;
|
||||
params.export_uvmaps = export_uvmaps;
|
||||
params.rename_uvmaps = rename_uvmaps;
|
||||
params.export_normals = export_normals;
|
||||
params.export_mesh_colors = export_mesh_colors;
|
||||
params.export_materials = export_materials;
|
||||
params.export_meshes = RNA_boolean_get(op->ptr, "export_meshes");
|
||||
params.export_lights = RNA_boolean_get(op->ptr, "export_lights");
|
||||
params.convert_world_material = params.export_lights &&
|
||||
RNA_boolean_get(op->ptr, "convert_world_material");
|
||||
params.export_cameras = RNA_boolean_get(op->ptr, "export_cameras");
|
||||
params.export_curves = RNA_boolean_get(op->ptr, "export_curves");
|
||||
params.export_points = RNA_boolean_get(op->ptr, "export_points");
|
||||
params.export_volumes = RNA_boolean_get(op->ptr, "export_volumes");
|
||||
params.export_hair = RNA_boolean_get(op->ptr, "export_hair");
|
||||
params.export_uvmaps = RNA_boolean_get(op->ptr, "export_uvmaps");
|
||||
params.rename_uvmaps = RNA_boolean_get(op->ptr, "rename_uvmaps");
|
||||
params.export_normals = RNA_boolean_get(op->ptr, "export_normals");
|
||||
params.export_mesh_colors = RNA_boolean_get(op->ptr, "export_mesh_colors");
|
||||
params.export_materials = RNA_boolean_get(op->ptr, "export_materials");
|
||||
|
||||
params.export_armatures = export_armatures;
|
||||
params.export_shapekeys = export_shapekeys;
|
||||
params.only_deform_bones = only_deform_bones;
|
||||
params.export_armatures = RNA_boolean_get(op->ptr, "export_armatures");
|
||||
params.export_shapekeys = RNA_boolean_get(op->ptr, "export_shapekeys");
|
||||
params.only_deform_bones = RNA_boolean_get(op->ptr, "only_deform_bones");
|
||||
|
||||
params.convert_world_material = convert_world_material;
|
||||
params.use_instancing = RNA_boolean_get(op->ptr, "use_instancing");
|
||||
params.export_custom_properties = RNA_boolean_get(op->ptr, "export_custom_properties");
|
||||
params.author_blender_name = RNA_boolean_get(op->ptr, "author_blender_name");
|
||||
params.allow_unicode = RNA_boolean_get(op->ptr, "allow_unicode");
|
||||
|
||||
params.use_instancing = use_instancing;
|
||||
params.export_custom_properties = export_custom_properties;
|
||||
params.author_blender_name = author_blender_name;
|
||||
params.allow_unicode = allow_unicode;
|
||||
params.export_subdiv = eSubdivExportMode(RNA_enum_get(op->ptr, "export_subdivision"));
|
||||
params.evaluation_mode = eEvaluationMode(RNA_enum_get(op->ptr, "evaluation_mode"));
|
||||
|
||||
params.export_subdiv = export_subdiv;
|
||||
params.evaluation_mode = eEvaluationMode(evaluation_mode);
|
||||
|
||||
params.generate_preview_surface = generate_preview_surface;
|
||||
params.generate_materialx_network = generate_materialx_network;
|
||||
params.generate_preview_surface = RNA_boolean_get(op->ptr, "generate_preview_surface");
|
||||
params.generate_materialx_network = RNA_boolean_get(op->ptr, "generate_materialx_network");
|
||||
params.overwrite_textures = RNA_boolean_get(op->ptr, "overwrite_textures");
|
||||
params.relative_paths = RNA_boolean_get(op->ptr, "relative_paths");
|
||||
params.export_textures = export_textures;
|
||||
params.overwrite_textures = overwrite_textures;
|
||||
params.relative_paths = relative_paths;
|
||||
params.use_original_paths = use_original_paths;
|
||||
|
||||
params.triangulate_meshes = triangulate_meshes;
|
||||
params.quad_method = quad_method;
|
||||
params.ngon_method = ngon_method;
|
||||
params.triangulate_meshes = RNA_boolean_get(op->ptr, "triangulate_meshes");
|
||||
params.quad_method = RNA_enum_get(op->ptr, "quad_method");
|
||||
params.ngon_method = RNA_enum_get(op->ptr, "ngon_method");
|
||||
|
||||
params.convert_orientation = convert_orientation;
|
||||
params.forward_axis = eIOAxis(global_forward);
|
||||
params.up_axis = eIOAxis(global_up);
|
||||
params.xform_op_mode = xform_op_mode;
|
||||
params.convert_orientation = RNA_boolean_get(op->ptr, "convert_orientation");
|
||||
params.forward_axis = eIOAxis(RNA_enum_get(op->ptr, "export_global_forward_selection"));
|
||||
params.up_axis = eIOAxis(RNA_enum_get(op->ptr, "export_global_up_selection"));
|
||||
params.xform_op_mode = eUSDXformOpMode(RNA_enum_get(op->ptr, "xform_op_mode"));
|
||||
|
||||
params.usdz_downscale_size = usdz_downscale_size;
|
||||
params.usdz_downscale_custom_size = usdz_downscale_custom_size;
|
||||
params.convert_scene_units = convert_scene_units;
|
||||
params.custom_meters_per_unit = meters_per_unit;
|
||||
params.usdz_downscale_size = eUSDZTextureDownscaleSize(
|
||||
RNA_enum_get(op->ptr, "usdz_downscale_size"));
|
||||
params.usdz_downscale_custom_size = RNA_int_get(op->ptr, "usdz_downscale_custom_size");
|
||||
params.convert_scene_units = eUSDSceneUnits(RNA_enum_get(op->ptr, "convert_scene_units"));
|
||||
params.custom_meters_per_unit = RNA_float_get(op->ptr, "meters_per_unit");
|
||||
|
||||
params.merge_parent_xform = merge_parent_xform;
|
||||
params.merge_parent_xform = RNA_boolean_get(op->ptr, "merge_parent_xform");
|
||||
|
||||
params.root_prim_path = RNA_string_get(op->ptr, "root_prim_path");
|
||||
process_prim_path(params.root_prim_path);
|
||||
@@ -927,12 +867,6 @@ static wmOperatorStatus wm_usd_import_exec(bContext *C, wmOperator *op)
|
||||
char filepath[FILE_MAX];
|
||||
RNA_string_get(op->ptr, "filepath", filepath);
|
||||
|
||||
const float scale = RNA_float_get(op->ptr, "scale");
|
||||
const float light_intensity_scale = RNA_float_get(op->ptr, "light_intensity_scale");
|
||||
const bool apply_unit_conversion_scale = RNA_boolean_get(op->ptr, "apply_unit_conversion_scale");
|
||||
|
||||
const bool set_frame_range = RNA_boolean_get(op->ptr, "set_frame_range");
|
||||
|
||||
const bool read_mesh_uvs = RNA_boolean_get(op->ptr, "read_mesh_uvs");
|
||||
const bool read_mesh_colors = RNA_boolean_get(op->ptr, "read_mesh_colors");
|
||||
const bool read_mesh_attributes = RNA_boolean_get(op->ptr, "read_mesh_attributes");
|
||||
@@ -948,108 +882,58 @@ static wmOperatorStatus wm_usd_import_exec(bContext *C, wmOperator *op)
|
||||
mesh_read_flag |= MOD_MESHSEQ_READ_ATTRIBUTES;
|
||||
}
|
||||
|
||||
const bool import_cameras = RNA_boolean_get(op->ptr, "import_cameras");
|
||||
const bool import_curves = RNA_boolean_get(op->ptr, "import_curves");
|
||||
const bool import_lights = RNA_boolean_get(op->ptr, "import_lights");
|
||||
const bool import_materials = RNA_boolean_get(op->ptr, "import_materials");
|
||||
const bool import_meshes = RNA_boolean_get(op->ptr, "import_meshes");
|
||||
const bool import_volumes = RNA_boolean_get(op->ptr, "import_volumes");
|
||||
const bool import_shapes = RNA_boolean_get(op->ptr, "import_shapes");
|
||||
const bool import_skeletons = RNA_boolean_get(op->ptr, "import_skeletons");
|
||||
const bool import_blendshapes = RNA_boolean_get(op->ptr, "import_blendshapes");
|
||||
const bool import_points = RNA_boolean_get(op->ptr, "import_points");
|
||||
|
||||
const bool import_subdiv = RNA_boolean_get(op->ptr, "import_subdiv");
|
||||
|
||||
const bool support_scene_instancing = RNA_boolean_get(op->ptr, "support_scene_instancing");
|
||||
|
||||
const bool import_visible_only = RNA_boolean_get(op->ptr, "import_visible_only");
|
||||
|
||||
const bool import_defined_only = RNA_boolean_get(op->ptr, "import_defined_only");
|
||||
|
||||
const bool create_collection = RNA_boolean_get(op->ptr, "create_collection");
|
||||
|
||||
const bool import_guide = RNA_boolean_get(op->ptr, "import_guide");
|
||||
const bool import_proxy = RNA_boolean_get(op->ptr, "import_proxy");
|
||||
const bool import_render = RNA_boolean_get(op->ptr, "import_render");
|
||||
|
||||
const bool import_all_materials = RNA_boolean_get(op->ptr, "import_all_materials");
|
||||
|
||||
const bool import_usd_preview = RNA_boolean_get(op->ptr, "import_usd_preview");
|
||||
const bool set_material_blend = RNA_boolean_get(op->ptr, "set_material_blend");
|
||||
|
||||
const eUSDMtlPurpose mtl_purpose = eUSDMtlPurpose(RNA_enum_get(op->ptr, "mtl_purpose"));
|
||||
const eUSDMtlNameCollisionMode mtl_name_collision_mode = eUSDMtlNameCollisionMode(
|
||||
RNA_enum_get(op->ptr, "mtl_name_collision_mode"));
|
||||
|
||||
const eUSDAttrImportMode attr_import_mode = eUSDAttrImportMode(
|
||||
RNA_enum_get(op->ptr, "attr_import_mode"));
|
||||
|
||||
const bool validate_meshes = RNA_boolean_get(op->ptr, "validate_meshes");
|
||||
|
||||
const bool create_world_material = RNA_boolean_get(op->ptr, "create_world_material") &&
|
||||
import_lights;
|
||||
|
||||
const bool merge_parent_xform = RNA_boolean_get(op->ptr, "merge_parent_xform");
|
||||
|
||||
/* TODO(makowalski): Add support for sequences. */
|
||||
const bool is_sequence = false;
|
||||
int offset = 0;
|
||||
int sequence_len = 1;
|
||||
|
||||
const eUSDTexImportMode import_textures_mode = eUSDTexImportMode(
|
||||
RNA_enum_get(op->ptr, "import_textures_mode"));
|
||||
|
||||
const eUSDTexNameCollisionMode tex_name_collision_mode = eUSDTexNameCollisionMode(
|
||||
RNA_enum_get(op->ptr, "tex_name_collision_mode"));
|
||||
|
||||
USDImportParams params{};
|
||||
params.scale = scale;
|
||||
params.light_intensity_scale = light_intensity_scale;
|
||||
params.apply_unit_conversion_scale = apply_unit_conversion_scale;
|
||||
params.scale = RNA_float_get(op->ptr, "scale");
|
||||
params.light_intensity_scale = RNA_float_get(op->ptr, "light_intensity_scale");
|
||||
params.apply_unit_conversion_scale = RNA_boolean_get(op->ptr, "apply_unit_conversion_scale");
|
||||
|
||||
params.mesh_read_flag = mesh_read_flag;
|
||||
params.set_frame_range = set_frame_range;
|
||||
params.is_sequence = is_sequence;
|
||||
params.sequence_len = sequence_len;
|
||||
params.offset = offset;
|
||||
params.set_frame_range = RNA_boolean_get(op->ptr, "set_frame_range");
|
||||
|
||||
params.import_visible_only = import_visible_only;
|
||||
params.import_defined_only = import_defined_only;
|
||||
/* TODO(makowalski): Add support for sequences. */
|
||||
params.is_sequence = false;
|
||||
params.sequence_len = 1;
|
||||
params.offset = 0;
|
||||
|
||||
params.import_cameras = import_cameras;
|
||||
params.import_curves = import_curves;
|
||||
params.import_lights = import_lights;
|
||||
params.import_materials = import_materials;
|
||||
params.import_all_materials = import_all_materials;
|
||||
params.import_meshes = import_meshes;
|
||||
params.import_points = import_points;
|
||||
params.import_subdiv = import_subdiv;
|
||||
params.import_volumes = import_volumes;
|
||||
params.import_visible_only = RNA_boolean_get(op->ptr, "import_visible_only");
|
||||
params.import_defined_only = RNA_boolean_get(op->ptr, "import_defined_only");
|
||||
|
||||
params.create_collection = create_collection;
|
||||
params.create_world_material = create_world_material;
|
||||
params.support_scene_instancing = support_scene_instancing;
|
||||
params.import_cameras = RNA_boolean_get(op->ptr, "import_cameras");
|
||||
params.import_curves = RNA_boolean_get(op->ptr, "import_curves");
|
||||
params.import_lights = RNA_boolean_get(op->ptr, "import_lights");
|
||||
params.create_world_material = params.import_lights &&
|
||||
RNA_boolean_get(op->ptr, "create_world_material");
|
||||
params.import_materials = RNA_boolean_get(op->ptr, "import_materials");
|
||||
params.import_all_materials = RNA_boolean_get(op->ptr, "import_all_materials");
|
||||
params.import_meshes = RNA_boolean_get(op->ptr, "import_meshes");
|
||||
params.import_points = RNA_boolean_get(op->ptr, "import_points");
|
||||
params.import_subdiv = RNA_boolean_get(op->ptr, "import_subdiv");
|
||||
params.import_volumes = RNA_boolean_get(op->ptr, "import_volumes");
|
||||
|
||||
params.import_shapes = import_shapes;
|
||||
params.import_skeletons = import_skeletons;
|
||||
params.import_blendshapes = import_blendshapes;
|
||||
params.create_collection = RNA_boolean_get(op->ptr, "create_collection");
|
||||
params.support_scene_instancing = RNA_boolean_get(op->ptr, "support_scene_instancing");
|
||||
|
||||
params.validate_meshes = validate_meshes;
|
||||
params.merge_parent_xform = merge_parent_xform;
|
||||
params.import_shapes = RNA_boolean_get(op->ptr, "import_shapes");
|
||||
params.import_skeletons = RNA_boolean_get(op->ptr, "import_skeletons");
|
||||
params.import_blendshapes = RNA_boolean_get(op->ptr, "import_blendshapes");
|
||||
|
||||
params.import_guide = import_guide;
|
||||
params.import_proxy = import_proxy;
|
||||
params.import_render = import_render;
|
||||
params.validate_meshes = RNA_boolean_get(op->ptr, "validate_meshes");
|
||||
params.merge_parent_xform = RNA_boolean_get(op->ptr, "merge_parent_xform");
|
||||
|
||||
params.import_usd_preview = import_usd_preview;
|
||||
params.set_material_blend = set_material_blend;
|
||||
params.mtl_purpose = mtl_purpose;
|
||||
params.mtl_name_collision_mode = mtl_name_collision_mode;
|
||||
params.import_textures_mode = import_textures_mode;
|
||||
params.tex_name_collision_mode = tex_name_collision_mode;
|
||||
params.import_guide = RNA_boolean_get(op->ptr, "import_guide");
|
||||
params.import_proxy = RNA_boolean_get(op->ptr, "import_proxy");
|
||||
params.import_render = RNA_boolean_get(op->ptr, "import_render");
|
||||
|
||||
params.attr_import_mode = attr_import_mode;
|
||||
params.import_usd_preview = RNA_boolean_get(op->ptr, "import_usd_preview");
|
||||
params.set_material_blend = RNA_boolean_get(op->ptr, "set_material_blend");
|
||||
params.mtl_purpose = eUSDMtlPurpose(RNA_enum_get(op->ptr, "mtl_purpose"));
|
||||
params.mtl_name_collision_mode = eUSDMtlNameCollisionMode(
|
||||
RNA_enum_get(op->ptr, "mtl_name_collision_mode"));
|
||||
params.import_textures_mode = eUSDTexImportMode(RNA_enum_get(op->ptr, "import_textures_mode"));
|
||||
params.tex_name_collision_mode = eUSDTexNameCollisionMode(
|
||||
RNA_enum_get(op->ptr, "tex_name_collision_mode"));
|
||||
|
||||
params.attr_import_mode = eUSDAttrImportMode(RNA_enum_get(op->ptr, "attr_import_mode"));
|
||||
|
||||
params.prim_path_mask = RNA_string_get(op->ptr, "prim_path_mask");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user