godotengine / godotengine/godot
RenderingServer.MeshSurfaceUpdateVertexRegion (mesh_surface_update_vertex_region) doesnt work after first iteration of process C#
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
Reproducible in 4.3 stable and Godot Engine v4.4.dev6.mono.official not sure when it was introduced.
### System information
Godot v4.4.dev6.mono - Windows 10.0.19045 - Multi-window, 2 monitors - Vulkan (Forward+) - dedicated AMD Radeon RX 6700 XT (Advanced Micro Devices, Inc.; 32.0.11027.1003) - AMD Ryzen 5 5600X 6-Core Processor (12 threads)
### Issue description
RenderingServer.MeshSurfaceUpdateVertexRegion doesnt work after the first frame i attached a small project file that will use it to update a mesh to one of the blend shapes based on an influence. the issue is that it only updates the mesh to its blendshape if its called at the start of process, and subsequent updates after the first frame dont work dont work. I can update it as many times as i want during the first frame but after that it no longer works.
### Steps to reproduce
Open Mrp press run scene button
make sure you run the node_3d.tscn scene
You should see a cube against a gray background

uncomment blendupdate(3) and it will update the mesh. if its left commented it wont update the mesh.
### Minimal reproduction project (MRP)
[new-game-project - Copy.zip](https://github.com/user-attachments/files/18141940/new-game-project.-.Copy.zip)
Contributor guide
Research direction
Open the attached minimal reproduction project and run the node_3d.tscn scene, then compare behavior with blendupdate(3) commented and uncommented. Start at RenderingServer.MeshSurfaceUpdateVertexRegion and the process update path. Done means the mesh continues updating on subsequent frames, not only during the first frame.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- computer-graphics, game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100