글
cocos2d-x Multi-resolution 지원 (Retina 등)
원본 링크; http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Multi_resolution_support
코코스 버전 2.0.4에서부터 retina 라는 개념이 사라지고 안드로이드의 여러 가지 해상도를 일반적으로 지원하기 위하여 두 가지 개념이 도입되었다.
designResolutionSize
실제 디바이스의 해상도와 상관없이 임의의 좌표계를 설정할 수 있다. 해상도가 바뀌더라도 같은 UI 디자인을 사용한다면 이 개념만으로도 여러 가지 해상도의 디바이스를 지원할 수 있다.
CCEGLView::sharedOpenGLView()->setDesignResolutionSize(width, height, policy)
resourceDirectory의 사용
해상도에 따라 다른 크기의 리스소를 사용한다면 resourceDirectory를 다르게 지정함으로서 쉽게 해결할 수 있다. 예를 들어 ./iphone 디렉토리에는 저해상도 이미지 파일들을 넣어 놓고, ./retina 디렉토리에는 레티나 이미지(x2,x2 해상도)를 같은 이름으로 넣어 두는 식이다. 이를 위한 API는 CCFileUtils::sharedFileUtils()->setResourceDirectory() 이다.
contentsScaleFactor
designResolution에 대한 resourceSize의 비율. 예를 들어 레티나 디스플레이에서 이미지를 표시할 때, 레티나 전용 고해상도 이미지를 사용할 수도 있지만 저해상도 이미지를 2배스케일로 표시할 수도 있다. 이 일을 할 수 있게 해 주는 값이다. 보통 width나 height 중 하나의 값으로 스케일을 결정하게 된다.
policy
(1) Exact Fit - designResolution 전체를 디바이스 화면에 맞춘다. 가로세로 비율 왜곡이 일어날 수 있다.
(2) NoBorder - 가로세로 비율을 유지한 채 꽉 차는 화면으로 만든다. 화면의 일부가 잘려나가 보이지 않을 수 있다.
(3) Show All - 가로세로 비율을 유지한 채 모든 화면을 보이게 만든다. 레터박스가 나타날 수 있다.
visibleArea
NoBorder 정책을 사용하면 디자인 화면 상의 일부가 잘려나가 보이지 않을 수 있다. 따라서 어떤 해상도에서도 보이는 visibleArea를 얻어서 사용해야 한다.
관련 API: CCDirector::sharedDirector()->getVisibleOrign() CCDirector::sharedDirector()->getVisibleSize()
이 visiblePoint를 계산하는 방법을 알고 싶다면 TestCpp의 VisibleRect를 참고하시라.
'iPhone > cocos2d' 카테고리의 다른 글
cocos2d-x Multi-resolution 지원 (Retina 등) (0) | 2013.03.03 |
---|
트랙백
댓글
글
밀리언아서 역한돌 레벨
금요일 기준.
4성 역한돌
- 59렙 -> 70렙
- 63렙 -> 75렙
- 68렙 -> 80렙
- 65렙 -> 77렙 -> 90렙
- 62렙 -> 74렙 -> 86렙 -> 100렙
3성 먹이로 키우기
- 62렙 -> 74렙 : 3성x36장 = (600G+300G)x36 = 32400
4성 먹이로 키우기 (60렙 이상이고 3성카드가 별로 없다면 역돌이 답이다.)
- 59렙 -> 70렙 : 4성x12장 = (3300G+300G)x12 = 43200
- 62렙 -> 74렙 : 4성x14장 = (3300G+300G)x14 = 50400
'메모' 카테고리의 다른 글
밀리언아서 역한돌 레벨 (0) | 2013.02.01 |
---|---|
One more time, one more chance (0) | 2011.06.05 |
왼손잡이와 가마방향 (0) | 2011.05.30 |
콘솔과 PC 온라인 연동 (0) | 2010.12.27 |
양배추 샐러드 레시피 (0) | 2009.12.30 |
부엌, 키친이 되다. (0) | 2009.12.11 |
트랙백
댓글
글
확밀아 하면서 느낀 점
확밀아를 해 보니 RPG 등의 성장형 모험게임의 본질은 살리면서 좀 더 단순하게 만들 수 있지 않을까라며 생각했던 여러가지 요소들이 이미 잘 구현되어 있더라.
1. 전투 등의 게임플레이가 미미해도 동기부여(+성취,보상)만 가능하면 재미있다.
2. 성장은 쉽게 동기부여가 되며 재미있다.
3. 복잡한 시스템이 존재해도 현재 필요한 사항을 하나씩 가이드해 준다면 시스템이 좀 복잡해도 상관없다. 특히 가이드가 요정/사람처럼 인격체면 훨씬 따라 하게되지 않을까. (젤다의 요정, 혹은 확밀아의 '엘'과 같은 요정)
4. 확률은.. 이성적으론 아닌 걸 알면서도 내 맘을 속이는 동기를 만든다. 특히 확률 슬롯머신에서 한 번 당첨되면 완전 동기부여 후, 겉잡을 수 없는 수렁 속으로..
5. 아이템에 하수구 기능을 추가하면 모든 아이템을 의미있게 만들 수 있다.
6. 탐험을 위해 캐릭터를 움직일 필요가 없는 건 아닐까? 유저가 탐험에서 바라는 것은 우연한 조우와 보상이 아닐까?
7. 핸드폰 게임에서 3D는 필요없지 않을까? 핸드폰 게임에서 2D의 경우 스프라이트시트 애니메이션을 안해도 괜찮지 않을까? 이렇다면 프로그래머도 아티스트도 꽤 쉽게 게임리소스를 만들 수 있을 듯.
8. 스토리 컨텐츠를 한번에 다 주는게 아니라 짧게 끊어서 주면, 덜 지겹고 성장 동기부여도 되지 않을까?
9. 디스가이아류의 아이템 레벨업을 캐주얼 게임에 도입해도 괜찮지 않을까? 컨텐츠 뻥튀기 효과가 있지 않을까?
덤으로..
드래곤 플라이트를 처음 해 봤을 때 실제 구현에 들어간 리소스가 엄청 적다는 것을 보고 놀랐었다.확밀아를 보면서 이 부분에 대해서는 한 번 더 놀랐다. 지역 탐색은 그림 1장. 카드는 2D 그림 4장(캐릭,만렙캐릭,배경2종)으로 구성되어 있는데 이걸로 아이템, 전투를 모두 소화한다. 놀랍다. 그림 1장 그리면 지역 1개 추가. 그림 4장 그리면 아이템 1개 추가다.
'게임개발 > 잡상' 카테고리의 다른 글
확밀아 하면서 느낀 점 (0) | 2013.01.04 |
---|---|
API를 통한 컨텐츠의 확장 (0) | 2012.08.13 |
RECENT COMMENT