summaryrefslogtreecommitdiff
path: root/drivers/gles3/rasterizer_storage_gles3.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gles3/rasterizer_storage_gles3.h')
-rw-r--r--drivers/gles3/rasterizer_storage_gles3.h26
1 files changed, 18 insertions, 8 deletions
diff --git a/drivers/gles3/rasterizer_storage_gles3.h b/drivers/gles3/rasterizer_storage_gles3.h
index c3022b3ac0..f052aa8019 100644
--- a/drivers/gles3/rasterizer_storage_gles3.h
+++ b/drivers/gles3/rasterizer_storage_gles3.h
@@ -135,10 +135,13 @@ public:
bool active;
GLuint tex_id;
+ uint16_t stored_cube_sides;
+
RenderTarget *render_target;
Texture() {
+ stored_cube_sides=0;
ignore_mipmaps=false;
render_target=NULL;
flags=width=height=0;
@@ -184,7 +187,7 @@ public:
virtual void texture_debug_usage(List<VS::TextureInfo> *r_info);
- virtual RID texture_create_pbr_cubemap(RID p_source,VS::PBRCubeMapMode p_mode,int p_resolution=-1) const;
+ virtual RID texture_create_radiance_cubemap(RID p_source,int p_resolution=-1) const;
/* SHADER API */
@@ -351,13 +354,6 @@ public:
struct Instantiable : public RID_Data {
- enum Type {
- GEOMETRY_INVALID,
- GEOMETRY_SURFACE,
- GEOMETRY_IMMEDIATE,
- GEOMETRY_MULTISURFACE,
- };
-
SelfList<RasterizerScene::InstanceBase>::List instance_list;
_FORCE_INLINE_ void instance_change_notify() {
@@ -582,6 +578,20 @@ public:
/* Light API */
+
+ struct Light : Instantiable {
+
+ VS::LightType type;
+ float param[VS::LIGHT_PARAM_MAX];
+ Color color;
+ bool shadow;
+ bool negative;
+ uint32_t cull_mask;
+ VS::LightDirectionalShadowMode directional_shadow_mode;
+ };
+
+ mutable RID_Owner<Light> light_owner;
+
virtual RID light_create(VS::LightType p_type);
virtual void light_set_color(RID p_light,const Color& p_color);