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:
authorLukas Tönne <lukas.toenne@gmail.com>2015-04-16 16:50:06 +0300
committerLukas Tönne <lukas.toenne@gmail.com>2015-04-16 16:50:06 +0300
commitbda3e21e95eee58be91a3b6c7b8fde6930ac8f2f (patch)
tree2e75e9855067eb1f00a86f6c6b9db27e3fb4da15 /source/blender/pointcache/alembic/abc_particles.h
parentea189ce26e3f2c6102ce53394658cb8d0b36156e (diff)
Revert recent commits, no time to improve things now.
Diffstat (limited to 'source/blender/pointcache/alembic/abc_particles.h')
-rw-r--r--source/blender/pointcache/alembic/abc_particles.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/source/blender/pointcache/alembic/abc_particles.h b/source/blender/pointcache/alembic/abc_particles.h
index c310d944343..3df60154813 100644
--- a/source/blender/pointcache/alembic/abc_particles.h
+++ b/source/blender/pointcache/alembic/abc_particles.h
@@ -46,6 +46,49 @@ class AbcDerivedMeshWriter;
class AbcDerivedMeshReader;
+class AbcHairChildrenWriter : public ParticlesWriter, public AbcWriter {
+public:
+ AbcHairChildrenWriter(const std::string &name, Object *ob, ParticleSystem *psys);
+ ~AbcHairChildrenWriter();
+
+ void init_abc(Abc::OObject parent);
+
+ void write_sample();
+
+private:
+ ParticleSystemModifierData *m_psmd;
+
+ AbcGeom::OCurves m_curves;
+ AbcGeom::OM33fArrayProperty m_prop_root_matrix;
+ AbcGeom::OV3fArrayProperty m_prop_root_positions;
+ AbcGeom::OFloatGeomParam m_param_times;
+ AbcGeom::OInt32ArrayProperty m_prop_parents;
+ AbcGeom::OFloatArrayProperty m_prop_parent_weights;
+};
+
+
+class AbcHairWriter : public ParticlesWriter, public AbcWriter {
+public:
+ AbcHairWriter(const std::string &name, Object *ob, ParticleSystem *psys);
+ ~AbcHairWriter();
+
+ void init(WriterArchive *archive);
+ void init_abc(Abc::OObject parent);
+
+ void write_sample();
+
+private:
+ ParticleSystemModifierData *m_psmd;
+
+ AbcGeom::OCurves m_curves;
+ AbcGeom::OM33fGeomParam m_param_root_matrix;
+ AbcGeom::OFloatGeomParam m_param_times;
+ AbcGeom::OFloatGeomParam m_param_weights;
+
+ AbcHairChildrenWriter m_child_writer;
+};
+
+
class AbcStrandsChildrenWriter : public AbcWriter {
public:
AbcStrandsChildrenWriter(const std::string &name, const std::string &abc_name, DupliObjectData *dobdata);