diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2020-03-11 19:12:01 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2020-03-11 19:12:16 +0300 |
commit | 7dd0be9554ae7a728ded1a95d4709a93b68301b4 (patch) | |
tree | 52a097fd8edd1128def41fcda6bed64e8c6b39b7 /source/blender/makesdna/DNA_lightprobe_types.h | |
parent | c476c36e400883d929a7149def8dcb6ad6157a86 (diff) |
EEVEE: Replace octahedron reflection probe by cubemap array
We implement cubemap array support for EEVEE's lightcache reflection probes.
This removes stretched texels and bottom hemisphere seams artifacts caused
by the octahedral projection previously used.
This introduce versioning code for the lightcache which will discard any
lightcache version that is not compatible.
Differential Revision: https://developer.blender.org/D7066
Diffstat (limited to 'source/blender/makesdna/DNA_lightprobe_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_lightprobe_types.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_lightprobe_types.h b/source/blender/makesdna/DNA_lightprobe_types.h index 6ffdd60a094..d9cc549229d 100644 --- a/source/blender/makesdna/DNA_lightprobe_types.h +++ b/source/blender/makesdna/DNA_lightprobe_types.h @@ -160,6 +160,10 @@ typedef struct LightCacheTexture { typedef struct LightCache { int flag; + /** Version number to know if the cache data is compatible with this version of blender. */ + int version; + /** Type of data this cache contains. */ + int type; /* only a single cache for now */ /** Number of probes to use for rendering. */ int cube_len, grid_len; @@ -181,6 +185,14 @@ typedef struct LightCache { LightGridCache *grid_data; } LightCache; +/* Bump the version number for lightcache data structure changes. */ +#define LIGHTCACHE_STATIC_VERSION 1 + +/* LightCache->type */ +enum { + LIGHTCACHE_TYPE_STATIC = 0, +}; + /* LightCache->flag */ enum { LIGHTCACHE_BAKED = (1 << 0), |