diff options
author | Sybren A. Stüvel <sybren@stuvel.eu> | 2018-07-10 12:57:01 +0300 |
---|---|---|
committer | Sybren A. Stüvel <sybren@stuvel.eu> | 2018-07-10 13:00:58 +0300 |
commit | 0c8452ad99035fa560a1c19a3b4a404bdbbd9ae6 (patch) | |
tree | abcb66f6c12e5f31d546a5b20a3f10ad9f769956 /source/blender/blenkernel/intern/ocean.c | |
parent | de55ae56ae5d871b5bc7fa6383c90ef89d66fcd1 (diff) |
Ocean Modifier: removed duplicated code
Some code was copied with 'keep in sync with xxx' comments added to it.
Diffstat (limited to 'source/blender/blenkernel/intern/ocean.c')
-rw-r--r-- | source/blender/blenkernel/intern/ocean.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/ocean.c b/source/blender/blenkernel/intern/ocean.c index 98dd59aca61..b68823626d7 100644 --- a/source/blender/blenkernel/intern/ocean.c +++ b/source/blender/blenkernel/intern/ocean.c @@ -836,6 +836,24 @@ struct Ocean *BKE_ocean_add(void) return oc; } +void BKE_ocean_init_from_modifier(struct Ocean *ocean, struct OceanModifierData const *omd) +{ + short do_heightfield, do_chop, do_normals, do_jacobian; + + do_heightfield = true; + do_chop = (omd->chop_amount > 0); + do_normals = (omd->flag & MOD_OCEAN_GENERATE_NORMALS); + do_jacobian = (omd->flag & MOD_OCEAN_GENERATE_FOAM); + + BKE_ocean_free_data(ocean); + BKE_ocean_init(ocean, omd->resolution * omd->resolution, omd->resolution * omd->resolution, + omd->spatial_size, omd->spatial_size, + omd->wind_velocity, omd->smallest_wave, 1.0, omd->wave_direction, omd->damp, omd->wave_alignment, + omd->depth, omd->time, + do_heightfield, do_chop, do_normals, do_jacobian, + omd->seed); +} + void BKE_ocean_init(struct Ocean *o, int M, int N, float Lx, float Lz, float V, float l, float A, float w, float damp, float alignment, float depth, float time, short do_height_field, short do_chop, short do_normals, short do_jacobian, int seed) |