※이 기사는 밑의 일본어 기사를 번역한 기사입니다.
2020년 8월 6일 기사
https://blog.ensapia.engineering/2020/08/06/ccpengine/
코코네는 ‘감성을 형상화, 감성을 가까이‘라는 미션으로 ‘포켓코로‘를 세상에 내놓은 지 9주년이 되었습니다. ‘포켓코로‘를 출시한 이후 CCP(Character Coordinating Play)(주1)라는 하나의 장르를 제안하며 다양한 도전을 이어오고 있습니다.
| 우리는 ‘캐릭터(Character)가 존재하고, ‘코디네이터(Coordinating)’ 요소를 가지고, ‘플레이(Play)’할 수 있는 서비스를 ‘CCP’ 장르라고 정의했습니다. ‘꾸미고 즐기는 소셜 서비스’, ‘꾸미는 요소를 가진 게임’ 등 코코네는 ‘CCP’ 서비스의 기획, 개발, 디자인, 운영, 마케팅을 모두 자체적으로 진행하고 있으며, 세계 최고 수준의 노하우와 실적을 보유하고 있다고 자부합니다. |
(주1) CCP(Character Coordinating Play)에 대하여
‘포켓코로‘를 시작으로 ‘디즈니 마이리틀돌‘, ‘헬로 스윗데이즈‘ 그리고 ‘포켓코로 트윈‘까지 캐릭터를 꾸미고 사람들과 소통하며 즐길 수 있는 서비스를 꾸준히 제공해 왔습니다.
그 중 2020년 1월에 출시한 ‘포케코로 트윈‘은 코코네에서 9년간 쌓아온 CCP 장르의 새로운 엔진으로, 기존의 것들보다 한층 더 업그레이드된 새로운 엔진이 탑재되어 있습니다.
이번 기사에서는 ‘포켓코로 트윈‘에 사용된 새로운 엔진 ‘P2 CCP Engine(이하 CCP Engine)’에 대해 소개하고자 합니다.
(그림 1) 포켓코로트윈의 CCP Engine 구성
‘포켓코로 트윈‘에서는 기존 CCP 콘텐츠의 기본 엔진인 Cocos2d-x에서 전환하여 Unity를 채택했습니다. 기본적인 구조는 (그림 1)과 같이 Core로 구현된 캐릭터를 움직이는 코어인 코코롱과 포트 주변과 Handler를 기반으로 한 기본 엔진 위에 각종 장면 구현에 있어 꾸미기의 매력을 표현하는 CCP Engine을 구현하고 있습니다.
(그림 2) 포켓코로 트윈으로 캐릭터 표현의 세 가지 기둥
Unity를 도입하여 새롭게 기술적 도전을 할 때 가장 신경을 쓴 부분은 디자이너가 캐릭터를 더 예쁘게 표현할 수 있도록 포케코로에서 쌓아온 노하우를 살리면서 새로운 표현을 구현하는 것이었습니다. 기존보다 캐릭터를 더 귀엽게 표현할 수 있는 포인트로는 Anima2D를 사용함으로써 Mesh와 Bone을 사용할 수 있게 되었고, 스커트의 하늘거리는 표현이 가능해졌습니다.
그리고 SpringBone을 사용하여 바람과 중력 표현을 추가하거나 IK(Inverse Kinematics)를 사용하여 포켓코로 트윈 특유의 쌍둥이가 서로 잡아당기는 등 연동적인 표현도 구현했습니다. (그림 2)
바람 표현 예시. 개발 중인 화면입니다. 일부 알기 쉽게 하기 위해 바람을 평소보다 강하게 표현하고 있습니다.
또한 대량의 텍스처를 처리하기 위해 압축 텍스처를 사용하여 데이터량을 줄이고 있습니다. 또한, 광원을 도입하여 빛의 표현을 구현하였습니다.
광원 표현 예시. 개발 중인 화면입니다.
쌍둥이가 얽혀있을 때 레이어 중첩을 위해 서로의 팔이 잘 교차하는 등의 표현이 추가되어 있습니다.
CCP 엔진으로 구현한 쌍둥이 표현의 예시
옷 입히기나 상점 주변에서 공을 들인 부분으로, 두 아바타를 조작한다는 점에서 조작감을 알기 쉽고 직관적으로 할 수 있도록 카메라나 스와이프 조작 등을 많이 도입하고 있습니다.
옷 갈아입기 조작 예시
또한, 불필요한 통신을 없애기 위해 Master 데이터는 시작 시점에 취득하고, 이미지는 필요할 때 다운로드하여 캐싱하고 있다.
이번에 새롭게 만든 CCP Engine도 지속적으로 버전 업을 거듭하며 발전시켜 나갈 예정입니다. Unity만의 이펙트를 아이템 표현에 도입하는 등 앞으로도 코코네만의 독창적인 시도를 계속해 나갈 예정입니다.
| ‘포켓코로 트윈’: https://www.pokecolotwin.jp
‘포켓코로‘: https://www.pokecolo.jp |
코코네에서는 엔지니어를 적극적으로 모집 중입니다!
