0
我在OpenGL 1.1燈光方面遇到問題。我的代碼適用於iPhone 4,但不適用於iPhone 3G。一切都顯得不亮(平淡的顏色)。我沒有3GS,因此我無法確定它是否適用於該3GS。在iPhone 4/iPad上工作的OpenGL燈光,不在iPhone 3G上
這裏是我的燈光設置:
- (void)setupLighting
{
const GLfloat lightAmbient[] = {0.2, 0.2, 0.2, 1.0};
const GLfloat matAmbient[] = {0.6, 0.6, 0.6, 1.0};
const GLfloat matDiffuse[] = {1.0, 1.0, 1.0, 1.0};
const GLfloat matSpecular[] = {0.6, 0.6, 0.6, 0.1};
const GLfloat lightPosition[] = {0.0, 0.0, 0.0, 0.0};
const GLfloat lightShininess = 100.0;
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, matAmbient);
glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, matDiffuse);
glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, matSpecular);
glMaterialf(GL_FRONT_AND_BACK, GL_SHININESS, lightShininess);
glLightfv(GL_LIGHT0, GL_AMBIENT, lightAmbient);
glLightfv(GL_LIGHT0, GL_POSITION, lightPosition);
glShadeModel(GL_SMOOTH);
NSLog(@"Lighting sorted");
}
我公司供應的法向量等等之後,它成功地呈現在較新的iPhone。不過,我真的想支持所有三種iPhone手機。 (它也適用於iPad)。