텍스처가있는 간단한 개체를 표시하고 내 장면에서 스포트 라이트를 사용하려고합니다. 나는 GLKBaseEffect's
질감 & 빛을 사용합니다.GLKBaseEffect : light + textures
텍스처가 비활성화 된 경우 - 조명 효과를 볼 수 있습니다 (객체를 회전하면 부분적으로 어두워 짐). 그러나 텍스처를 활성화하면 (GLKTextureInfo
으로로드하고 -(void)glkView:drawInRect:
에 바인딩) - 조명 효과가 사라집니다.
Google에서 검색하고 Apple의 설명서를 다시 읽으려고했지만 여전히 답을 찾을 수 없습니다.
는 UPDATE : - 빛이 어떻게 든 사용할 수 없게됩니다
_effect.lightingType = GLKLightingTypePerPixel;
_effect.lightModelAmbientColor = GLKVector4Make(.3f, .3f, .3f, 1);
_effect.colorMaterialEnabled = GL_TRUE;
_effect.light0.enabled = GL_TRUE;
_effect.light0.spotCutoff = [[PRSettings instance] floatForKey:PRSettingsKeyLightSpotCutoff];
_effect.light0.spotExponent = [[PRSettings instance] floatForKey:PRSettingsKeyLightExponent];
_effect.light0.diffuseColor = _effect.light0.specularColor = GLKVector4Make(1, 1, 1, 1);
_effect.light0.position = GLKVector4Make(0, 0, 0, 1);
[_effect prepareToDraw];
내가 두 번이 코드를 호출하는 경우 : 여기
내가 설정의 빛을 사용하는 코드입니다. 텍스처 없이도 - 두 번째 호출 - 나는 전혀 빛이 없습니다.