我想使用GLKBaseEffect为我的3DModel着色。 我创建了GLKBaseEffect的示例
GLKBaseEffect effect;
当我设置OpenGL时,我写道:
effect = new GLKBaseEffect();
当我画出我的身材时,我会使用效果:
effect.Light0.SpecularColor = new Vector4 (2.5f, 2.5f, 2.5f, 0.1f);
effect.UseConstantColor = true;
effect.Transform.ModelViewMatrix = modelViewMatrix;
effect.PrepareToDraw ();
我使用ConstantColor设置颜色:
effect.ConstantColor = new Vector4(1.0f, 1.0f, 0.0f, 1.0f);
但模型中的颜色不会改变。我错过了什么?
答案 0 :(得分:0)
我能想到两个原因。我现在正在学习OpenGL ES 2.0,我的答案仅限于我刚学到的内容。
首先,也许你的绘图发生在设置基础效果之前。
其次,在您绘制之前,您设置基本效果的上下文可能不会成为当前上下文。