mirror of
https://github.com/libsdl-org/SDL.git
synced 2025-09-05 19:08:12 +00:00
Fixed the perspective matrix calculation (thanks @KonkolyTamas!)
Fixes https://github.com/libsdl-org/SDL/issues/13867
This commit is contained in:
@@ -97,7 +97,7 @@ static SDL_FPoint ProjectVec3ToRect(const Vector3 *v, const SDL_FRect *rect)
|
||||
const float cameraZ = 4.0f; /* Camera is at(0, 0, +4), looking toward origin */
|
||||
float aspect = rect->w / rect->h;
|
||||
|
||||
float fovScaleY = SDL_tanf((verticalFOV_deg * SDL_PI_F / 180.0f) * 0.5f);
|
||||
float fovScaleY = SDL_tanf(((verticalFOV_deg / 180.0f) * SDL_PI_F) * 0.5f);
|
||||
float fovScaleX = fovScaleY * aspect;
|
||||
|
||||
float relZ = cameraZ - v->z;
|
||||
|
@@ -179,7 +179,7 @@ perspective_matrix(float fovy, float aspect, float znear, float zfar, float *r)
|
||||
int i;
|
||||
float f;
|
||||
|
||||
f = 1.0f / SDL_tanf(fovy * 0.5f);
|
||||
f = 1.0f / SDL_tanf((fovy / 180.0f) * SDL_PI_F * 0.5f);
|
||||
|
||||
for (i = 0; i < 16; i++) {
|
||||
r[i] = 0.0;
|
||||
|
@@ -133,7 +133,7 @@ perspective_matrix(float fovy, float aspect, float znear, float zfar, float *r)
|
||||
int i;
|
||||
float f;
|
||||
|
||||
f = 1.0f/SDL_tanf(fovy * 0.5f);
|
||||
f = 1.0f/SDL_tanf((fovy / 180.0f) * SDL_PI_F * 0.5f);
|
||||
|
||||
for (i = 0; i < 16; i++) {
|
||||
r[i] = 0.0;
|
||||
|
Reference in New Issue
Block a user