2012-05-25 2 views
0

iPhone 시뮬레이터에서 Xcode를 통해 잘 돌아가는 앱이 있습니다. iPod touch에서 응용 프로그램을 실행하려고하면 다음 오류가 발생합니다.CCTexture2D. 시뮬레이터가 아닌 iPod touch에서 질감 오류를 만들 수 없습니다

2012-05-25 19 : 40 : 33.014 PracticeOne [602 : 707] cocos2d : CCTexture2D. 텍스처를 만들 수 없습니다. UIImage는 025입니다. 2012-05-25 19 : 40 : 33.016 PracticeOne [602 : 707] cocos2d : 이미지를 추가 할 수 없습니다. CCTextureCache의 Success1.png 2012-05-25 19 : 40 : 33.025 PracticeOne [602 : 707] *의 어설 션 오류 - [게임하는 AddChild : Z :]

/IOSDevelopment/PracticeOne/PracticeOne/libs/cocos2d/CCNode.m:407

난 리소스 폴더에 저장된 화상 Success1.png있다.

사용자가 제출 단추를 누르면 다음 논리가 실행됩니다.

// 화면

CCSprite *goodWord = [CCSprite spriteWithFile:@"Success1.png"]; 
    [goodWord setPosition:ccp(s.width/2, s.height/2) ]; 
    [self addChild:goodWord z:200]; 
    id action1 = [CCFadeIn actionWithDuration:1.5]; 
    id action2 = [CCFadeOut actionWithDuration:1.5]; 
    [goodWord runAction:action1]; 
    [goodWord runAction:action2]; 

에 성공 그래픽을 보여 그래서, 나는 PNG 파일 위치를 검색하고 장면에 추가합니다. 나는 이미지를 페이드 아웃하기위한 동작을 실행한다. 잠시 나타나서 사라져서 성공한 사용자를 보여줍니다.

장치에서 실행중인 코드를 디버깅 할 때 goodWord에 Success1.png를 검색하려고 시도한 후에 주소가 포함되어 있지 않습니다.

아무도 왜 시뮬레이터에서 성공하고이 오류를 장치에 던질 수 있는지 알 수 있습니까? 리소스 폴더의 다른 이미지가 장치에 잘 표시되어 있습니다.

모든 요령이나 제안 사항을 크게 높이세요. 내가 성공하면 계속 솔루션을 찾고 업데이트 할 것입니다. 사전에

감사합니다.

+0

이 특정 이미지와 관련하여이 문제가있는 것 같습니다. 다른 이미지를 대체 할 수 있었고 장치에서 정상적으로 작동합니다. Success1.png 이미지는 150x144 크기의 22kb입니다. 나는 왜 iPOD이 그것을 좋아하지 않는지 확신하지 못한다. –

+0

같은 이름으로 대체 하시겠습니까? iOS 파일 시스템은 대소 문자를 구분하므로 파일의 이름이 "success1.png"인 경우 장치에서 "Success1.png"를로드하려고하면 실패합니다. 시뮬레이터는 일반적으로 대소 문자를 구분하지 않는 Mac의 파일 시스템을 사용하므로 Simulator에서 작동합니다. – LearnCocos2D

+0

대단히 감사합니다. 대소 문자 구분이 문제였습니다. 나는 팁을 매우 감사한다. –

답변

0

대소 문자를 구분하지 않습니다. Xcode 탐색기의 파일 이름이 resources 폴더의 이름과 대소 문자가 동일한 지 확인하십시오.또한 프로젝트를 '깔끔하게 정리'하고 다른 불일치를 밝히는 것이 좋습니다. Option-> Build.

+0

감사합니다. 이것이 문제였습니다. 귀중한 정보를 제공 할 시간을내어 주셔서 감사합니다. –

0

이것은 버그 또는 OS X과 iOS 간의 동작이 이상한 지 잘 모르겠지만 다른 프로젝트의 이미지를 사용해야 할 때와 매우 유사합니다 (똑같은 문제는 아니지만). 다른 기기는 iOS 프로젝트의 저작물 기반으로 사용됩니다.

내 구체적인 경우 원본 이미지는 gif 파일이었고이를 png로 변환했습니다. 나는 Photoshop에서 모든 파일을 연 다음 각각을 새로운 png로 저장했습니다. 때로는 파일 형식을 변경하는 것을 잊어 버렸고 .gif 확장자를 .png로 바꿨습니다. 나는 포토샵이 나를 경고했다는 것을 믿지 않는다. 그래서 나는 PNG 확장자로 감정적으로 GIF를 저장하고 있었다!

이상한 점은 이러한 유형의 gif를 Xcode에 png 확장자로로드하여 실행하면 시뮬레이터의 앱에서 작동한다는 것입니다. 그러나 애플리케이션을로드하고 거기에서 테스트 할 때 iOS 기기에서 작동하지 않습니다.

이미지를 올바르게 다시 작성하는 것처럼 간단하게 고정 할 수 있으며 올바른 형식을 선택해야합니다.

어디에서 이미지를 가져 왔는지, 어떤 유형의 편집기를 사용했는지는 모르겠지만 OS X이 이미지의 저장 유형과 관계없이 파일의 유형을 결정할만큼 똑똑한 지 궁금합니다. 그러나 iOS에는 이러한 내장 된 지능이없는 것 같습니다.

+0

의견에 감사드립니다. 당신이 설명하는 문제는 흥미 롭습니다. 코드에서 success1.png을 사용하고 있었는데 실제로 파일의 이름은 success1.png이었습니다. 시뮬레이터는 상관 없지만 아이팟 않았다. –

+0

당신의 문제가 다른 이유 였을지라도 루트는 여전히 동일합니다. OS X의 이미지로드 및 처리 시스템은 iOS에있는 것보다 훨씬 뛰어나다 고 생각합니다. – RLH

관련 문제