@@ -69,7 +69,7 @@ auto Camera::getView() const -> glm::mat4 {
69
69
}
70
70
71
71
auto Camera::getProj () const -> glm::mat4 {
72
- return glm::perspective (fovY, aspect, zNear, zFar);
72
+ return glm::perspective (fovY, aspect, zNear * scale , zFar * scale );
73
73
}
74
74
75
75
auto Camera::getInvView () const -> glm::mat4 {
@@ -83,12 +83,14 @@ auto Camera::getInvProj() const -> glm::mat4 {
83
83
auto Camera::getPosition () const -> glm::vec3 {
84
84
if (type == Type::FirstPerson) {
85
85
auto & _params = std::get<FirstPersonParams>(params);
86
- return _params.position ;
86
+ return _params.position * scale ;
87
87
} else {
88
88
auto & _params = std::get<OrbitalParams>(params);
89
89
glm::mat4 rotX = glm::rotate (eulerRotation.x , glm::vec3 (1 , 0 , 0 ));
90
90
glm::mat4 rotY = glm::rotate (eulerRotation.y , glm::vec3 (0 , 1 , 0 ));
91
- return _params.target + glm::vec3{rotY * rotX * glm::vec4{0 , 0 , _params.distance , 1 }};
91
+ glm::vec3 position =
92
+ _params.target + glm::vec3{rotY * rotX * glm::vec4{0 , 0 , _params.distance , 1 }};
93
+ return position * scale;
92
94
}
93
95
}
94
96
0 commit comments