diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2014-03-29 16:03:46 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2014-03-29 16:03:46 +0400 |
commit | 24ad7e0bea77d942267344990d22e931610c3d07 (patch) | |
tree | 5fe78f862e08bfb9e26e1d29cea2c2e403718df1 /intern/cycles/render/attribute.h | |
parent | 41d1675053b457370e70be137fd8105b9cd1890b (diff) |
Cycles code refactor: add support for motion vertex attributes.
Diffstat (limited to 'intern/cycles/render/attribute.h')
-rw-r--r-- | intern/cycles/render/attribute.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/intern/cycles/render/attribute.h b/intern/cycles/render/attribute.h index 0b8905ae5a3..5160224f4e3 100644 --- a/intern/cycles/render/attribute.h +++ b/intern/cycles/render/attribute.h @@ -49,19 +49,21 @@ public: Attribute() {} void set(ustring name, TypeDesc type, AttributeElement element); - void reserve(int numverts, int numfaces, int numcurves, int numkeys); + void reserve(int numverts, int numfaces, int numsteps, int numcurves, int numkeys, bool resize); size_t data_sizeof() const; - size_t element_size(int numverts, int numfaces, int numcurves, int numkeys) const; - size_t buffer_size(int numverts, int numfaces, int numcurves, int numkeys) const; + size_t element_size(int numverts, int numfaces, int numsteps, int numcurves, int numkeys) const; + size_t buffer_size(int numverts, int numfaces, int numsteps, int numcurves, int numkeys) const; char *data() { return (buffer.size())? &buffer[0]: NULL; }; float3 *data_float3() { return (float3*)data(); } + float4 *data_float4() { return (float4*)data(); } float *data_float() { return (float*)data(); } Transform *data_transform() { return (Transform*)data(); } const char *data() const { return (buffer.size())? &buffer[0]: NULL; } const float3 *data_float3() const { return (const float3*)data(); } + const float4 *data_float4() const { return (const float4*)data(); } const float *data_float() const { return (const float*)data(); } const Transform *data_transform() const { return (const Transform*)data(); } @@ -86,7 +88,7 @@ public: AttributeSet(); ~AttributeSet(); - Attribute *add(ustring name, TypeDesc type, AttributeElement element); + Attribute *add(ustring name, TypeDesc type, AttributeElement element, bool resize = true); Attribute *find(ustring name) const; void remove(ustring name); |