diff options
author | Sybren A. Stüvel <sybren@stuvel.eu> | 2018-07-05 17:23:35 +0300 |
---|---|---|
committer | Sybren A. Stüvel <sybren@stuvel.eu> | 2018-07-10 13:00:58 +0300 |
commit | de55ae56ae5d871b5bc7fa6383c90ef89d66fcd1 (patch) | |
tree | 212fc7b15f9523bcc7a1a54906f1ba6bb6006a4f /source/blender/blenkernel/BKE_ocean.h | |
parent | b9bef10d1953bda4e1eb882bdc525815c2e32e01 (diff) |
Ocean Modifier: refactored the delayed-refresh approach
The approach of setting 'refresh' flags on the modifier, and performing
the associated actions when the modifier is being evaluated, is a bad
one. Instead, we use the separation of the original and the evaluated
copy to 'refresh' certain things (because they simply aren't set at all
on the original). Other actions are now done directly with BKE_ocean_xxx
functions on the original data, intead of during evaluation.
Diffstat (limited to 'source/blender/blenkernel/BKE_ocean.h')
-rw-r--r-- | source/blender/blenkernel/BKE_ocean.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_ocean.h b/source/blender/blenkernel/BKE_ocean.h index 3ea104e656a..b917a1ad3da 100644 --- a/source/blender/blenkernel/BKE_ocean.h +++ b/source/blender/blenkernel/BKE_ocean.h @@ -31,6 +31,8 @@ extern "C" { #endif +struct OceanModifierData; + typedef struct OceanResult { float disp[3]; float normal[3]; @@ -99,6 +101,8 @@ void BKE_ocean_cache_eval_uv(struct OceanCache *och, struct OceanResult *ocr, in void BKE_ocean_cache_eval_ij(struct OceanCache *och, struct OceanResult *ocr, int f, int i, int j); void BKE_ocean_free_cache(struct OceanCache *och); +void BKE_ocean_free_modifier_cache(struct OceanModifierData *omd); + #ifdef __cplusplus } #endif |