次のコードに問題があります。
//get a CIImage
UIImage *origImage = [UIImage imageNamed:imageName];
CIImage *inputImage = [[CIImage alloc] initWithImage:origImage];
NSLog(@"the inputImage is %@", imageName);
imageName は NSString プロパティであり、常に正しくログに記録されます。私のプロジェクトでは、CIImage 行の直後にブレークポイントを配置すると、UIImage は取得されますが、CIImage は取得されません。また、いくつかの uiimage プロパティが奇妙に見えることに気付きました (スケールは常に小さく、0.0000002 と _imageFlags は空に見えます)。最近別のプロジェクトでコードをビルドしましたが、正常に動作します (CIImage が作成され、CIFiltering などに使用できます) が、このプロジェクトでは動作しません。プロジェクト間の唯一の違いは、元の (問題のある) プロジェクトには OpenGLES が実装されていたのに対し、新しいプロジェクトでは CoreImage のみが使用されていることです。また、古いプロジェクトは iOS 6 SDK から作成され、新しいプロジェクトは iOS 8 SDK から作成されました。CIImage を作成する他のいくつかの方法 (origimage.ciimage および origimage.cgimage 経由) を試しましたが、どれも機能しません。
どんなアイデアでも大歓迎です。
ありがとう、ダンガ。