2012-06-15 60 views
1

我正在編寫一個C++簡單應用程序,以找出爲什麼我無法使用「GL_Texture_2D」作爲texture_target顯示任何NPOT紋理。在某些時候,我需要生成一些Mipmap,因此使用矩形紋理的 不是一個選項。無法使用OpenGL顯示NPOT紋理

我正在運行Win7 Pro(x64),Intel i7-2600K CPU,8GB RAM,NVIDIA Quadro 600.我的quadro的驅動程序是296.35,它支持OpenGL 4.2。

1工作版本 當使用「默認」紋理時,它運行平穩並顯示任何NPOT紋理。

glBindTexture(target = GL_TEXTURE_2D, texture = 0) 

2破碎版本 因爲,我需要更多的1和質感,我需要得到他們的「名字」。 當我們試圖綁定一個已命名的紋理,調用glGenTexture並將該紋理用於glBindTexture時,我所得到的只是一個白色的矩形。

glGenTextures(n = 1, textures = &2) 
glBindTexture(target = GL_TEXTURE_2D, texture = 2) 

我敢肯定,我的硬件支持NPOT質感,我檢查的OpenGL擴展和「GL_ARB_texture_non_power_of_two」中列出。此外,我正在使用,而不是典型的Windows版本。

我也要求對NVIDIA的論壇這個問題,in this post你會發現這兩個日誌文件

+0

矩形紋理與NPOT紋理無關。 – Luca

回答