Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/io/usd/usd.h')
-rw-r--r--source/blender/io/usd/usd.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/source/blender/io/usd/usd.h b/source/blender/io/usd/usd.h
index d42cc9152b4..d993d7d62cf 100644
--- a/source/blender/io/usd/usd.h
+++ b/source/blender/io/usd/usd.h
@@ -28,6 +28,8 @@ extern "C" {
struct Scene;
struct bContext;
+typedef struct CacheArchiveHandle CacheArchiveHandle;
+
struct USDExportParams {
bool export_animation;
bool export_hair;
@@ -81,6 +83,39 @@ bool USD_import(struct bContext *C,
int USD_get_version(void);
+// ----- USD Import and Mesh Cache interface
+
+CacheArchiveHandle *USD_create_handle(struct Main *bmain,
+ const char *filename,
+ struct ListBase *object_paths);
+
+void USD_free_handle(CacheArchiveHandle *handle);
+
+void USD_get_transform(struct CacheReader *reader, float r_mat[4][4], float time, float scale);
+
+/* Either modifies current_mesh in-place or constructs a new mesh. */
+// struct Mesh *USD_read_mesh(struct CacheReader *reader,
+// struct Object *ob,
+// struct Mesh *current_mesh,
+// const float time,
+// const char **err_str,
+// int flags,
+// float vel_scale);
+//
+// bool USD_mesh_topology_changed(struct CacheReader *reader,
+// struct Object *ob,
+// struct Mesh *existing_mesh,
+// const float time,
+// const char **err_str);
+
+struct CacheReader *CacheReader_open_usd_object(struct CacheArchiveHandle *handle,
+ struct CacheReader *reader,
+ struct Object *object,
+ const char *object_path);
+
+void USDCacheReader_incref(struct CacheReader *reader);
+void USDCacheReader_free(struct CacheReader *reader);
+
#ifdef __cplusplus
}
#endif