Support AtlasTexture regions in AnimatedTexture direct RID consumers
Maintainers usually reply within 1 day
@DaveTheEggman is already working on this.
Since Oct 2, 2026.
Assessment
This issue has not been assessed yet.
Description
Summary
Support AtlasTexture frames in AnimatedTexture when a consumer uses AnimatedTexture::get_rid() directly.
PR #1467 fixes use through the Texture2D drawing API by forwarding draw(), draw_rect(), and draw_rect_region() to the current frame texture. Direct RID support is intentionally outside that PR's scope.
The existing proxy receives the current frame texture's RID. For an AtlasTexture, that RID represents the underlying atlas image, not the selected region. Direct RID consumers therefore do not receive the cropped frame.
Required changes
- Investigate a rendering-side representation that preserves the selected
AtlasTextureregion for direct RID consumers. - Update
AnimatedTextureproxy handling to use that representation when appropriate. - Preserve existing behavior for ordinary
Texture2Dframes and the drawing API. - Document the supported behavior and any remaining limitations.
- Add regression coverage or a reproducible validation project for direct RID use across frame changes.
Affected areas
scene/resources/animated_texture.cpp:AnimatedTexture::_update_proxy()andAnimatedTexture::get_rid().- RenderingServer texture proxy handling and the relevant rendering backends, as identified during investigation.
doc/classes/AnimatedTexture.xml.
Acceptance criteria
- A direct RID consumer displays the selected atlas region rather than the full atlas image.
- Switching between AtlasTexture frames updates the displayed region correctly.
- Ordinary texture frames and Texture2D drawing API use continue to work.
- Validation covers frames with different atlas regions and documents any unsupported AtlasTexture features.
Context
Requested by @DaveTheEggman as a separate follow-up.
- Dominant language
- C++
- Stars
- 6.1k
- Forks
- 337
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 39
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Redot-Engine/redot-engine
-
bug needs testing usability
Difficulty 5/5 Over a week Newbie friendliness 20/100
Redot-Engine/redot-engine#1514 · 3 comments ·
Maintainers usually reply within 1 day
-
bug confirmed topic:gdscript usability
Difficulty 4/5 3-5 days Newbie friendliness 42/100
Redot-Engine/redot-engine#1482 ·
Maintainers usually reply within 1 day
-
Cherry-Pick: Mesh LibraryPossibly taken @DaveTheEggman claimed this 12 days ago. Opencherrypick tracker
Redot-Engine/redot-engine#1473 · 2 assignees ·
Maintainers usually reply within 1 day
-
26.3.rc.2 – Editor UI – "Terrain Assets" dock lacks a tooltip and keyboard shortcutPossibly taken @OldDev78 claimed this 11 days ago. Openconfirmed enhancement feature proposal topic:worldscape
Redot-Engine/redot-engine#1469 · 1 assignee ·
Maintainers usually reply within 1 day
-
crash needs testing topic:3d
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Redot-Engine/redot-engine#1440 · 2 comments ·
Maintainers usually reply within 1 day
All issues in Redot-Engine/redot-engine
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
FriendsofECCE/ECCE#336 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
bitcoin-core/gui-qml#1030 ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
tesseract-robotics/tesseract#1384 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
NVIDIA/nccl-extensions#26 ·