점프 피하기 게임을 만들면서 화살 장애물을 떨어뜨리기 전에 바닥에 미리 경고 영역(장판)을 보여주는 연출이 필요했습니다.플레이어 입장에서는 어디로 피해야 하는지 알 수 없으면 그냥 맞는 느낌이 들기 때문에, 화살이 떨어지기 전에 "여기 위험해" 라는 시각 신호를 줘야 했습니다.그래서 이번에는 장판 Fill 연출을 담당하는 TrapArea와 이를 실제로 제어하는 Obstacle_Arrow를 나눠서 구현했습니다.1. 전체 흐름전체 구조는 단순합니다.Obstacle_Arrow.Setup() 이 호출되면 비동기로 연출 시작TrapArea.PlayFill() 이 duration 동안 장판을 0 → 1로 채움Fill이 완료되면 화살이 낙하 시작(StartFall())화살이 플레이어와 충돌하면 게임 오버텔레그래프 역..
자세히 보기 →점프 게임을 만들다 보면 분명히 유저 입장에서는 점프를 눌렀다고 생각했는데, 실제로는 입력이 씹히는 경우가 있었습니다.예를 들어 착지 직전에 점프 버튼을 조금 빨리 눌렀는데 아직 지면 판정이 나지 않아 점프가 실행되지 않거나, 반대로 발판 끝에서 점프를 눌렀지만 물리적으로는 이미 공중으로 판정되어 점프가 되지 않는 경우가 있었습니다.이런 상황이 반복되면 유저는 조작이 뻑뻑하다고 느끼게 됩니다.그래서 이번에는 점프 입력을 조금 더 관대하게 처리하기 위해 점프 버퍼와 코요테 타임을 적용했습니다.1. 코요테 타임 / 점프 버퍼 개념먼저 두 기능은 비슷해 보이지만, 실제로는 보정하는 방향이 다릅니다.점프 버퍼(Jump Buffer) 는 점프가 가능한 시점보다 조금 빨리 눌린 입력을 잠깐 저장해두는 기능입니다.예..
자세히 보기 →위와 같이 상점에서 잠금 상태의 캐릭터나 맵을 실제 3D Object를 보여주는 Preview를 만들고 싶었습니다.왜냐하면 어떤 느낌인지 대략적으로 알 수 있지만 Material을 검정색으로 처리해 호기심을 유발하고 싶었기 때문입니다. Preview를 만들기 위해서 Render Texture를 사용했었는데 Render Texture를 쉽게 말하면 카메라가 렌더링한 결과를 화면이 아니라 텍스처에 저장하는 기능입니다. 보통 카메라는 Game View에 바로 그리지만, 위에 경우에는 previewCamera를 따로 둬서 previewCamera.targetTexture를 미리 생성해둔 Render Texture로 연결해두면 이 카메라가 그린 결과는 Game View가 아니라 연결해둔 Render Texture..
자세히 보기 →앱내에서 다국어를 지원하기 위해 Unity에서 제공하는 Localization Packag를 사용했습니다. 포스팅 순서는 1. 설치 순서 -> 2. Localization 생성 -> 3. Localization 셋팅 -> 4. Localization 적용 순으로 진행하겠습니다. 1. 설치 순서1. [Window] -> [PackageManagement] -> [PackageManager] 를 선택합니다.2-1 좌측에 [Unity Registry] 를 선택 후 검새창에 Localization을 검색해서 Install 합니다.2-2. 만약에 없는 경우 왼쪽 상단에 [+] 버튼을 클릭후 [Install package from git URL] 을 선택합니다.3. 입력창에 [ com.unity.localizati..
자세히 보기 →이번에 새롭게 게임을 만들기 시작하면서 2D 횡 기준으로 무한으로 맵을 사용할 수 있는 기능이 필요했습니다. 자료 조사들을 해보니 sprite 기준으로 된 예시들이 많아서 sprite들의 position 값을 바꿔주면서 마지막 sprite에 다시 붙이는 방법과, 카메라 이동을 기준으로 sprite의 position 값을 바꿔주는 방법을 써보게 됐습니다. 카메라 이동을 기준으로 했을 때는 단순 이미지로 진행하였고, sprite 이동을 기준으로 했을 때는 Parallax 방식으로 진행했습니다.Parallax : 거리에 따른 상대적 속도를 활용한 기술 1. sprite 이동사용 에셋 : https://assetstore.unity.com/packages/2d/environments/free-2d-cartoon..
자세히 보기 →