显示背影与背面剔除相互冲突问题
近期开发产品遇到的问题:
有一个三维模型渲染时玻璃显示一条一条的横线,matcap材质,经调研发现是因为渲染三角面片时未开启背面期初导致,具体为什么需要开启背面剔除不太清楚;
后来发现开启背面剔除后再开启阴影,会导致整体变成灰色或者其他渲染不正确,经调研发现,渲染阴影时也开启了背面剔除,同时设置背面剔除为剔除前面,具体代码为
GL.enable(GL_CULL_FACE);
GL.cullFace(GL_FRONT);
渲染三角面片时,只是开启了背面剔除,所以显示不正确,最后解决方案:渲染三角面片时开启背面剔除并设置为BACK
GL.enable(GL_CULL_FACE);
GL.cullFace(GL_BACK);