Fix shadowMap vertical keylight edge case

This commit is contained in:
Zach Pomerantz 2016-01-19 12:01:40 -08:00
parent 398f83be3f
commit 387a14b6b1

View file

@ -28,6 +28,8 @@ void LightStage::Shadow::setKeylightFrustum(ViewFrustum* viewFrustum, float near
glm::quat orientation;
if (direction == IDENTITY_UP) {
orientation = glm::quat(glm::mat3(IDENTITY_RIGHT, IDENTITY_UP, IDENTITY_FRONT));
} else if (direction == -IDENTITY_UP) {
orientation = glm::quat(glm::mat3(-IDENTITY_RIGHT, -IDENTITY_UP, IDENTITY_FRONT));
} else {
auto side = glm::normalize(glm::cross(direction, IDENTITY_UP));
auto up = glm::normalize(glm::cross(side, direction));