2013-09-29 3 views
1

나는 사용하여 내 객체를 추려 : 내 개체에 파란색 재료를 설정할 때이 표시OpenGL을 FRONT_AND_BACK

fx.g.glEnable(GL10.GL_CULL_FACE); 
fx.g.glCullFace(GL10.GL_BACK); 

을하지만 회색에 대한 :

fx.g.glMaterialfv(GL10.GL_BACK, GL10.GL_AMBIENT, ambient, 0); 
fx.g.glMaterialfv(GL10.GL_BACK, GL10.GL_DIFFUSE, diffuse, 0); 
fx.g.glMaterialfv(GL10.GL_BACK, GL10.GL_SPECULAR, specular, 0); 
fx.g.glMaterialfv(GL10.GL_BACK, GL10.GL_SHININESS, Ns, 0); 

fx.g.glMaterialfv(GL10.GL_FRONT, GL10.GL_AMBIENT, ambient, 0); 
fx.g.glMaterialfv(GL10.GL_FRONT, GL10.GL_DIFFUSE, diffuse, 0); 
fx.g.glMaterialfv(GL10.GL_FRONT, GL10.GL_SPECULAR, specular, 0); 
fx.g.glMaterialfv(GL10.GL_FRONT, GL10.GL_SHININESS, Ns, 0); 

파란색은

fx.g.glMaterialfv(GL10.GL_FRONT_AND_BACK, GL10.GL_AMBIENT, ambient, 0); 
fx.g.glMaterialfv(GL10.GL_FRONT_AND_BACK, GL10.GL_DIFFUSE, diffuse, 0); 
fx.g.glMaterialfv(GL10.GL_FRONT_AND_BACK, GL10.GL_SPECULAR, specular, 0); 
fx.g.glMaterialfv(GL10.GL_FRONT_AND_BACK, GL10.GL_SHININESS, Ns, 0); 

ambient/diffuse/specular 및 ns에 대해 동일한 값을 사용합니다.

왜 이렇게 될지 아이디어가 있으십니까? GL_FRONT와 GL_BACK 자료는 모두 무시되지만 GL_FRONT_AND_BACK은 완벽하게 작동합니다. 성능상의 문제인지, 아니면 다른 곳에서 버그가 있다는 뜻인지는 확실하지 않습니다!

답변

2

은 모두 GL_FRONTGL_BACK 재료가 완전히

Working as intended을 무시하는 것 같다

face : 얼굴이나 얼굴이 업데이트됩니다 지정합니다. GL_FRONT_AND_BACK이어야합니다.

+0

글쎄, 확실히 무슨 일이 일어나고있는 것 같아요, 아마도 내 자습서 내 OpenGL 버전과 일치해야합니다! http://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml에서 다른 것을 보여줍니다. 응답을위한 Ta. –

+0

글쎄, 그래. 연결된 문서는 [OpenGL ES 1.x]가 아닌 [OpenGL 2.x] (http://www.opengl.org/registry/doc/glspec21.20061201.pdf) 용입니다 (http : // www. khronos.org/registry/gles/specs/1.1/es_full_spec_1.1.12.pdf). 외모에도 불구하고 (때로는 크게!) 다릅니다. – genpfault