mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-08-09 15:43:08 +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);
|
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);
|
displaySide(_mirrorCamera, true);
|
||||||
|
|
||||||
// restore absolute translations
|
// restore absolute translations
|
||||||
|
@ -2990,6 +2997,11 @@ void Application::renderRearViewMirror(const QRect& region, bool billboard) {
|
||||||
for (int i = 0; i < absoluteAttachmentTranslations.size(); i++) {
|
for (int i = 0; i < absoluteAttachmentTranslations.size(); i++) {
|
||||||
_myAvatar->getAttachmentModels().at(i)->setTranslation(absoluteAttachmentTranslations.at(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 {
|
} else {
|
||||||
displaySide(_mirrorCamera, true);
|
displaySide(_mirrorCamera, true);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue