zomag Hi, I'm new to godot. I try to use viewport to do alpha mask for another node2d drawing. My scene is like the above. the TEST is node2d. I use _draw() function on every update to draw a live drawing. I want to use viewport (VP) which has node2d name Mask to draw an alpha mask. This drawing also use _draw() and update always. Then in TEST script I take viewport image (that Mask drawing) and pass into simple shader. Everything work fine but when I add another drawing in TEST the mask become duplicate. That is wierd for me. code in TEST: code in Mask: Run result: Shader code: Everything ok but when I add another drawing in TEST like this: The result become double mask. The size also wrong? Download the full godot project HERE