extends Node ## Generate "bleed" textures so UV seams don't appear on painted meshes. @onready var _mesh_instance : MeshInstance3D = $UVViewport/MeshInstance3D @onready var _uv_viewport : SubViewport = $UVViewport @onready var _seams_viewport : SubViewport = $SeamsViewport @onready var _seams_rect : TextureRect = $SeamsViewport/SeamsRect func generate(mesh : Mesh) -> ViewportTexture: _mesh_instance.mesh = mesh _uv_viewport.render_target_update_mode = SubViewport.UPDATE_ONCE await RenderingServer.frame_post_draw var uv_mask := _uv_viewport.get_texture() _seams_rect.texture = uv_mask _seams_viewport.render_target_update_mode = SubViewport.UPDATE_ONCE await RenderingServer.frame_post_draw return _seams_viewport.get_texture()