diff --git a/enginecustom/applicationclass.cpp b/enginecustom/applicationclass.cpp index 5466f30..afeb080 100644 --- a/enginecustom/applicationclass.cpp +++ b/enginecustom/applicationclass.cpp @@ -727,7 +727,7 @@ bool ApplicationClass::Render(float rotation, float x, float y, float z) } // Construct the frustum. - m_Frustum->ConstructFrustum(viewMatrix, projectionMatrix, SCREEN_DEPTH, m_screenWidth, m_screenHeight); + m_Frustum->ConstructFrustum(viewMatrix, projectionMatrix, SCREEN_DEPTH); // Get the number of models that will be rendered. modelCount = m_ModelList->GetModelCount(); diff --git a/enginecustom/frustumclass.cpp b/enginecustom/frustumclass.cpp index 042ca36..7f3f2ab 100644 --- a/enginecustom/frustumclass.cpp +++ b/enginecustom/frustumclass.cpp @@ -15,22 +15,12 @@ FrustumClass::~FrustumClass() { } -void FrustumClass::ConstructFrustum(XMMATRIX viewMatrix, XMMATRIX projectionMatrix, float screenDepth, float screenWidth, float screenHeight) +void FrustumClass::ConstructFrustum(XMMATRIX viewMatrix, XMMATRIX projectionMatrix, float screenDepth) { XMMATRIX finalMatrix; XMFLOAT4X4 projMatrix, matrix; float zMinimum, r, t; - // Augmenter la taille de la zone de frustum en fonction de la taille de l'écran - float fov = XM_PI / 4.0f; // Champ de vision, généralement pi/4 - float aspect = screenWidth / screenHeight; // Rapport d'aspect, généralement largeur/hauteur - float znear = screenDepth / 2.0f; // Plan proche, généralement la moitié de la profondeur de l'écran - float zfar = screenDepth * 2.0f; // Plan éloigné, généralement deux fois la profondeur de l'écran - - // Créer une nouvelle matrice de projection avec les nouvelles valeurs - XMMATRIX newProjectionMatrix = XMMatrixPerspectiveFovLH(fov, aspect, znear, zfar); - - // Load the projection matrix into a XMFLOAT4X4 structure. XMStoreFloat4x4(&projMatrix, projectionMatrix); diff --git a/enginecustom/frustumclass.h b/enginecustom/frustumclass.h index 1730ffd..6d3e3d0 100644 --- a/enginecustom/frustumclass.h +++ b/enginecustom/frustumclass.h @@ -19,7 +19,7 @@ public: FrustumClass(const FrustumClass&); ~FrustumClass(); - void ConstructFrustum(XMMATRIX, XMMATRIX, float, float, float); + void ConstructFrustum(XMMATRIX, XMMATRIX, float); bool CheckPoint(float, float, float); bool CheckCube(float, float, float, float);