mirror of
https://github.com/JulianGro/overte.git
synced 2025-04-15 21:36:59 +02:00
Merge pull request #3199 from ey6es/master
Fix for shadows in close-up inset mirror.
This commit is contained in:
commit
f05855dcc2
1 changed files with 12 additions and 0 deletions
|
@ -2982,6 +2982,13 @@ void Application::renderRearViewMirror(const QRect& region, bool billboard) {
|
|||
attachment->setTranslation(attachment->getTranslation() + delta);
|
||||
}
|
||||
|
||||
// and lo, even the shadow matrices
|
||||
glm::mat4 savedShadowMatrices[CASCADED_SHADOW_MATRIX_COUNT];
|
||||
for (int i = 0; i < CASCADED_SHADOW_MATRIX_COUNT; i++) {
|
||||
savedShadowMatrices[i] = _shadowMatrices[i];
|
||||
_shadowMatrices[i] = glm::transpose(glm::transpose(_shadowMatrices[i]) * glm::translate(-delta));
|
||||
}
|
||||
|
||||
displaySide(_mirrorCamera, true);
|
||||
|
||||
// restore absolute translations
|
||||
|
@ -2990,6 +2997,11 @@ void Application::renderRearViewMirror(const QRect& region, bool billboard) {
|
|||
for (int i = 0; i < absoluteAttachmentTranslations.size(); i++) {
|
||||
_myAvatar->getAttachmentModels().at(i)->setTranslation(absoluteAttachmentTranslations.at(i));
|
||||
}
|
||||
|
||||
// restore the shadow matrices
|
||||
for (int i = 0; i < CASCADED_SHADOW_MATRIX_COUNT; i++) {
|
||||
_shadowMatrices[i] = savedShadowMatrices[i];
|
||||
}
|
||||
} else {
|
||||
displaySide(_mirrorCamera, true);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue