Android +NDK+eclipse+opengl ES2.0 开启深度测试
参考:https://www.opengl.org/discussion_boards/showthread.php/172736-OpenGL-ES-Depth-Buffer-Problem
环境:eclipse,ndkr8,opengl es2.0,android
最近使用eclipse和NDK进行android opengl es2.0的开发,发现了绘制的物体显示与深度无关,而与绘制的前后顺序有关。想了一下,应该是深度测试没有开启,开启了glEnable(GL_DEPTH_TEST),但是发现深度测试还是不起作用。网上查询了一下,原因是eclipse创建的窗口没有开启深度测试。
setEGLConfigChooser( translucent ? new ConfigChooser(8, 8, 8, 8, depth, stencil) : new ConfigChooser(5, 6, 5, 0, depth, stencil) );//depth和setencil需要设置为1
设置后,绘制的物体前后顺序果然与深度有关了。
总结一下开启深度测试:
(1)首先用于绘制的窗口得设置支持深度测试
(2)opengl es2.0的代码中,得开启深度测试(glEnable(GL_DEPTH_TEST))
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。