diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2022-10-07 09:14:13 +0200 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2022-10-07 09:14:13 +0200 |
commit | 29f017378e37026b96b5ff552a180aebee18087e (patch) | |
tree | 822a578a7f093fe46e0894424c7764b9ff6e7a84 /servers | |
parent | e3d140e21a85727fe0c012c927a297d81f0ad929 (diff) | |
parent | 154b9c1c913ee04b603989db8664481d4df1aaee (diff) |
Merge pull request #66861 from clayjohn/GLES3-mono-ubo
Use a giant UBO to optimize performance in 2D [OpenGL3]
Diffstat (limited to 'servers')
-rw-r--r-- | servers/rendering/dummy/rasterizer_dummy.h | 3 | ||||
-rw-r--r-- | servers/rendering/renderer_compositor.h | 1 | ||||
-rw-r--r-- | servers/rendering_server.cpp | 4 |
3 files changed, 8 insertions, 0 deletions
diff --git a/servers/rendering/dummy/rasterizer_dummy.h b/servers/rendering/dummy/rasterizer_dummy.h index d867114384..0fde97e395 100644 --- a/servers/rendering/dummy/rasterizer_dummy.h +++ b/servers/rendering/dummy/rasterizer_dummy.h @@ -51,6 +51,7 @@ class RasterizerDummy : public RendererCompositor { private: uint64_t frame = 1; double delta = 0; + double time = 0.0; protected: RasterizerCanvasDummy canvas; @@ -82,6 +83,7 @@ public: void begin_frame(double frame_step) override { frame++; delta = frame_step; + time += frame_step; } void prepare_for_blitting_render_targets() override {} @@ -106,6 +108,7 @@ public: uint64_t get_frame_number() const override { return frame; } double get_frame_delta_time() const override { return delta; } + double get_total_time() const override { return time; } RasterizerDummy() {} ~RasterizerDummy() {} diff --git a/servers/rendering/renderer_compositor.h b/servers/rendering/renderer_compositor.h index 8e04191e35..169988f72c 100644 --- a/servers/rendering/renderer_compositor.h +++ b/servers/rendering/renderer_compositor.h @@ -102,6 +102,7 @@ public: virtual void finalize() = 0; virtual uint64_t get_frame_number() const = 0; virtual double get_frame_delta_time() const = 0; + virtual double get_total_time() const = 0; static bool is_low_end() { return low_end; }; virtual bool is_xr_enabled() const; diff --git a/servers/rendering_server.cpp b/servers/rendering_server.cpp index 750121719f..627cd9f062 100644 --- a/servers/rendering_server.cpp +++ b/servers/rendering_server.cpp @@ -2875,6 +2875,10 @@ void RenderingServer::init() { GLOBAL_DEF("rendering/rendering_device/staging_buffer/texture_upload_region_size_px", 64); GLOBAL_DEF("rendering/rendering_device/descriptor_pools/max_descriptors_per_pool", 64); + // Number of commands that can be drawn per frame. + GLOBAL_DEF_RST("rendering/gl_compatibility/item_buffer_size", 16384); + ProjectSettings::get_singleton()->set_custom_property_info("rendering/gl_compatibility/item_buffer_size", PropertyInfo(Variant::INT, "rendering/gl_compatibility/item_buffer_size", PROPERTY_HINT_RANGE, "1024,1048576,1")); + GLOBAL_DEF("rendering/shader_compiler/shader_cache/enabled", true); GLOBAL_DEF("rendering/shader_compiler/shader_cache/compress", true); GLOBAL_DEF("rendering/shader_compiler/shader_cache/use_zstd_compression", true); |