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:
authorTon Roosendaal <ton@blender.org>2006-11-14 18:27:43 +0300
committerTon Roosendaal <ton@blender.org>2006-11-14 18:27:43 +0300
commitc0e9d77188680dbd0c464cddd494fbebe14c1e1f (patch)
tree856464de453eed3aa34b8307b3fe772b646951c5 /source/blender/blenkernel/BKE_object.h
parent5a609daa7575dd3bda39d07d7704e7dcfd3e7ef4 (diff)
Next level of Proxy support for animation: Proxy for duplicated groups.
Notes: - Only referenced groups (from other files) - Only 1 group (no more duplicates using same group yet) - Only Proxy working well for Armature or Empty Is going to be reviewed in Plumiferos team; but target is that this will solve a major animation pipeline bottleneck :) Usage; select group, alt+ctrl+p, pick an object you want to proxify.
Diffstat (limited to 'source/blender/blenkernel/BKE_object.h')
-rw-r--r--source/blender/blenkernel/BKE_object.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/source/blender/blenkernel/BKE_object.h b/source/blender/blenkernel/BKE_object.h
index 26f129ae2a5..fde33723cc4 100644
--- a/source/blender/blenkernel/BKE_object.h
+++ b/source/blender/blenkernel/BKE_object.h
@@ -38,12 +38,23 @@
extern "C" {
#endif
+/* defines now, might become functions */
+
+/* proxy rule: lib_object->proxy == the one we borrow from, only set temporal and cleared here */
+/* local_object->proxy == pointer to library object, saved in files and read */
+
+#define OB_COPY_PROXY(a) a->id.lib && a->proxy
+#define OB_IS_PROXY(a) a->id.lib==NULL && a->proxy
+#define OB_DO_PROXY(a) a->id.lib==NULL && a->proxy && a->proxy_group==NULL
+
+
struct Base;
struct Object;
struct Camera;
struct BoundBox;
struct View3D;
struct SoftBody;
+struct Group;
void clear_workob(void);
void copy_baseflags(void);
@@ -55,7 +66,7 @@ void free_object(struct Object *ob);
void object_free_display(struct Object *ob);
void object_free_modifiers(struct Object *ob);
-void object_make_proxy(struct Object *ob, struct Object *target);
+void object_make_proxy(struct Object *ob, struct Object *target, struct Object *gob);
void unlink_object(struct Object *ob);
int exist_object(struct Object *obtest);