Clear color was not correctly being set, fixes #4939
This commit is contained in:
parent
c752c26427
commit
7b63c6323d
|
@ -225,7 +225,7 @@ void RasterizerGLES3::set_current_render_target(RID p_render_target) {
|
||||||
if (!p_render_target.is_valid() && storage->frame.current_rt && storage->frame.clear_request) {
|
if (!p_render_target.is_valid() && storage->frame.current_rt && storage->frame.clear_request) {
|
||||||
//handle pending clear request, if the framebuffer was not cleared
|
//handle pending clear request, if the framebuffer was not cleared
|
||||||
glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo);
|
glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo);
|
||||||
print_line("unbind clear of: " + storage->frame.clear_request_color);
|
|
||||||
glClearColor(
|
glClearColor(
|
||||||
storage->frame.clear_request_color.r,
|
storage->frame.clear_request_color.r,
|
||||||
storage->frame.clear_request_color.g,
|
storage->frame.clear_request_color.g,
|
||||||
|
|
|
@ -803,7 +803,12 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) {
|
||||||
switch (p_tool) {
|
switch (p_tool) {
|
||||||
case TOOL_CREATE_2D_SCENE: new_node = memnew(Node2D); break;
|
case TOOL_CREATE_2D_SCENE: new_node = memnew(Node2D); break;
|
||||||
case TOOL_CREATE_3D_SCENE: new_node = memnew(Spatial); break;
|
case TOOL_CREATE_3D_SCENE: new_node = memnew(Spatial); break;
|
||||||
case TOOL_CREATE_USER_INTERFACE: new_node = memnew(Control); break;
|
case TOOL_CREATE_USER_INTERFACE: {
|
||||||
|
Control *node = memnew(Control);
|
||||||
|
node->set_anchors_and_margins_preset(PRESET_WIDE); //more useful for resizable UIs.
|
||||||
|
new_node = node;
|
||||||
|
|
||||||
|
} break;
|
||||||
}
|
}
|
||||||
|
|
||||||
editor_data->get_undo_redo().create_action("New Scene Root");
|
editor_data->get_undo_redo().create_action("New Scene Root");
|
||||||
|
|
|
@ -161,6 +161,7 @@ void VisualServerRaster::set_boot_image(const Ref<Image> &p_image, const Color &
|
||||||
VSG::rasterizer->set_boot_image(p_image, p_color, p_scale);
|
VSG::rasterizer->set_boot_image(p_image, p_color, p_scale);
|
||||||
}
|
}
|
||||||
void VisualServerRaster::set_default_clear_color(const Color &p_color) {
|
void VisualServerRaster::set_default_clear_color(const Color &p_color) {
|
||||||
|
VSG::viewport->set_default_clear_color(p_color);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool VisualServerRaster::has_feature(Features p_feature) const {
|
bool VisualServerRaster::has_feature(Features p_feature) const {
|
||||||
|
|
|
@ -252,7 +252,9 @@ void VisualServerViewport::draw_viewports() {
|
||||||
// process all our active interfaces
|
// process all our active interfaces
|
||||||
ARVRServer::get_singleton()->_process();
|
ARVRServer::get_singleton()->_process();
|
||||||
|
|
||||||
clear_color = GLOBAL_GET("rendering/environment/default_clear_color");
|
if (Engine::get_singleton()->is_editor_hint()) {
|
||||||
|
clear_color = GLOBAL_GET("rendering/environment/default_clear_color");
|
||||||
|
}
|
||||||
|
|
||||||
//sort viewports
|
//sort viewports
|
||||||
active_viewports.sort_custom<ViewportSort>();
|
active_viewports.sort_custom<ViewportSort>();
|
||||||
|
@ -660,5 +662,9 @@ bool VisualServerViewport::free(RID p_rid) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void VisualServerViewport::set_default_clear_color(const Color &p_color) {
|
||||||
|
clear_color = p_color;
|
||||||
|
}
|
||||||
|
|
||||||
VisualServerViewport::VisualServerViewport() {
|
VisualServerViewport::VisualServerViewport() {
|
||||||
}
|
}
|
||||||
|
|
|
@ -188,6 +188,7 @@ public:
|
||||||
virtual int viewport_get_render_info(RID p_viewport, VS::ViewportRenderInfo p_info);
|
virtual int viewport_get_render_info(RID p_viewport, VS::ViewportRenderInfo p_info);
|
||||||
virtual void viewport_set_debug_draw(RID p_viewport, VS::ViewportDebugDraw p_draw);
|
virtual void viewport_set_debug_draw(RID p_viewport, VS::ViewportDebugDraw p_draw);
|
||||||
|
|
||||||
|
void set_default_clear_color(const Color &p_color);
|
||||||
void draw_viewports();
|
void draw_viewports();
|
||||||
|
|
||||||
bool free(RID p_rid);
|
bool free(RID p_rid);
|
||||||
|
|
Loading…
Reference in New Issue