2013-03-15 4 views
0

암호화 된 이미지가 있습니다. 꽤 무거워서 CCTextureCache에 추가하여 미리로드하고 싶습니다. 그러나 CCTextureCache는 CCTexture2D를 매개 변수로 사용하지 않습니다. 어떻게해야합니까?CCTextureCache에 CCTexture2D를 추가하는 방법

CCTexture2D *img = [[[CCTexture2D alloc] initWithImage:[UIImage imageWithContentsOfEncryptedFile:path]] autorelease]; 

     [[CCTextureCache sharedTextureCache] addImage:img]; // not accepted!! 

답변

1

두 가지 옵션 :

  • 다음, 키 (고유 한 문자열)로 * 객체를 CCTexture2D를 캐시하는 방법
  • 가 (응용 프로그램 지원 디렉토리에) 디스크에있는 UIImage 저장을 추가로로드 정상적으로 cocos2d

후자의 옵션은 저장 과정 &으로 인해 눈에 띄는 지연이 발생할 수 있습니다. 첫 번째 방법을 권하고 싶습니다. 이 함수를 작성하는 데 필요한 대부분의 코드는 이미 CCTextureCache에 있습니다. 필요한 인터페이스 만 인터페이스에 공개하면됩니다.

+0

잘 이해합니다 .. 고맙습니다 .. 이미지가 이미 캐시에 추가되었는지 어떻게 확인할 수 있는지 궁금합니다. – user123

+0

call textureForKey : nil을 반환하면이 텍스처는 캐시되지 않습니다. – LearnCocos2D