-
Notifications
You must be signed in to change notification settings - Fork 427
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
--[Bugfix/Refactor]-PBR Skin Rendering Prep/Bugfixes. #2222
Conversation
58cd8f3
to
85a95d2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Left some very minor comments.
Corrade::Containers::arrayResize(jointTransformations_, jointCount); | ||
} | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As discussed, there is a transform issue when projecting the environment map.
For reference, see the mirror in this video.
pbr_test-2023-10-02_11.50.20.mp4
01dc1a8
to
4dabed9
Compare
I'm reverting the changes to the PBR shader using camera space vs world space until this issue with IBl being calculated in camera space can be addressed properly. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! The issue is fixed with the latest iteration.
--promote shader key derivation to base Drawable --move ownership of lightSetup and skinData to base Drawable.
The visual artifacts from turning off backface culling seem to have been addressed with the changes in the new PBR shader.
Removes unnecessary calculations separating and recombining Model and View matrices every draw. NOT WORKING : IBL contributions need to be calculated in World space so that reflections are correct.
This reverts commit b1de9d2.
c04537e
to
edf8038
Compare
Motivation and Context
This PR addresses the following issues/refactors :
The PBR shaders were originally implemented to perform calculations in model space, while the Phong and Flat shaders work in Camera space (ModelView transform). This caused the PBR shader to perform many redundant matrix multiplications unnecessarily. This distinction has been removed, and now PBR operates in Camera space, just like Phong and Flat shaders.This change is temporarily reverted until a reasonable solution to calculating IBL properly in camera space can be derived.How Has This Been Tested
All c++ and python tests pass locally
Types of changes
Checklist