본문 바로가기
Game Lab

[Week3] 개인과제_Unity 쿼터뷰 게임 제작01

by 토리총 2026. 3. 28.

라이트 설정

 

 

Directional Light로 칙칙함 해소

근데 잘 모르겠다.

 

 

Player 스크립트 

normalized로 방향값 보정하기

대각선 이동 시 속도가 빨라지므로

방향 값 보정이 필요하다. 

그래서, 위치값 이후에 normalized를 써서 방향 값을 1로 보정해주는 과정이 필요하다. 

 

 

Player 이동

재생해보니 힘없이 쓰러지는 플레이어..

Rigidbody > constraints > X, Z축을 freeze 하면 된다

 

 

충돌

 

 

카메라

1. 카메라 위치 조정

먼저 쿼터뷰 느낌이 나도록 카메라 위치를 조정한다

 

 

2. 플레이어를 따라가는 카메라

 

 

offset 값 똑같이 맞춰주기

 

 

나는 하데스의 느낌을 원하기 때문에

카메라 타겟을 player가 아니라 worldSpace로 지정했다. 

(생각해보니 카메라를 고정해둘거면 굳이 별도의 스크립트가 필요하지 않아서 꺼둘 예정)

 

 

 

쿼터뷰 느낌 살리기

1. 맵을 45도 회전 - 마름모 맵

맵을 대각선 방향으로 보이게 하기 위해 rotation의 y값을 45로 맞춘다.

 

 

2. 카메라 방향의 Wall 2개 - invisible 

플레이어 뒷쪽의 벽 2개를 투명하게 만들어

답답한 느낌을 제거하고, 시원한 시야에서 플레이할 수 있게 했다.

 

인스펙터 창의 Mesh Renderer 좌측의 체크를 해제하면 됨

 

대시(Dash)기능 

 

참고 영상

https://www.youtube.com/watch?v=2kFGmuPHiA0&t=2s

 

 

 

이동경로 남기기(Trail)

Player 오브젝트에 Trail Renderer 컴포넌트를 추가하고

아래 셋팅대로 입력한다.

 

 

Emitting을 해제(스크립트로 제어하기 위해?)하고 Material도 default로 고른다

 

 

 

 

대쉬(Dash)기능

2d로 dash 구현 하는 걸 보고 

어떻게하면  3d에 적용할 수 있는 지 고민하는 중이다. 

 

 

https://www.youtube.com/watch?v=VWaiU7W5HdE

 

x축의 값만 가지고 쓴 코드를 참고해 

3d용으로 z값을 추가해 구현에 성공했다.

 

여러 프로그래머들에게 보여줬더니 잘 돌아가는 코드라고 해서 코드를 기록해둔다. 

대쉬는 Space키에 할당했다
3d player 대쉬 구현 핵심 코드

 

유튜브에서 찾아본 대시를 구현 방법 중

1. 코루틴 활용

2. Invoke 활용

이렇게 2가지 방법이 있었다. 

 

하지만 이번 게임에서는 무한 대쉬가 아니라,

(하데스처럼) 대쉬를 사용한 이후 일정 시간이 지난 다음에서야 대쉬를 쓸 수 있게 구현하고 싶었다. 

 

시간과 관계된 기능이기 때문에

코루틴을 써야한다는 조언을 받아서,

그대로 진행할 계획이다. 

 

 

함정 설계 및 기능 구현

함정의 경우

하데스 스테이지 1의 가시 발판을 먼저 구현하려한다. 

플레이어가 발판을 밟으면, 몇 초 뒤 발판에서 가시가 올라온다. 

이때 플레이어는 발판을 밟고나서 바로 다른곳으로 이동해야 생존할 수 있다. 

 

https://www.youtube.com/watch?v=wnRd0MZXh54

 

 

하데스의 화살 함정과 같은 원리이다