Last update: 2014/11/14
OpenGL (Cocos2d-x) SDK2.0.03_1より
Androidの一部機種で起きていた問題に対応しました
Androidの一部機種で起きていた問題に対応するために
Cocos2dxサンプルコードに以下のコードを追加しました
-
ifdef L2D_TARGET_ANDROID_ES2
-
char *exts = (char*)glGetString(GL_EXTENSIONS);
-
if(strstr(exts, "GL_NV_shader_framebuffer_fetch ")){
-
live2d::DrawParam_AndroidES2::setExtShaderMode( true , true );
-
}
-
#endif
重要な追加は4行目の live2d::DrawParam_AndroidES2::setExtShaderMode( true , true ); で、これはシェーダを切り替える関数です
第1引数:この問題に対応するためにシェーダを切り替えるかどうかを設定するフラグ
第2引数:シェーダを切り替えた際にPremultipliedAlphaを有効にするかどうかを設定するフラグ
※PremultipliedAlphaの設定とsetPremultipliedAlpha()の設定はそろえてください
|