summaryrefslogtreecommitdiffstats
path: root/drivers/gles2/rasterizer_scene_gles2.h
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2019-06-10 12:38:51 -0300
committerJuan Linietsky <reduzio@gmail.com>2020-02-11 11:53:26 +0100
commit4f163972bbd9c7379b01a1f9aa5310646ca7865e (patch)
tree3bbf4693663d8fc071912c114af782736ea17168 /drivers/gles2/rasterizer_scene_gles2.h
parent1522d8c3ee6ddf43267f124940f4e43612058407 (diff)
downloadredot-engine-4f163972bbd9c7379b01a1f9aa5310646ca7865e.tar.gz
Refactored RID/RID_Owner to always use O(1) allocation.
* Implements a growing chunked allocator * Removed redudant methods get and getptr, only getornull is supported now.
Diffstat (limited to 'drivers/gles2/rasterizer_scene_gles2.h')
-rw-r--r--drivers/gles2/rasterizer_scene_gles2.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/gles2/rasterizer_scene_gles2.h b/drivers/gles2/rasterizer_scene_gles2.h
index 74adae05aa..96e520aa92 100644
--- a/drivers/gles2/rasterizer_scene_gles2.h
+++ b/drivers/gles2/rasterizer_scene_gles2.h
@@ -225,7 +225,7 @@ public:
uint64_t shadow_atlas_realloc_tolerance_msec;
- struct ShadowAtlas : public RID_Data {
+ struct ShadowAtlas {
enum {
QUADRANT_SHIFT = 27,
SHADOW_INDEX_MASK = (1 << QUADRANT_SHIFT) - 1,
@@ -273,7 +273,7 @@ public:
Vector<ShadowCubeMap> shadow_cubemaps;
- RID_Owner<ShadowAtlas> shadow_atlas_owner;
+ RID_PtrOwner<ShadowAtlas> shadow_atlas_owner;
RID shadow_atlas_create();
void shadow_atlas_set_size(RID p_atlas, int p_size);
@@ -304,7 +304,7 @@ public:
/* REFLECTION PROBE INSTANCE */
- struct ReflectionProbeInstance : public RID_Data {
+ struct ReflectionProbeInstance {
RasterizerStorageGLES2::ReflectionProbe *probe_ptr;
RID probe;
@@ -330,7 +330,7 @@ public:
Transform transform;
};
- mutable RID_Owner<ReflectionProbeInstance> reflection_probe_instance_owner;
+ mutable RID_PtrOwner<ReflectionProbeInstance> reflection_probe_instance_owner;
ReflectionProbeInstance **reflection_probe_instances;
int reflection_probe_count;
@@ -345,7 +345,7 @@ public:
/* ENVIRONMENT API */
- struct Environment : public RID_Data {
+ struct Environment {
VS::EnvironmentBG bg_mode;
RID sky;
@@ -459,7 +459,7 @@ public:
}
};
- mutable RID_Owner<Environment> environment_owner;
+ mutable RID_PtrOwner<Environment> environment_owner;
virtual RID environment_create();
@@ -496,7 +496,7 @@ public:
/* LIGHT INSTANCE */
- struct LightInstance : public RID_Data {
+ struct LightInstance {
struct ShadowTransform {
CameraMatrix camera;
@@ -530,7 +530,7 @@ public:
Set<RID> shadow_atlases; // atlases where this light is registered
};
- mutable RID_Owner<LightInstance> light_instance_owner;
+ mutable RID_PtrOwner<LightInstance> light_instance_owner;
virtual RID light_instance_create(RID p_light);
virtual void light_instance_set_transform(RID p_light_instance, const Transform &p_transform);