[英]SDL Multisampling
我一直在尝试使用多重采样工作的SDL FSAA,但它不想这样做。
我从简单的开始:
SDL_GL_SetAttribute(SDL_GL_MULTISAMPLEBUFFERS,1); SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES,2);
但我做了相关的获取,它为缓冲区返回0,为样本返回1。 (在SetVideo之前和之后)。
我在我的GeForce 280M上都试过了,怀疑它是一个移动问题,在我的580上尝试过它也没有运气。
我正在运行带有最新驱动程序的Windows 7。
如果我在NVidia控制面板中强制启用FSAA,它可以很好地工作,但我似乎无法让应用程序启用它。
有任何想法吗?
这些函数应该返回0或-1。 他们永远不应该返回1。 。 。 所以我不知道那里发生了什么。 某些其他功能的返回值是多少?
无论如何,重要的是要注意这些是请求 。 不能保证它们是你认为的那样。 这就是SDL_GL_GetAttribute函数存在的原因(在SDL_SetVideoMode之后调用它来查看你得到了什么)。
您正在请求一个多重采样缓冲区,每个像素有两个样本。 这不是一个非常大量的多重采样。 在SDL_SetVideoMode之前,请尝试以下操作:
SDL_GL_SetAttribute(SDL_GL_MULTISAMPLEBUFFERS, 1);
SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES,16);
如果你看到平滑的边缘,不要担心它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.