diff options
| author | Juan Linietsky <reduzio@gmail.com> | 2018-09-28 16:40:20 -0300 |
|---|---|---|
| committer | Juan Linietsky <reduzio@gmail.com> | 2018-09-28 16:42:47 -0300 |
| commit | f2ed26d71e20b92dbf21693eeea36ccfcc50ced6 (patch) | |
| tree | 641b343f7fac36eb4b951c6effb33dbb5a86a51a /drivers/gles2/rasterizer_storage_gles2.h | |
| parent | 40c3c8745df3d08065802762e236beeaa6aa1345 (diff) | |
| download | redot-engine-f2ed26d71e20b92dbf21693eeea36ccfcc50ced6.tar.gz | |
Reflection probe support in GLES2 back-end.
Diffstat (limited to 'drivers/gles2/rasterizer_storage_gles2.h')
| -rw-r--r-- | drivers/gles2/rasterizer_storage_gles2.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/gles2/rasterizer_storage_gles2.h b/drivers/gles2/rasterizer_storage_gles2.h index e6708914ec..e22738a378 100644 --- a/drivers/gles2/rasterizer_storage_gles2.h +++ b/drivers/gles2/rasterizer_storage_gles2.h @@ -955,6 +955,26 @@ public: virtual uint64_t light_get_version(RID p_light) const; /* PROBE API */ + + struct ReflectionProbe : Instanciable { + + VS::ReflectionProbeUpdateMode update_mode; + float intensity; + Color interior_ambient; + float interior_ambient_energy; + float interior_ambient_probe_contrib; + float max_distance; + Vector3 extents; + Vector3 origin_offset; + bool interior; + bool box_projection; + bool enable_shadows; + uint32_t cull_mask; + int resolution; + }; + + mutable RID_Owner<ReflectionProbe> reflection_probe_owner; + virtual RID reflection_probe_create(); virtual void reflection_probe_set_update_mode(RID p_probe, VS::ReflectionProbeUpdateMode p_mode); @@ -969,11 +989,14 @@ public: virtual void reflection_probe_set_enable_box_projection(RID p_probe, bool p_enable); virtual void reflection_probe_set_enable_shadows(RID p_probe, bool p_enable); virtual void reflection_probe_set_cull_mask(RID p_probe, uint32_t p_layers); + virtual void reflection_probe_set_resolution(RID p_probe, int p_resolution); virtual AABB reflection_probe_get_aabb(RID p_probe) const; virtual VS::ReflectionProbeUpdateMode reflection_probe_get_update_mode(RID p_probe) const; virtual uint32_t reflection_probe_get_cull_mask(RID p_probe) const; + virtual int reflection_probe_get_resolution(RID p_probe) const; + virtual Vector3 reflection_probe_get_extents(RID p_probe) const; virtual Vector3 reflection_probe_get_origin_offset(RID p_probe) const; virtual float reflection_probe_get_origin_max_distance(RID p_probe) const; |
