Projects(27)
-
[Charon] #1. New Input System을 적용하여 플레이어 이동 구현하기
리팩토링(Refactoring) 결정 오랜만에 다시 Unity 프로젝트 글을 올리게 되었네요. 4학년 1학기가 끝나 방학이 왔고, 잠시 휴식 기간을 가졌었습니다. 잠깐 쉬고 난 뒤에는 C++ 문법 공부, Python으로 백준 풀기, Unreal Engine5 배우는 등으로 시간을 보냈습니다. 그러다가 미루고 미루던 기존 카론(Charon) Unity 프로젝트를 슬슬 손 봐야겠다는 생각이 들더라구요. 기존에 작성했던 소스코드 구조는 너무 맘에 안 들었고, 이대로 가다가는 스파게티 코드가 되는 건 시간 문제라는 게 보였습니다. 그래서 어떻게 하지 하다가 결국 리팩토링을 하기로 결정했어요. 제일 먼저 작업을 시작하기로 한 건 입력 시스템이었습니다. 이전에 컴포넌트별로 클래스를 나눈 것까지는 좋았으나, 갈수록 ..
2022.08.17 -
[압량(Amnyang)] #Final. 새로운 적, 무당(Shaman)과 게임 시작 씬, 로딩씬, 인트로씬 제작
개발일지를 오랜만에 작성하러 왔다. 프로젝트를 개강 전까지 끝내고 싶어, 바쁘게 달린다고 글 작성할 시간이 없었다. 하지만, 결국 개강 전까지는 못 끝냈다....ㅎㅎㅎㅎ 오랜만에 글을 작성하려 하다보니, 어디서부터 적어야할 지 모르겠다. 그동안, 직면했던 고민들에 대해서 그냥 적어놔야겠다. 그러면, 나중에 볼 일이 있을지도? 1. 새로운 적, 무당(Shaman)과 집 길가에서 다음 집까지 가는 길목은 경관(Police)이 지키고 있었다. 이번엔 집 내부에서 플레이어를 괴롭힐 새로운 적이다. 사실 무당 로직을 구현하는데에 굉장히 많은 고민들이 있었고, 초반에 벌여놓은 실수때문에 타협을 할 수 밖에 없었다. 무당은 집에서 방들 사이를 랜덤으로 걸어다녀야 한다. 하지만, 집 구조가 다음과 같이 되어 있었다. ..
2022.03.05 -
[압량(Amnyang)] #13. 2D 게임 적(Enemy) 패턴 구현하기
이 때까지 플레이어 캐릭터, 조명 처리, 배경 세팅 작업을 진행했었다. 오늘은 플레이어를 방해할 경관(Police) 패턴을 만들어볼 생각이다. 공포 게임 특성상, 좀 어두워 보여야 하기에 유니티 스프라이트 렌더러에서 색감을 어둡게 낮췄다. 이제 차례대로 한 번 만들어보자. 1. 경관 외관 세팅하기 평소 상태(Idle), 걷기(Walk), 인기척 감지(Feel) 애니메이션은 다른 팀원이 만들어준 상태다. 따라서, 이번에는 따로 애니메이션 작업을 안 해도 됐다. 다만, 원래 기획서 상에는 이런 내용이 없었지만 우리가 개발하는 게임이 공포게임인큼 좀 더 확실한 이펙트를 주고 싶었다. 경관이 들고 있는 손전등에 라이트(Light)를 달아줬다. 흰색이나 노란색 조명은 오히려 플레이어를 구하러 온 경관 느낌이 났기..
2022.02.21 -
[압량(Amnyang)] #12. 2D 캐릭터가 벽에 달라붙는 버그 수정 + 평상 밑에 숨기 구현하기
게임 하다가 한 번씩은 그래도 깜짝(?)놀랄만한 공포 이벤트를 저번 시간에 만들었다. 이번에는 적(무당)의 집 평상 밑에서 숨기 버튼('F키')를 눌렀을 때, 숨도록 하는 기능을 만들어야 한다. 1. 시작하자마자 버그 마주치기 평상 부분이 레이어가 나뉘어져 있지 않아서, 유니티에서 오브젝트로 존재하지 않는 상황이다. 그래서 발판으로 사용하기 위한 빈 오브젝트를 생성하고, 콜라이더를 부착해줬다. 그리고 테스트를 위해, 캐릭터를 조작하여 달리면서 점프하여 평상 위로 올라가게 하려했다. 근데 만약 점프 중간에 평상 측면 콜라이더 부분에 닿이게 되면 아래와 같이 낀 것처럼 된다. 정상적인 상황이라면, 위와 같이 끼었다면 방향 조작이 있다 하더라도 중력에 의해 자연스럽게 아래로 미끄러져 내려와야 한다. 뭐가 문제..
2022.02.19 -
[압량(Amnyang)] #11. 2D 공포 분위기 조성용 이벤트 만들기
프로젝트 개발 진행 초기에 디자이너 님께서 구현해보고 싶다는 내용이 있었다. "집 창문에서 사람이 떨어지는 연출을 넣고 싶다."고 하셨었다. 그래서 오늘 그 부분을 이뤄드리려고 구현에 들어갔는데, 아쉽게도 디자이너 님께서 포토샵 작업하실 때 레이어를 덜 나누셨다. 그래서, 사람이 떨어지는 걸 구현할 수가 없었다. 그래도, 좀 그럴싸하게 어떻게 공포스런 느낌을 줄 수 없을까 내 자신 나름대로 고민을 해봤다. 빨간 조명이 뜨면서 어떤 남자가 창문에서 서 있는 모습도 괜찮지 않을까란 생각이 들었다. 그래서 우선 구현에 들어가봤다. 1. 색감 탁하게 만들기 전역 조명의 세기를 낮춰도, 기본적으로 약간 밝은 톤으로 만들어진 이미지들이었기에 어두운 느낌을 내질 못했다. 그래서, 스프라이트의 Color 프로퍼티를 통..
2022.02.15 -
[압량(Amnyang)] #10. 2D 게임 상호작용 시스템(숨기) 만들기 + 수많은 버그 수정
배경 오브젝트들 중에 플레이어와 상호작용이 가능한 오브젝트들이 몇 개 존재한다. 해당 오브젝트들과 상호작용을 하면, 오브젝트의 역할에 맡는 상호작용이 일어날 수 있게 만들어야 한다. 여러 종류가 있다. 단순 텍스트만 표시하여, 게임 스토리 진행에 대한 정보를 줄 수 있는 오브젝트 적의 추적을 피해, 숨을 수 있는 오브젝트 (ex. 우체통) 게임 진행을 하기 위해 얻어야 하는 오브젝트 (ex. 열쇠) 단순 구현에는 별로 어렵지 않은 작업들이다. 하지만, 나중에 새로운 종류의 오브젝트들이 추가될 수도 있을 것이고, 거기에 맞춰서 유동적으로 유지보수 및 추가가 용이하도록 만들어야 한다. 그래서 나는, 다음과 같은 구조를 생각했다. 플레이어(주인공)은 주변에 상호 작용 가능한 오브젝트가 있을 경우, 해당 오브젝..
2022.02.14