diff options
Diffstat (limited to 'scene/3d')
-rw-r--r-- | scene/3d/decal.cpp | 2 | ||||
-rw-r--r-- | scene/3d/label_3d.cpp | 12 | ||||
-rw-r--r-- | scene/3d/lightmap_gi.cpp | 3 | ||||
-rw-r--r-- | scene/3d/navigation_agent_3d.cpp | 2 |
4 files changed, 16 insertions, 3 deletions
diff --git a/scene/3d/decal.cpp b/scene/3d/decal.cpp index e122adcc8c..6f2717fd41 100644 --- a/scene/3d/decal.cpp +++ b/scene/3d/decal.cpp @@ -31,7 +31,7 @@ #include "decal.h" void Decal::set_size(const Vector3 &p_size) { - size = p_size; + size = Vector3(MAX(0.001, p_size.x), MAX(0.001, p_size.y), MAX(0.001, p_size.z)); RS::get_singleton()->decal_set_size(decal, p_size); update_gizmos(); } diff --git a/scene/3d/label_3d.cpp b/scene/3d/label_3d.cpp index b39ca43d2e..5fc36abb76 100644 --- a/scene/3d/label_3d.cpp +++ b/scene/3d/label_3d.cpp @@ -442,6 +442,18 @@ void Label3D::_generate_glyph_surfaces(const Glyph &p_glyph, Vector2 &r_offset, } void Label3D::_shape() { + // When a shaped text is invalidated by an external source, we want to reshape it. + if (!TS->shaped_text_is_ready(text_rid)) { + dirty_text = true; + } + + for (const RID &line_rid : lines_rid) { + if (!TS->shaped_text_is_ready(line_rid)) { + dirty_lines = true; + break; + } + } + // Clear mesh. RS::get_singleton()->mesh_clear(mesh); aabb = AABB(); diff --git a/scene/3d/lightmap_gi.cpp b/scene/3d/lightmap_gi.cpp index fb74cffc94..b4387b0f3c 100644 --- a/scene/3d/lightmap_gi.cpp +++ b/scene/3d/lightmap_gi.cpp @@ -163,7 +163,8 @@ Array LightmapGIData::_get_light_textures_data() const { config->set_value("remap", "importer", "2d_array_texture"); config->set_value("remap", "type", "CompressedTexture2DArray"); if (!config->has_section_key("params", "compress/mode")) { - config->set_value("params", "compress/mode", 2); //user may want another compression, so leave it be + // User may want another compression, so leave it be, but default to VRAM uncompressed. + config->set_value("params", "compress/mode", 3); } config->set_value("params", "compress/channel_pack", 1); config->set_value("params", "mipmaps/generate", false); diff --git a/scene/3d/navigation_agent_3d.cpp b/scene/3d/navigation_agent_3d.cpp index 081e7505d0..16f357194e 100644 --- a/scene/3d/navigation_agent_3d.cpp +++ b/scene/3d/navigation_agent_3d.cpp @@ -130,7 +130,7 @@ void NavigationAgent3D::_bind_methods() { ClassDB::bind_method(D_METHOD("set_debug_path_custom_point_size", "point_size"), &NavigationAgent3D::set_debug_path_custom_point_size); ClassDB::bind_method(D_METHOD("get_debug_path_custom_point_size"), &NavigationAgent3D::get_debug_path_custom_point_size); - ADD_GROUP("Debug", ""); + ADD_GROUP("Debug", "debug_"); ADD_PROPERTY(PropertyInfo(Variant::BOOL, "debug_enabled"), "set_debug_enabled", "get_debug_enabled"); ADD_PROPERTY(PropertyInfo(Variant::BOOL, "debug_use_custom"), "set_debug_use_custom", "get_debug_use_custom"); ADD_PROPERTY(PropertyInfo(Variant::COLOR, "debug_path_custom_color"), "set_debug_path_custom_color", "get_debug_path_custom_color"); |