2013-03-17 1 views
0

내 cocos2d 프로젝트에서 다른 스프라이트 시트를 변경하려고합니다. 그리고 난 spriteSheet.plist를 사용하고 있었고 그것은 잘 작동했다. 어떤 이유로, 나는 더 많은 스프라이트를 추가하고 spriteSheet2.plist 에 파일을 변경해야 그리고 난 이미 spriteSheet2.plist 같은 파일, spriteSheet2.pvr.cczcocos2d에서 다른 스프라이트 시트를 변경하는 데 문제가 있습니다

을 포함하지만 인해 오류 MSG 종료 응용 프로그램을 반환 끝 캐치되지 않는 예외 'NSInternalInconsistencyException', 이유에 : 내가 엑스 코드에서 내 원래 'spritesheet.plist'을 제거하면

[[CCTextureCache sharedTextureCache] removeUnusedTextures]; 
[CCSpriteFrameCache purgeSharedSpriteFrameCache]; 
CCSpriteFrameCache *frameCache = [CCSpriteFrameCache sharedSpriteFrameCache]; 
//  [frameCache addSpriteFramesWithFile:@"spriteSheet.plist" ];  
[frameCache addSpriteFramesWithFile:@"spriteSheet2.plist" ]; 

및 기타 문제 'CCSprite 같은 질감 ID를 사용하지 않는'. Sprits는 여전히 화면에서 작업 중입니다.

아무에게도 오류 메시지를 표시하려면 어떻게해야합니까?

답변

2

두 번째 텍스처에서 스프라이트를 추가하려는 첫 번째 텍스처로 만들어진 어딘가에 배치 노드가 있습니다. 배치 노드에 포함 된 모든 스프라이트는 배치 노드가 생성 된 텍스처와 동일한 텍스처를 가져야합니다.

+1

누군가가 그 오류 메시지를 분명히하기 위해 "동일한 텍스처 ID를 사용하지 마십시오"라는 문구를 바꿔서는 안됩니다. ;) – LearnCocos2D

+0

예, 여기 또는 '끈적'질문이 있습니다. '성능'에 대해 몇 가지를 추가하겠습니다. 그러나 문제가되는 NSAssert로 곧바로 이동하려면 좋아하는 IDE가있는 '글로벌 검색'과 같은 것이 아닙니다. – YvesLeBorg

관련 문제