From abe3b481aea7ef7fa88fa7230743d7f415786635 Mon Sep 17 00:00:00 2001 From: Lukas Tenbrink Date: Fri, 13 Jun 2025 00:38:06 +0200 Subject: [PATCH] Make conversions from `LocalVector` to `Vector` explicit. --- core/templates/local_vector.h | 2 +- drivers/gles3/storage/texture_storage.cpp | 4 +- .../3d/gizmos/spring_bone_3d_gizmo_plugin.cpp | 8 ++-- editor/scene/3d/skeleton_3d_editor_plugin.cpp | 48 +++++++++---------- .../language_server/gdscript_workspace.cpp | 2 +- modules/gltf/gltf_document.cpp | 4 +- modules/minimp3/audio_stream_mp3.cpp | 2 +- platform/linuxbsd/wayland/wayland_thread.cpp | 2 +- platform/web/export/export_plugin.cpp | 2 +- scene/animation/animation_tree.cpp | 2 +- scene/debugger/scene_debugger.cpp | 4 +- scene/gui/graph_edit.cpp | 2 +- scene/resources/2d/tile_set.cpp | 2 +- .../resources/3d/convex_polygon_shape_3d.cpp | 2 +- scene/resources/3d/importer_mesh.cpp | 2 +- scene/resources/audio_stream_wav.cpp | 2 +- scene/resources/mesh.cpp | 2 +- .../render_forward_clustered.cpp | 8 ++-- .../forward_mobile/render_forward_mobile.cpp | 4 +- 19 files changed, 52 insertions(+), 52 deletions(-) diff --git a/core/templates/local_vector.h b/core/templates/local_vector.h index b45eeae4fc9..a8ce345efdc 100644 --- a/core/templates/local_vector.h +++ b/core/templates/local_vector.h @@ -316,7 +316,7 @@ public: insert(i, p_val); } - operator Vector() const { + explicit operator Vector() const { Vector ret; ret.resize(count); T *w = ret.ptrw(); diff --git a/drivers/gles3/storage/texture_storage.cpp b/drivers/gles3/storage/texture_storage.cpp index 3ad087474bf..6973c091658 100644 --- a/drivers/gles3/storage/texture_storage.cpp +++ b/drivers/gles3/storage/texture_storage.cpp @@ -1443,8 +1443,8 @@ void TextureStorage::texture_replace(RID p_texture, RID p_by_texture) { tex_to->tex_id = 0; } - Vector proxies_to_update = tex_to->proxies; - Vector proxies_to_redirect = tex_from->proxies; + Vector proxies_to_update = Vector(tex_to->proxies); + Vector proxies_to_redirect = Vector(tex_from->proxies); *tex_to = *tex_from; diff --git a/editor/scene/3d/gizmos/spring_bone_3d_gizmo_plugin.cpp b/editor/scene/3d/gizmos/spring_bone_3d_gizmo_plugin.cpp index 06243358bd1..f9e00d6875b 100644 --- a/editor/scene/3d/gizmos/spring_bone_3d_gizmo_plugin.cpp +++ b/editor/scene/3d/gizmos/spring_bone_3d_gizmo_plugin.cpp @@ -162,15 +162,15 @@ Ref SpringBoneSimulator3DGizmoPlugin::get_joints_mesh(Skeleton3D *p_s continue; } bones[0] = current_bone; - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); axis = global_pose.xform(axis * p_simulator->get_end_bone_length(i)); draw_line(surface_tool, global_pose.origin, axis, bone_color); draw_sphere(surface_tool, global_pose.basis, axis, p_simulator->get_joint_radius(i, j), bone_color); } else { bones[0] = current_bone; - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); if (j == 0) { // Draw rotation axis vector if not ROTATION_AXIS_ALL. SpringBoneSimulator3D::RotationAxis rotation_axis = p_simulator->get_joint_rotation_axis(i, j); diff --git a/editor/scene/3d/skeleton_3d_editor_plugin.cpp b/editor/scene/3d/skeleton_3d_editor_plugin.cpp index e4fa6f61bfe..ae66e91b02a 100644 --- a/editor/scene/3d/skeleton_3d_editor_plugin.cpp +++ b/editor/scene/3d/skeleton_3d_editor_plugin.cpp @@ -1706,12 +1706,12 @@ Ref Skeleton3DGizmoPlugin::get_bones_mesh(Skeleton3D *p_skeleton, int case 0: { // Wire shape. surface_tool->set_color(current_bone_color); bones[0] = current_bone_idx; - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(v0); bones[0] = child_bone_idx; - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(v1); } break; @@ -1737,19 +1737,19 @@ Ref Skeleton3DGizmoPlugin::get_bones_mesh(Skeleton3D *p_skeleton, int point += axis * dist * 0.1; bones[0] = current_bone_idx; - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(v0); - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(point); - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(point); bones[0] = child_bone_idx; - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(v1); points[point_idx++] = point; } @@ -1758,11 +1758,11 @@ Ref Skeleton3DGizmoPlugin::get_bones_mesh(Skeleton3D *p_skeleton, int SWAP(points[1], points[2]); bones[0] = current_bone_idx; for (int j = 0; j < 6; j++) { - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(points[j]); - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(points[(j + 1) % 6]); } } break; @@ -1772,11 +1772,11 @@ Ref Skeleton3DGizmoPlugin::get_bones_mesh(Skeleton3D *p_skeleton, int for (int j = 0; j < 3; j++) { bones[0] = current_bone_idx; surface_tool->set_color(axis_colors[j]); - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(v0); - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(v0 + (p_skeleton->get_bone_global_rest(current_bone_idx).basis.inverse())[j].normalized() * dist * bone_axis_length); if (j == closest) { @@ -1789,11 +1789,11 @@ Ref Skeleton3DGizmoPlugin::get_bones_mesh(Skeleton3D *p_skeleton, int for (int j = 0; j < 3; j++) { bones[0] = child_bone_idx; surface_tool->set_color(axis_colors[j]); - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(v1); - surface_tool->set_bones(bones); - surface_tool->set_weights(weights); + surface_tool->set_bones(Vector(bones)); + surface_tool->set_weights(Vector(weights)); surface_tool->add_vertex(v1 + (p_skeleton->get_bone_global_rest(child_bone_idx).basis.inverse())[j].normalized() * dist * bone_axis_length); if (j == closest) { diff --git a/modules/gdscript/language_server/gdscript_workspace.cpp b/modules/gdscript/language_server/gdscript_workspace.cpp index 4670f64f81a..ee6ee1cef72 100644 --- a/modules/gdscript/language_server/gdscript_workspace.cpp +++ b/modules/gdscript/language_server/gdscript_workspace.cpp @@ -665,7 +665,7 @@ String GDScriptWorkspace::get_file_uri(const String &p_path) const { } // Always return file URI's with authority part (encoding drive letters with leading slash), to maintain compat with RFC-1738 which required it. - return "file:///" + String("/").join(encoded_parts); + return "file:///" + String("/").join(Vector(encoded_parts)); } void GDScriptWorkspace::publish_diagnostics(const String &p_path) { diff --git a/modules/gltf/gltf_document.cpp b/modules/gltf/gltf_document.cpp index c807f10550b..c652a3ef32c 100644 --- a/modules/gltf/gltf_document.cpp +++ b/modules/gltf/gltf_document.cpp @@ -2988,9 +2988,9 @@ Error GLTFDocument::_serialize_meshes(Ref p_state) { } } gltf_texcoord_key = vformat("TEXCOORD_%d", texcoord_i); - attributes[gltf_texcoord_key] = _encode_accessor_as_vec2(p_state, first_channel, true); + attributes[gltf_texcoord_key] = _encode_accessor_as_vec2(p_state, Vector(first_channel), true); gltf_texcoord_key = vformat("TEXCOORD_%d", texcoord_i + 1); - attributes[gltf_texcoord_key] = _encode_accessor_as_vec2(p_state, second_channel, true); + attributes[gltf_texcoord_key] = _encode_accessor_as_vec2(p_state, Vector(second_channel), true); } } { diff --git a/modules/minimp3/audio_stream_mp3.cpp b/modules/minimp3/audio_stream_mp3.cpp index 0cdbfeb7c28..48d8d273a81 100644 --- a/modules/minimp3/audio_stream_mp3.cpp +++ b/modules/minimp3/audio_stream_mp3.cpp @@ -239,7 +239,7 @@ void AudioStreamMP3::set_data(const Vector &p_data) { } Vector AudioStreamMP3::get_data() const { - return data; + return Vector(data); } void AudioStreamMP3::set_loop(bool p_enable) { diff --git a/platform/linuxbsd/wayland/wayland_thread.cpp b/platform/linuxbsd/wayland/wayland_thread.cpp index 07fade1441d..2cb182299f3 100644 --- a/platform/linuxbsd/wayland/wayland_thread.cpp +++ b/platform/linuxbsd/wayland/wayland_thread.cpp @@ -101,7 +101,7 @@ Vector WaylandThread::_read_fd(int fd) { data.resize(bytes_read + chunk_size); } - return data; + return Vector(data); } // Based on the wayland book's shared memory boilerplate (PD/CC0). diff --git a/platform/web/export/export_plugin.cpp b/platform/web/export/export_plugin.cpp index 102d536f4e1..6316538808b 100644 --- a/platform/web/export/export_plugin.cpp +++ b/platform/web/export/export_plugin.cpp @@ -172,7 +172,7 @@ void EditorExportPlatformWeb::_fix_html(Vector &p_html, const Ref godot_splash_classes; + Vector godot_splash_classes; godot_splash_classes.push_back("show-image--" + String(get_project_setting(p_preset, "application/boot_splash/show_image"))); godot_splash_classes.push_back("fullsize--" + String(get_project_setting(p_preset, "application/boot_splash/fullsize"))); godot_splash_classes.push_back("use-filter--" + String(get_project_setting(p_preset, "application/boot_splash/use_filter"))); diff --git a/scene/animation/animation_tree.cpp b/scene/animation/animation_tree.cpp index 6b9abbd1678..8a692e8f1e6 100644 --- a/scene/animation/animation_tree.cpp +++ b/scene/animation/animation_tree.cpp @@ -139,7 +139,7 @@ void AnimationNode::get_child_nodes(List *r_child_nodes) { void AnimationNode::blend_animation(const StringName &p_animation, AnimationMixer::PlaybackInfo p_playback_info) { ERR_FAIL_NULL(process_state); - p_playback_info.track_weights = node_state.track_weights; + p_playback_info.track_weights = Vector(node_state.track_weights); process_state->tree->make_animation_instance(p_animation, p_playback_info); } diff --git a/scene/debugger/scene_debugger.cpp b/scene/debugger/scene_debugger.cpp index f37ef47511f..15137457e30 100644 --- a/scene/debugger/scene_debugger.cpp +++ b/scene/debugger/scene_debugger.cpp @@ -622,7 +622,7 @@ void SceneDebugger::_send_object_ids(const Vector &p_ids, bool p_updat } if (p_update_selection) { - RuntimeNodeSelect::get_singleton()->_set_selected_nodes(nodes); + RuntimeNodeSelect::get_singleton()->_set_selected_nodes(Vector(nodes)); } if (objs_missing) { @@ -2008,7 +2008,7 @@ void RuntimeNodeSelect::_send_ids(const Vector &p_picked_nodes, bool p_i EngineDebugger::get_singleton()->send_message("remote_objects_selected", message); } - _set_selected_nodes(nodes); + _set_selected_nodes(Vector(nodes)); } void RuntimeNodeSelect::_set_selected_nodes(const Vector &p_nodes) { diff --git a/scene/gui/graph_edit.cpp b/scene/gui/graph_edit.cpp index 538771aa3e4..08070c43328 100644 --- a/scene/gui/graph_edit.cpp +++ b/scene/gui/graph_edit.cpp @@ -1615,7 +1615,7 @@ void GraphEdit::_draw_minimap_connection_line(const Vector2 &p_from_graph_positi colors.push_back(p_from_color.lerp(p_to_color, normalized_curve_position)); } - minimap->draw_polyline_colors(points, colors, 0.5, lines_antialiased); + minimap->draw_polyline_colors(points, Vector(colors), 0.5, lines_antialiased); } void GraphEdit::_update_connections() { diff --git a/scene/resources/2d/tile_set.cpp b/scene/resources/2d/tile_set.cpp index 71d74780a68..2e7c591f56e 100644 --- a/scene/resources/2d/tile_set.cpp +++ b/scene/resources/2d/tile_set.cpp @@ -6424,7 +6424,7 @@ void TileData::set_collision_polygon_points(int p_layer_id, int p_polygon_index, Vector TileData::get_collision_polygon_points(int p_layer_id, int p_polygon_index) const { ERR_FAIL_INDEX_V(p_layer_id, physics.size(), Vector()); ERR_FAIL_INDEX_V(p_polygon_index, physics[p_layer_id].polygons.size(), Vector()); - return physics[p_layer_id].polygons[p_polygon_index].polygon; + return Vector(physics[p_layer_id].polygons[p_polygon_index].polygon); } void TileData::set_collision_polygon_one_way(int p_layer_id, int p_polygon_index, bool p_one_way) { diff --git a/scene/resources/3d/convex_polygon_shape_3d.cpp b/scene/resources/3d/convex_polygon_shape_3d.cpp index 809c089e6c1..302b8d37dfe 100644 --- a/scene/resources/3d/convex_polygon_shape_3d.cpp +++ b/scene/resources/3d/convex_polygon_shape_3d.cpp @@ -65,7 +65,7 @@ Ref ConvexPolygonShape3D::get_debug_arraymesh_faces(const Color &p_mo Geometry3D::MeshData md; Error err = ConvexHullComputer::convex_hull(hull_points, md); if (err == OK) { - verts = md.vertices; + verts = Vector(md.vertices); for (int i = 0; i < verts.size(); i++) { colors.push_back(p_modulate); } diff --git a/scene/resources/3d/importer_mesh.cpp b/scene/resources/3d/importer_mesh.cpp index 1f6f8c56a59..58840739f27 100644 --- a/scene/resources/3d/importer_mesh.cpp +++ b/scene/resources/3d/importer_mesh.cpp @@ -886,7 +886,7 @@ Ref ImporterMesh::create_convex_shape(bool p_clean, bool p Geometry3D::MeshData md; Error err = ConvexHullComputer::convex_hull(vertices, md); if (err == OK) { - shape->set_points(md.vertices); + shape->set_points(Vector(md.vertices)); return shape; } else { ERR_PRINT("Convex shape cleaning failed, falling back to simpler process."); diff --git a/scene/resources/audio_stream_wav.cpp b/scene/resources/audio_stream_wav.cpp index 5f3b8a0b4e9..21cb3ed4e94 100644 --- a/scene/resources/audio_stream_wav.cpp +++ b/scene/resources/audio_stream_wav.cpp @@ -525,7 +525,7 @@ void AudioStreamWAV::set_data(const Vector &p_data) { } Vector AudioStreamWAV::get_data() const { - return data; + return Vector(data); } Error AudioStreamWAV::save_to_wav(const String &p_path) { diff --git a/scene/resources/mesh.cpp b/scene/resources/mesh.cpp index 206c58aba19..e110ba4df44 100644 --- a/scene/resources/mesh.cpp +++ b/scene/resources/mesh.cpp @@ -564,7 +564,7 @@ Ref Mesh::create_convex_shape(bool p_clean, bool p_simplif Geometry3D::MeshData md; Error err = ConvexHullComputer::convex_hull(vertices, md); if (err == OK) { - shape->set_points(md.vertices); + shape->set_points(Vector(md.vertices)); return shape; } else { ERR_PRINT("Convex shape cleaning failed, falling back to simpler process."); diff --git a/servers/rendering/renderer_rd/forward_clustered/render_forward_clustered.cpp b/servers/rendering/renderer_rd/forward_clustered/render_forward_clustered.cpp index f03804ca338..222c96ffe44 100644 --- a/servers/rendering/renderer_rd/forward_clustered/render_forward_clustered.cpp +++ b/servers/rendering/renderer_rd/forward_clustered/render_forward_clustered.cpp @@ -4426,7 +4426,7 @@ static RD::FramebufferFormatID _get_depth_framebuffer_format_for_pipeline(bool p passes.ptrw()[0].depth_attachment = 0; - return RD::get_singleton()->framebuffer_format_create_multipass(attachments, passes); + return RD::get_singleton()->framebuffer_format_create_multipass(Vector(attachments), passes); } static RD::FramebufferFormatID _get_shadow_cubemap_framebuffer_format_for_pipeline() { @@ -4438,7 +4438,7 @@ static RD::FramebufferFormatID _get_shadow_cubemap_framebuffer_format_for_pipeli attachment.usage_flags = RendererRD::LightStorage::get_cubemap_depth_usage_bits(); attachments.push_back(attachment); - return RD::get_singleton()->framebuffer_format_create(attachments); + return RD::get_singleton()->framebuffer_format_create(Vector(attachments)); } static RD::FramebufferFormatID _get_shadow_atlas_framebuffer_format_for_pipeline(bool p_use_16_bits) { @@ -4450,7 +4450,7 @@ static RD::FramebufferFormatID _get_shadow_atlas_framebuffer_format_for_pipeline attachment.usage_flags = RendererRD::LightStorage::get_shadow_atlas_depth_usage_bits(); attachments.push_back(attachment); - return RD::get_singleton()->framebuffer_format_create(attachments); + return RD::get_singleton()->framebuffer_format_create(Vector(attachments)); } static RD::FramebufferFormatID _get_reflection_probe_depth_framebuffer_format_for_pipeline() { @@ -4462,7 +4462,7 @@ static RD::FramebufferFormatID _get_reflection_probe_depth_framebuffer_format_fo attachment.usage_flags = RendererRD::LightStorage::get_reflection_probe_depth_usage_bits(); attachments.push_back(attachment); - return RD::get_singleton()->framebuffer_format_create(attachments); + return RD::get_singleton()->framebuffer_format_create(Vector(attachments)); } void RenderForwardClustered::_mesh_compile_pipeline_for_surface(SceneShaderForwardClustered::ShaderData *p_shader, void *p_mesh_surface, bool p_ubershader, bool p_instanced_surface, RS::PipelineSource p_source, SceneShaderForwardClustered::ShaderData::PipelineKey &r_pipeline_key, Vector *r_pipeline_pairs) { diff --git a/servers/rendering/renderer_rd/forward_mobile/render_forward_mobile.cpp b/servers/rendering/renderer_rd/forward_mobile/render_forward_mobile.cpp index 5106db267c3..7c0372d924b 100644 --- a/servers/rendering/renderer_rd/forward_mobile/render_forward_mobile.cpp +++ b/servers/rendering/renderer_rd/forward_mobile/render_forward_mobile.cpp @@ -3097,7 +3097,7 @@ static RD::FramebufferFormatID _get_shadow_cubemap_framebuffer_format_for_pipeli attachment.usage_flags = RendererRD::LightStorage::get_cubemap_depth_usage_bits(); attachments.push_back(attachment); - return RD::get_singleton()->framebuffer_format_create(attachments); + return RD::get_singleton()->framebuffer_format_create(Vector(attachments)); } static RD::FramebufferFormatID _get_shadow_atlas_framebuffer_format_for_pipeline(bool p_use_16_bits) { @@ -3109,7 +3109,7 @@ static RD::FramebufferFormatID _get_shadow_atlas_framebuffer_format_for_pipeline attachment.usage_flags = RendererRD::LightStorage::get_shadow_atlas_depth_usage_bits(); attachments.push_back(attachment); - return RD::get_singleton()->framebuffer_format_create(attachments); + return RD::get_singleton()->framebuffer_format_create(Vector(attachments)); } void RenderForwardMobile::_mesh_compile_pipeline_for_surface(SceneShaderForwardMobile::ShaderData *p_shader, void *p_mesh_surface, bool p_instanced_surface, RS::PipelineSource p_source, SceneShaderForwardMobile::ShaderData::PipelineKey &r_pipeline_key, Vector *r_pipeline_pairs) {