2016-08-21 87 views
-2

我正在使用Visual Studio 2015社區版,並且在發佈配置中編譯時有一個奇怪的錯誤(該錯誤未顯示在調試配置中)。 其實我使用opengl來創建一個陰影貼圖,然後渲染場景。正如我所說的,在調試配置上編譯陰影會被渲染。 但是在發佈配置中,它只是渲染場景而沒有陰影。C++ OpenGL與Visual Studio發佈 - 配置 - Bug

我在網上搜索了一下,發現了一些關於錯誤配置的信息。 但我沒有經驗玩弄配置。 (我不想摧毀一切;)) 有人可以幫助我嗎?

+0

明確UB類的實例變量/單位變量。 Plz發佈你的代碼 –

+0

這是一個快速的...我的LightPlane-Class的構造函數有一個參數沒有名稱...所以它使用了「遠程變量的類實例...謝謝你!沒有你的建議,我沒有看到參數;) – TreCore

+1

我認爲如果你發佈了一個明確的答案給你自己的問題(這是鼓勵),所以SO讀者會很高興,我沒有正確回答類似的「調試OK /釋放KO「的問題! –

回答

0

我的輕型飛機-類的構造函數有一個參數,它早已不是一個名字......所以它已經使用了「遠」,這是不是intialized

LightPlane::LightPlane(glm::vec3& position, glm::vec3& lookAt, glm::vec3& up, GLfloat near, 
         GLfloat far, GLfloat fov, GLfloat aspect) { 
         //the "far"-parameter wasn't named 
    this->far = far; 
    this->near = near; 
    this->position = position; 
    this->fov = fov; 
    view = glm::lookAt(position, lookAt, up); 
    projection = glm::perspective(fov, aspect, near, far); 
}