diff options
author | Sybren A. Stüvel <sybren@stuvel.eu> | 2017-05-30 14:39:36 +0300 |
---|---|---|
committer | Sybren A. Stüvel <sybren@stuvel.eu> | 2017-05-30 14:47:51 +0300 |
commit | 35f4abcf53dad7c4aa83a677f8d6d9e85b7f2b12 (patch) | |
tree | 1002212fb0113c9b094fa407b8108b2848155d36 /source/blender/alembic/intern/abc_exporter.h | |
parent | 4e5440686d16fa0e1a51a71faae0d84e36d4a5f0 (diff) |
Alembic: simplified sub-frame sampling
It's now less confusing (for example, using nr_of_samples directly,
instead of using 1 / 1 / nr_of_samples). Might also have fixed a bug.
Also added unittests.
Diffstat (limited to 'source/blender/alembic/intern/abc_exporter.h')
-rw-r--r-- | source/blender/alembic/intern/abc_exporter.h | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/source/blender/alembic/intern/abc_exporter.h b/source/blender/alembic/intern/abc_exporter.h index 797a2560d65..f763922a73b 100644 --- a/source/blender/alembic/intern/abc_exporter.h +++ b/source/blender/alembic/intern/abc_exporter.h @@ -50,8 +50,8 @@ struct ExportSettings { bool renderable_only; double frame_start, frame_end; - double frame_step_xform; - double frame_step_shape; + double frame_samples_xform; + double frame_samples_shape; double shutter_open; double shutter_close; float global_scale; @@ -103,13 +103,15 @@ public: void operator()(Main *bmain, float &progress, bool &was_canceled); -private: - void getShutterSamples(double step, bool time_relative, std::vector<double> &samples); +protected: + void getShutterSamples(unsigned int nr_of_samples, + bool time_relative, + std::vector<double> &samples); + void getFrameSet(unsigned int nr_of_samples, std::set<double> &frames); +private: Alembic::Abc::TimeSamplingPtr createTimeSampling(double step); - void getFrameSet(double step, std::set<double> &frames); - void createTransformWritersHierarchy(EvaluationContext *eval_ctx); AbcTransformWriter * createTransformWriter(Object *ob, Object *parent, Object *dupliObParent); void exploreTransform(EvaluationContext *eval_ctx, Object *ob, Object *parent, Object *dupliObParent = NULL); |