summaryrefslogtreecommitdiff
path: root/servers/rendering/rendering_server_viewport.h
diff options
context:
space:
mode:
Diffstat (limited to 'servers/rendering/rendering_server_viewport.h')
-rw-r--r--servers/rendering/rendering_server_viewport.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/servers/rendering/rendering_server_viewport.h b/servers/rendering/rendering_server_viewport.h
index ed251f5da0..081f63690b 100644
--- a/servers/rendering/rendering_server_viewport.h
+++ b/servers/rendering/rendering_server_viewport.h
@@ -31,8 +31,8 @@
#ifndef VISUALSERVERVIEWPORT_H
#define VISUALSERVERVIEWPORT_H
-#include "core/rid_owner.h"
-#include "core/self_list.h"
+#include "core/templates/rid_owner.h"
+#include "core/templates/self_list.h"
#include "rasterizer.h"
#include "servers/rendering_server.h"
#include "servers/xr/xr_interface.h"
@@ -70,6 +70,9 @@ public:
bool disable_environment;
bool measure_render_time;
+ bool snap_2d_transforms_to_pixel;
+ bool snap_2d_vertices_to_pixel;
+
uint64_t time_cpu_begin;
uint64_t time_cpu_end;
@@ -86,6 +89,9 @@ public:
RS::ViewportClearMode clear_mode;
+ RS::CanvasItemTextureFilter texture_filter = RS::CANVAS_ITEM_TEXTURE_FILTER_LINEAR;
+ RS::CanvasItemTextureRepeat texture_repeat = RS::CANVAS_ITEM_TEXTURE_REPEAT_DISABLED;
+
bool transparent_bg;
struct CanvasKey {
@@ -133,6 +139,9 @@ public:
screen_space_aa = RS::VIEWPORT_SCREEN_SPACE_AA_DISABLED;
use_debanding = false;
+ snap_2d_transforms_to_pixel = false;
+ snap_2d_vertices_to_pixel = false;
+
for (int i = 0; i < RS::VIEWPORT_RENDER_INFO_MAX; i++) {
render_info[i] = 0;
}
@@ -217,6 +226,12 @@ public:
float viewport_get_measured_render_time_cpu(RID p_viewport) const;
float viewport_get_measured_render_time_gpu(RID p_viewport) const;
+ void viewport_set_snap_2d_transforms_to_pixel(RID p_viewport, bool p_enabled);
+ void viewport_set_snap_2d_vertices_to_pixel(RID p_viewport, bool p_enabled);
+
+ void viewport_set_default_canvas_item_texture_filter(RID p_viewport, RS::CanvasItemTextureFilter p_filter);
+ void viewport_set_default_canvas_item_texture_repeat(RID p_viewport, RS::CanvasItemTextureRepeat p_repeat);
+
void handle_timestamp(String p_timestamp, uint64_t p_cpu_time, uint64_t p_gpu_time);
void set_default_clear_color(const Color &p_color);