개요
이 프로젝트는 프로그래밍 교육과정에서 진행한 Unity3D 개인 프로젝트입니다.
게임 Portal 과 Superliminal 의 시스템을 레퍼런스로 개발된 Puzzle 게임입니다.
THIS GAME IS NOT PORTAL GAME
이 프로젝트의 타이틀이 정해지게 된 이야기는 Valve의 Portal시스템을 구현하려던 개발자가
프로젝트 기간에 코로나에 걸리며 일정 문제로 구현 방향성을 변경하며 시작되었다.
프로젝트 1일차 포탈 구현에 의욕이 넘치던 개발자는 주변 사람들에게 포탈을 만들겠다고 이야기하고 다녔고,
주변 사람들도 이 개발자가 포탈을 구현하는 것에 관심을 갖고 있었다.
그러나 1일차 저녁 목이 불편했던 개발자는 코로나 검사를 하게되고 양성판정을 받게된다.
이로 프로젝트기간의 50%를 코로나와 보내며 프로젝트의 방향성은 크게 바뀌게 된다.
이후 주변 사람들이 개발자에게 포탈 구현에 대해 물어보았으며,
개발자는 이 게임은 포탈 게임이 아닙니다.(This Game is Not Portal Game)라는 답변을 반복하며
게임의 타이틀이 정해지게 되었다.
프로젝트
프로젝트 개요
프로젝트 기간 : 9일 ( 2022-08-16 + 2022-08-24 ~ 2022-09-02 )
프로젝트 인원 : 개인 프로젝트
프로젝트 엔진 : Unity
레퍼런스 게임 : Portal, SuperLiminal
Prototype
프로토타입 개발 스펙
레퍼런스한 게임 Superliminal과 Portal의 핵심 시스템 개발을 목적으로 진행
1) Superliminal 시스템
- Ray를 사용한 오브젝트 판단
- 작용 가능한 오브젝트 판단 및 상호작용
- 거리에 따른 오브젝트의 스케일 조정
- 오브젝트 크기만큼의 위치 조정 ( 오브젝트가 벽을 통과하지 않도록 반지름만큼 위치 조정 )
2) Portal 시스템
- 포탈 렌더링 ( RenderTexture와 Camera 이동 )
- 포탈 이동 ( 플레이어 캐릭터의 위치 이동 )
3) 그 외
- 캐릭터 이동
Production
프로덕션 개발 스펙
Prototype 제작 과정에서 진행한 핵심 시스템을 플레이어가 활용할 수 있는 콘텐츠 제작을 목적으로 진행
게임의 흥미와 몰입감을 더해줄 수 있는 시스템과 콘텐츠 개발을 목적으로 진행
1) Title Scene
- RenderTexture를 활용한 플레이어 조작 화면을 복제한 컴퓨터 오브젝트
- 플레이어 입력을 받을 수 있는 서명
- gTTS ( Google Text to Speech ) 를 활용하여 플레이어 입력을 보이스로 송출
2) Game Scene
- gTTS를 활용한 나레이션
- 연출 및 이펙트 ( Fade IN/OUT, 파티클, SE )
- 콘텐츠를 즐기기 위한 공간 디자인 ( Start, Tutorial, Dice, CRT, Moon, Hidden Room )
(1) Start Room
- gTTS 나레이션을 통한 인삿말
- 이동 및 화면 회전의 조작법 전달
(2) Tutorial Room
- 점프와 물체와의 상호작용 조작법 전달
- 맵 진행을 위한 조작법 숙달
(3) Dice Room
- 넓은 공간에서 오브젝트를 사용한 간단한 퍼즐
- 위/아래로 연결되어 있는 Portal
- Hidden Room으로 가는 공간
(4) CRT Room
- CRT 모니터만 존재하는 검은 복도
- 오른쪽으로 진행하면 앞으로 도착해 있는 외곡된 공간
(5) Moon Room
- 배경의 달을 오브젝트로 사용한 퍼즐
- 트로피에 달을 넣는 행동을 통해 게임 클리어 조건 달성
(6) Hidden Room
- Dice룸에서 발생한 버그를 콘텐츠로 활용한 공간
- 당황한 나레이션 대사
Project Diary
Date | 분류 | 내용 |
8/16 | Setting | 2021.3.15f 프로젝트 생성 |
8/16 | Portal | 텍스트렌더와 외부 쉐이더 파일을 통한 포탈 화면 |
8/16 | Portal | 포탈 텔레포트 베이스 (자연스러운 이동을 위한 수정 필요) |
8/24 | Portal | 콜라이더와 렌더 위치 조작으로 이동버그(화면을 뚫는 버그) 수정 |
8/24 | Portal | 포탈 진입 방향 설정 (반대편으로 들어오지 못하게 수정) |
8/24 | SuperLiminal | SuperLiminal 시스템 추가 |
8/25 | Map | Start, Tutorial, Dice, CRT Room 맵 디자인 |
8/25 | Button | 버튼 트릭 추가 |
8/26 | Map | Moon Room 맵 디자인 |
8/26 | Title | 타이틀 공간 및 UI 추가 |
8/29 | SuperLiminal | 오브젝트 스케일 제한 (0.05 ~ 3) |
8/29 | Portal | 포탈로 인하여 프레임 드랍이 발생한 부분 보이지 않는 포탈 비활성화로 해결 |
8/29 | Title | 게임 클리어 후 타이틀로 돌아오면 타이틀 환경 CRT 모니터 부숨 |
8/30 | VR | 오큘러스 조작을 위한 코드 추가 |
8/30 | VR | PC 조작과 오큘러스 조작을 디파인으로 조작할 수 있도록 수정 |
9/1 | gTTS | Google Text to Speech 추가 |
9/1 | gTTS | Title Scene에서 서명을 통한 플레이어 정보 입력, 입력받은 정보 TTS 보이스로 읽음 |
9/2 | Map | Dice Room의 버그로 Hidden Room 생성 |
9/2 | Raycast | Portal Collider 와 Wall Collider 사이의 Raycast 버그 수정 앞에 위치한 Collider로 감지하도록 수정 |
'Project > StudyProject' 카테고리의 다른 글
HexaPuzzle (0) | 2023.03.06 |
---|---|
Change And Drop (0) | 2023.03.01 |
Minimanimo (0) | 2022.12.01 |
Slime Must Die (0) | 2022.09.06 |