当我使用以下代码时:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 6);
然后我启用多重采样,我注意到我的程序不再关心最大 mip 级别。
编辑:它也会渲染最后的 miplevel,这就是问题所在,我不希望它们被渲染。
Edit3: 我测试并确认它根本不会忘记 mip 限制,所以它确实遵循我的 GL_TEXTURE_MAX_LEVEL 设置。...所以问题与 mipmap 无关,我猜...
Edit2:截图,这是世界地图被缩小了很多,使用低角度使效果显示最差,地图下面还有渲染的水平面,所以不可能从地图以外的任何地方获取黑色像素纹理:
替代文字 http://img511.imageshack.us/img511/6635/multisamplingtexturelim.png
Edit4:所有这些图片都应该看起来像右上角的图片(只是边缘更平滑,具体取决于多重采样)。但显然我的代码中有一些可怕的错误。我必须使用 mipmap,mipmap 不是问题,它们工作得很好。
我做错了什么,或者我该如何解决这个问题?