なにやらあらぬ誤解が広まっている(?)ようなので書いてみる。 何かというと、iPhoneではアルファブレンディングがおかしいんじゃないか、という話。 もちろん全くそんなことはないんですが、恐らく全ての元凶はこれ。 image = [UIImage imageNamed:@"Sprite.png"].CGImage; width = CGImageGetWidth(image); height = CGImageGetHeight(image); data = (GLubyte *) calloc(width * height * 4, sizeof(GLubyte)); context = CGBitmapContextCreate(data, ..., kCGImageAlphaPremultipliedLast); CGContextDrawImage(context, ...); C