diff options
author | makowalski <makowalski@nvidia.com> | 2021-01-16 08:12:44 +0300 |
---|---|---|
committer | makowalski <makowalski@nvidia.com> | 2021-01-16 08:12:44 +0300 |
commit | 3f03983976602cd02b40cee6610b0bf2679b0a49 (patch) | |
tree | 63c8745af7e4e713b7d410cc4f541ef84a74d38b | |
parent | 1e5e81a873874ac23ed390292221c9745c0bfc2b (diff) |
Fixed compile errors. Registering USD plugins.
-rw-r--r-- | source/blender/editors/io/io_usd.c | 2 | ||||
-rw-r--r-- | source/blender/io/usd/intern/usd_capi.cc | 37 | ||||
-rw-r--r-- | source/blender/io/usd/intern/usd_reader_geom.cc | 6 | ||||
-rw-r--r-- | source/blender/io/usd/intern/usd_reader_mesh.cc | 3 | ||||
-rw-r--r-- | source/blender/io/usd/intern/usd_reader_stage.cc | 6 | ||||
-rw-r--r-- | source/blender/io/usd/intern/usd_reader_stage.h | 4 | ||||
-rw-r--r-- | source/blender/io/usd/intern/usd_util.cc | 6 | ||||
-rw-r--r-- | source/blender/io/usd/intern/usd_util.h | 4 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_customdata_types.h | 1 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_modifier_types.h | 2 | ||||
-rw-r--r-- | source/blender/modifiers/intern/MOD_meshsequencecache.c | 4 |
11 files changed, 41 insertions, 34 deletions
diff --git a/source/blender/editors/io/io_usd.c b/source/blender/editors/io/io_usd.c index cb75e0d524b..da94e132860 100644 --- a/source/blender/editors/io/io_usd.c +++ b/source/blender/editors/io/io_usd.c @@ -318,7 +318,7 @@ static int wm_usd_import_exec(bContext *C, wmOperator *op) /* Switch out of edit mode to avoid being stuck in it (T54326). */ Object *obedit = CTX_data_edit_object(C); if (obedit) { - ED_object_mode_toggle(C, OB_MODE_EDIT); + ED_object_mode_set(C, OB_MODE_EDIT); } struct USDImportParams params = { diff --git a/source/blender/io/usd/intern/usd_capi.cc b/source/blender/io/usd/intern/usd_capi.cc index a91c41f7bac..1afe89681e3 100644 --- a/source/blender/io/usd/intern/usd_capi.cc +++ b/source/blender/io/usd/intern/usd_capi.cc @@ -40,6 +40,7 @@ #include "DEG_depsgraph_query.h" #include "DNA_cachefile_types.h" +#include "DNA_collection_types.h" #include "DNA_node_types.h" #include "DNA_scene_types.h" #include "DNA_world_types.h" @@ -319,7 +320,7 @@ int USD_get_version(void) /* ********************** Import file ********************** */ -namespace USD { +namespace blender::io::usd { enum { USD_NO_ERROR = 0, USD_ARCHIVE_FAIL, @@ -558,16 +559,20 @@ static void import_freejob(void *user_data) delete data; } -} // namespace USD +} // namespace blender::io::usd + +using namespace blender::io::usd; bool USD_import(struct bContext *C, const char *filepath, const USDImportParams *params, bool as_background_job) { + blender::io::usd::ensure_usd_plugin_path_registered(); + /* Using new here since MEM_* funcs do not call ctor to properly initialize * data. */ - USD::ImportJobData *job = new USD::ImportJobData(); + ImportJobData *job = new ImportJobData(); // USD::ImportJobData *job = static_cast<USD::ImportJobData // *>(MEM_mallocN(sizeof(USD::ImportJobData), "ImportJobData")); job->bmain = CTX_data_main(C); @@ -583,7 +588,7 @@ bool USD_import(struct bContext *C, job->settings.sequence_len = params->sequence_len; job->settings.validate_meshes = params->validate_meshes; job->settings.sequence_len = params->sequence_len; - job->error_code = USD::USD_NO_ERROR; + job->error_code = USD_NO_ERROR; job->was_canceled = false; job->archive = NULL; @@ -601,9 +606,9 @@ bool USD_import(struct bContext *C, WM_JOB_TYPE_ALEMBIC); /* setup job */ - WM_jobs_customdata_set(wm_job, job, USD::import_freejob); + WM_jobs_customdata_set(wm_job, job, import_freejob); WM_jobs_timer(wm_job, 0.1, NC_SCENE | ND_FRAME, NC_SCENE | ND_FRAME); - WM_jobs_callbacks(wm_job, USD::import_startjob, NULL, NULL, USD::import_endjob); + WM_jobs_callbacks(wm_job, import_startjob, NULL, NULL, import_endjob); WM_jobs_start(CTX_wm_manager(C), wm_job); } @@ -612,11 +617,11 @@ bool USD_import(struct bContext *C, short stop = 0, do_update = 0; float progress = 0.f; - USD::import_startjob(job, &stop, &do_update, &progress); - USD::import_endjob(job); + import_startjob(job, &stop, &do_update, &progress); + import_endjob(job); import_ok = job->import_ok; - USD::import_freejob(job); + import_freejob(job); } return import_ok; @@ -685,7 +690,7 @@ CacheReader *CacheReader_open_usd_object(USDStageHandle *handle, return reader; } - USD::USDStageReader *archive = USD::archive_from_handle(handle); + USDStageReader *archive = archive_from_handle(handle); if (!archive || !archive->valid()) { return reader; @@ -698,7 +703,7 @@ CacheReader *CacheReader_open_usd_object(USDStageHandle *handle, } // TODO: The handle does not have the proper import params or settings - USDPrimReader *usd_reader = USD::create_fake_reader(archive, prim); + USDPrimReader *usd_reader = create_fake_reader(archive, prim); if (usd_reader == NULL) { /* This object is not supported */ @@ -722,7 +727,7 @@ void USDCacheReader_free(CacheReader *reader) USDStageHandle *USD_create_handle(struct Main *bmain, const char *filename, ListBase *object_paths) { - USD::USDStageReader *archive = new USD::USDStageReader(bmain, filename); + USDStageReader *archive = new USDStageReader(bmain, filename); if (!archive->valid()) { delete archive; @@ -730,15 +735,15 @@ USDStageHandle *USD_create_handle(struct Main *bmain, const char *filename, List } if (object_paths) { - USD::gather_objects_paths(archive->stage()->GetPseudoRoot(), object_paths); + gather_objects_paths(archive->stage()->GetPseudoRoot(), object_paths); } - return USD::handle_from_archive(archive); + return handle_from_archive(archive); } void USD_free_handle(USDStageHandle *handle) { - USD::USDStageReader *archive = USD::archive_from_handle(handle); + USDStageReader *archive = archive_from_handle(handle); delete archive; } @@ -751,4 +756,4 @@ void USD_get_transform(struct CacheReader *reader, float r_mat[4][4], float time bool is_constant = false; usd_reader->read_matrix(r_mat, time, scale, is_constant); -}
\ No newline at end of file +} diff --git a/source/blender/io/usd/intern/usd_reader_geom.cc b/source/blender/io/usd/intern/usd_reader_geom.cc index 1e1acc9a773..c23b7db338b 100644 --- a/source/blender/io/usd/intern/usd_reader_geom.cc +++ b/source/blender/io/usd/intern/usd_reader_geom.cc @@ -89,7 +89,7 @@ Mesh *USDGeomReader::read_mesh(struct Mesh *existing_mesh, void USDGeomReader::addCacheModifier() { - ModifierData *md = modifier_new(eModifierType_MeshSequenceCache); + ModifierData *md = BKE_modifier_new(eModifierType_MeshSequenceCache); BLI_addtail(&m_object->modifiers, md); MeshSeqCacheModifierData *mcmd = reinterpret_cast<MeshSeqCacheModifierData *>(md); @@ -104,8 +104,8 @@ void USDGeomReader::addCacheModifier() void USDGeomReader::addSubdivModifier() { - ModifierData *md = modifier_new(eModifierType_Subsurf); + ModifierData *md = BKE_modifier_new(eModifierType_Subsurf); BLI_addtail(&m_object->modifiers, md); //SubsurfModifierData *subd = reinterpret_cast<SubsurfModifierData *>(md); -}
\ No newline at end of file +} diff --git a/source/blender/io/usd/intern/usd_reader_mesh.cc b/source/blender/io/usd/intern/usd_reader_mesh.cc index a4a2c474a99..10aba6c99d8 100644 --- a/source/blender/io/usd/intern/usd_reader_mesh.cc +++ b/source/blender/io/usd/intern/usd_reader_mesh.cc @@ -24,6 +24,7 @@ extern "C" { #include "DNA_constraint_types.h" #include "DNA_curve_types.h" #include "DNA_customdata_types.h" +#include "DNA_material_types.h" #include "DNA_mesh_types.h" #include "DNA_meshdata_types.h" #include "DNA_modifier_types.h" @@ -737,4 +738,4 @@ Mesh *USDMeshReader::read_mesh(Mesh *existing_mesh, } return active_mesh; -}
\ No newline at end of file +} diff --git a/source/blender/io/usd/intern/usd_reader_stage.cc b/source/blender/io/usd/intern/usd_reader_stage.cc index 07ad27a7897..cda32aa5ea2 100644 --- a/source/blender/io/usd/intern/usd_reader_stage.cc +++ b/source/blender/io/usd/intern/usd_reader_stage.cc @@ -52,7 +52,7 @@ extern "C" { } #include <iostream> -namespace USD { +namespace blender::io::usd { USDStageReader::USDStageReader(struct Main *bmain, const char *filename) { @@ -82,7 +82,7 @@ static USDPrimReader *_handlePrim(Main *bmain, { USDPrimReader *reader = NULL; - reader = USD::create_reader(stage, prim, params, settings); + reader = create_reader(stage, prim, params, settings); if (reader == NULL) return NULL; @@ -150,4 +150,4 @@ void USDStageReader::clear_readers() } } -} // Namespace USD
\ No newline at end of file +} // Namespace blender::io::usd diff --git a/source/blender/io/usd/intern/usd_reader_stage.h b/source/blender/io/usd/intern/usd_reader_stage.h index d479c04c180..0bd9a40d5ad 100644 --- a/source/blender/io/usd/intern/usd_reader_stage.h +++ b/source/blender/io/usd/intern/usd_reader_stage.h @@ -37,7 +37,7 @@ struct Scene; struct ImportSettings; -namespace USD { +namespace blender::io::usd { /* Wrappers around input and output archives. The goal is to be able to use * streams so that unicode paths work on Windows (T49112), and to make sure that @@ -86,6 +86,6 @@ class USDStageReader { void clear_readers(); }; -}; // namespace USD +}; // namespace blender::io::usd #endif /* __USD_READER_ARCHIVE_H__ */ diff --git a/source/blender/io/usd/intern/usd_util.cc b/source/blender/io/usd/intern/usd_util.cc index 1c70fe9cb28..89be690f0b6 100644 --- a/source/blender/io/usd/intern/usd_util.cc +++ b/source/blender/io/usd/intern/usd_util.cc @@ -84,7 +84,7 @@ extern "C" { #include <pxr/usd/usdGeom/scope.h> #include <pxr/usd/usdLux/light.h> -namespace USD { +namespace blender::io::usd { USDPrimReader *create_reader(const pxr::UsdStageRefPtr &stage, const pxr::UsdPrim &prim, @@ -119,7 +119,7 @@ USDPrimReader *create_reader(const pxr::UsdStageRefPtr &stage, } // TODO: The handle does not have the proper import params or settings -USDPrimReader *create_fake_reader(USD::USDStageReader *archive, const pxr::UsdPrim &prim) +USDPrimReader *create_fake_reader(USDStageReader *archive, const pxr::UsdPrim &prim) { USDPrimReader *reader = nullptr; if (prim.IsA<pxr::UsdGeomCamera>()) { @@ -146,4 +146,4 @@ USDPrimReader *create_fake_reader(USD::USDStageReader *archive, const pxr::UsdPr return reader; } -} // Namespace USD
\ No newline at end of file +} // Namespace blender::io::usd diff --git a/source/blender/io/usd/intern/usd_util.h b/source/blender/io/usd/intern/usd_util.h index 7b9da0facc2..68b2b6d2ed7 100644 --- a/source/blender/io/usd/intern/usd_util.h +++ b/source/blender/io/usd/intern/usd_util.h @@ -46,7 +46,7 @@ struct Light; struct Material; struct bNodeTree; -namespace USD { +namespace blender::io::usd { USDPrimReader *create_reader(const pxr::UsdStageRefPtr &stage, const pxr::UsdPrim &prim, @@ -54,6 +54,6 @@ USDPrimReader *create_reader(const pxr::UsdStageRefPtr &stage, ImportSettings &settings); USDPrimReader *create_fake_reader(class USDStageReader *archive, const pxr::UsdPrim &prim); -} // Namespace USD +} // Namespace blender::io::usd #endif /* __USD_UTIL_H__ */ diff --git a/source/blender/makesdna/DNA_customdata_types.h b/source/blender/makesdna/DNA_customdata_types.h index ea585a59b53..97689fc8d39 100644 --- a/source/blender/makesdna/DNA_customdata_types.h +++ b/source/blender/makesdna/DNA_customdata_types.h @@ -76,6 +76,7 @@ typedef struct CustomData { * Correct size is ensured in CustomData_update_typemap assert(). */ int typemap[56]; + char _pad[4]; /** Number of layers, size of layers array. */ int totlayer, maxlayer; /** In editmode, total size of all data layers. */ diff --git a/source/blender/makesdna/DNA_modifier_types.h b/source/blender/makesdna/DNA_modifier_types.h index edbfbbbf03d..f665eea61df 100644 --- a/source/blender/makesdna/DNA_modifier_types.h +++ b/source/blender/makesdna/DNA_modifier_types.h @@ -2119,7 +2119,7 @@ typedef struct MeshSeqCacheModifierData { float vel_fac; char read_flag; - char _pad[3]; + char _pad[7]; float velocity_scale; diff --git a/source/blender/modifiers/intern/MOD_meshsequencecache.c b/source/blender/modifiers/intern/MOD_meshsequencecache.c index a2d65c49506..e75e1f0278d 100644 --- a/source/blender/modifiers/intern/MOD_meshsequencecache.c +++ b/source/blender/modifiers/intern/MOD_meshsequencecache.c @@ -210,7 +210,7 @@ static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh * BKE_cachefile_reader_open(cache_file, &mcmd->reader, ctx->object, mcmd->object_path); if (!mcmd->reader) { printf("Could not create usd reader\n"); - modifier_setError(md, "Could not create USD reader for file %s", cache_file->filepath); + BKE_modifier_set_error(ctx->object, md, "Could not create USD reader for file %s", cache_file->filepath); return mesh; } } @@ -243,7 +243,7 @@ static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh * Mesh *usd_result = USD_read_mesh( mcmd->reader, ctx->object, mesh, time * FPS, &err_str, mcmd->read_flag, mcmd->vel_fac); if (err_str) { - modifier_setError(md, "%s", err_str); + BKE_modifier_set_error(ctx->object, md, "%s", err_str); } if (!ELEM(usd_result, NULL, mesh) && (mesh != org_mesh)) { |