2012-07-06 3 views
3

나는 Cocos2d 게임 개발자입니다. 나는 망막 디스플레이 이미지를 사용하여 게임을 개발 중이다.망막 디스플레이 이미지가 희미하게 보이고 흐리게 보입니다. 이유가 없습니까?

나는 zwoptex를 사용하여 HD 접미사가 있거나없는 텍스처 파일을 만들었습니다.

은 내가 YES[director enableRetinaDisplay:YES];에 망막 디스플레이를 활성화 app-delegate [[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"Background.plist"];처럼에 그 zwoptex의 PLIST 텍스처 파일을 추가했습니다.

나는 어디에서든지 ccsprite *background = [CCSprite spriteWithSpriteFrameName:@"sample.png"];을 사용하여 원하는 plist의 png 파일을 사용했습니다.

내가 포함시킨 그 모든 png 파일은 크기가 모두 960*640480 * 320 인 고해상도 이미지입니다. 그러나 시뮬레이터 나 iPhone에서 게임을 실행할 때 아무 이유없이 이미지가 흐릿하고 흐릿하게 보입니다. 누구든지 나에게이 문제를 해결하기 위해 도와주세요 ... ..

(다음 이미지가 주석의 예로서 게시했습니다.)

enter image description here

+0

아마도 적절합니까? http://stackoverflow.com/questions/7462023/cocos2d-retina-support-not-working-anymore – andrewdotnich

+0

내 질문과 관련이 없습니다. 스프레드 시트는 게시물과 동일한 지침을 사용하여 작성했습니다. 망막 디스플레이 이미지를 볼 수는 있지만 흐릿하고 흐릿하게 보입니다. 시뮬레이터 나 아이폰에서 게임을 실행할 때마다 원래의 이미지 해상도가 나타나지 않습니다.Retina display enabled가 yes 또는 no로 설정되면 흐린 이미지 만 출력으로 표시합니다. – Blisskarthik

+0

스프라이트 크기를 픽셀로 디버거에서 확인하십시오. 예를 들어, 망막 장치를 사용하면 포인트가 200x100 크기이고 픽셀이 400x200입니다. – Morion

답변

1

적인 Cocos2D는 기본적으로 스프라이트에 앤티 앨리어싱을 적용합니다. 이를 해제해야합니다.

[background.texture setAliasTexParameters]; 

희망이 도움이 될 것입니다.

+0

답변 해 주셔서 감사합니다. 나는 그것을 사용했으나 결과는 같았다. 이 문제를 해결할 다른 해결책이 있습니까 – Blisskarthik

+0

망막 디스플레이에서만 이런 현상이 발생합니까? – KDaker

+0

망막 디스플레이가 예 또는 아니요로 설정되었는지 여부 만 흐린 이미지 만 표시합니다. – Blisskarthik

1

당신이 게시 한 스크린 샷 (나는 당신의 질문에 그것을 추가하는 자유를 가졌습니다)은 아이폰 시뮬레이터가 아닌 아이폰 (망막) 시뮬레이터에서 가져온 것을 보여줍니다. 따라서 HD 이미지는 사용하지 않습니다.

iPhone 시뮬레이터가 실행 중일 때 하드웨어 -> 장치 메뉴로 이동하여 iPhone (Retina)을 장치로 선택하십시오. 그런 다음 앱을 다시 시작하십시오.

또한 iPhone Simulator는 cocos2d 또는 Mac의 설정에 관계없이 16 비트 색만으로 게임을 렌더링합니다. iOS 시뮬레이터 렌더러는 성능상의 이유로 16 비트 렌더링으로 제한됩니다 (소프트웨어 렌더링 만 사용하고 하드웨어 가속은 사용하지 않습니다). 실제 장치에서 게임을 볼 때만 이미지 품질에 대한 판단을 요구할 수 있습니다.

게임이 실제로 HD 에셋을로드하는지 또는 어떤 이유로 SD 이미지를로드하는지 테스트하려면 SD 이미지없이 실행 해보십시오. 게임에서 SD 이미지를로드하려고하면 오류가 발생합니다. 그렇지 않으면 HD 이미지가로드되고 "흐림 문제"가 다른 원인이됩니다. 가능할 때마다 파일 이름 변경을 수행하는 CCFileUtil 클래스 메소드 fullPathFromRelativePath에 NSLog 문을 추가하여로드 된 파일을 로깅 할 수도 있습니다.

스프라이트에 적용된 크기 조정 또는 회전이 너무 작아서 흐리게 보일 수 있으므로 그렇게하는지 확인하십시오. 블렌드 모드 (ccBlendFunc 사용)가 변경되면 이미지가 흐려질 수도 있습니다. 또한 이미지가 완전히 불투명한지 확인하십시오 (불투명도 == 255).

+0

도움 주셔서 감사합니다 ... [CCTexture2D setDefaultAlphaPixelFormat : kTexture2DPixelFormat_RGBA8888];을 사용하여 문제를 극복했습니다. 모든 모호한 문제를 해결했습니다. 나에게 지침을 준 것에 대해 다시 한 번 감사드립니다. – Blisskarthik

관련 문제