Normal Mapping displays incorrect in Compatibility mode
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- cpp
- Domain
- computer-graphics
Research direction
Start with the minimal reproduction project and compare the skinned mesh’s normal mapping in Compatibility and Forward+ modes, including the unrigged export. The issue points to normal-tangent basis generation for skinned meshes, but names no source files or tests; first trace that rendering path and check how bone transforms affect the basis. Done means animated, rigged meshes show matching normal-map behavior in Compatibility and Forward+.
Written by the indexing model from the issue text.
Description
Tested versions
Redot 4.4, Redot 26.3 stable, Godot 4.6.1
System information
Windows 10 - Geforce GTX 1660 - 16 GB ram - Intel Core I5 - Redot 26.3 Stable
Issue description
The skinned mesh renderer doesn't properly generate normal-tangent basis in Compatibility render mode. Meaning that normal bump mapping on bone animated characters doesn't look correct. Coordinate axes look to be flipped and not updated properly according to bone transforms
Video in Compatibility mode:
https://github.com/user-attachments/assets/50905a33-3dec-4e30-8e28-9fd18cccbc0e
Normal behavior in Forward+:
https://github.com/user-attachments/assets/a4ef34a7-7312-4618-a7f1-be8f171f105a
Picture, Compatibility:
Picture of desired behavior, Forward+:
Steps to reproduce
Import any character or mesh object with a skeletal rig and normal bump shader. Compare the results between Forward+ and Compatibility (also with same object, but exported without a rig). Ideally in a lit scene and with animated mesh (though issue should be evident even in rest pose)
The example assets with a scene:
normal map test.zip
Minimal reproduction project (MRP)
- Dominant language
- C++
- Stars
- 6.1k
- Forks
- 337
- Avg merge
- 1d 51m
- Merged PRs (30d)
- 41
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 topic:worldscape usability
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Redot-Engine/redot-engine#1556 · 3 comments ·
Maintainers usually reply within 1 day
-
bug topic:3d topic:editor usability
Difficulty 3/5 1-2 days Newbie friendliness 48/100
Redot-Engine/redot-engine#1554 ·
Maintainers usually reply within 1 day
-
bug topic:animation
Difficulty 3/5 1-2 days Newbie friendliness 54/100
Redot-Engine/redot-engine#1552 · 3 comments ·
Maintainers usually reply within 1 day
-
AnimationTree does not respect AnimationPlayer's speed_scale or the AnimationClip's update modeOpenbug topic:animation
Difficulty 4/5 3-5 days Newbie friendliness 45/100
Redot-Engine/redot-engine#1551 ·
Maintainers usually reply within 1 day
-
bug topic:editor topic:rendering
Difficulty 5/5 Over a week Newbie friendliness 35/100
Redot-Engine/redot-engine#1550 ·
Maintainers usually reply within 1 day
All issues in Redot-Engine/redot-engine
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
[BUG] Failed archive extraction deletes the dataset cachePossibly taken @dajiaohuang claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
alibaba/GraphScope#4674 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 93/100
webarkit/WebARKitLib#107 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
ONLYOFFICE/DesktopEditors#2527 ·
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
HEL3AN/econspace-mmo#529 ·
Maintainers usually reply within 1 day