23.03.27. (월) - PBS, URP, 애니메이션, 오디오

김도익·2023년 3월 28일
0

Unity

목록 보기
15/23
post-custom-banner

랜더 파이프라인을 잘 이해해야한다. 성능과 관련이 있기 때문이다.
(랜더 파이프라인은 다음에 자세하게 설명함)

우리가 렌더링을 할 때는 크게 2개가 있다.
실사 렌더링, 비실사 렌더링이 있다.
실사는 진짜 현실 세계 같은 느낌이고, 비실사는 현실에서는 없는 세계를 뜻한다.

기본적으로 언리얼, 유니티 엔진은 물리기반 렌더링 방식을 사용했다.

실제처럼 느끼기 위해선 빛이 중요하다.

PBS

PBS는 에너지 보존이 가능하다.










하지만 위 방식은 너무 무겁다. 그래서 Unity가 새롭게 만든 랜더링 URP를 개발했다.

URP

2D 게임 개발은 유니티 API에 정말 잘 나와있으니, 확인해보자.

Perspective

2D URP 카메라는 다양한 기능이 있다.
Perspective를 사용하면 원근감을 줄 수 있다.
Z축이 가까운 애를 더 크게 그려주고, 멀리 있는 애들 작게 그려준다.

Anti - aliasing

계단 현상을 완화해준다.

만약 픽셀 게임이면 굳이 사용하지 말자^^

Occlusion Culling

환경으로 가려진 애들, 안보이는 애들은 안그리겠다.
성능에 효과가 있다.

URP 조명

URP에선 오른쪽처럼 조명을 줄 수 있다.

스프라이트 아틀라스

파일에 개수가 많으면 많을 수록 최적화에 좋지 않다.
병목 지점은 입출력 지점에서 나타나는데, 파일이 많으면 병목 현상이 발생한다.
그래서 하나에 텍스처에 여러가지 이미지를 모아 넣는다.


프레임 바이 프레임

한 프레임당 몇번 움직일지 정하는 것이다. 마치 그림을 빠르게 돌리면 영상처럼 보이는 것 처럼. 옛날 방식을 적용한 것이다. 가장 흔히 사용하는 방법이고, 사용하기 쉬운 방법이다.

이 외에 렌더링 하는 방식은 API를 참고하자.

Toko.Run을 구현해보자!

에셋을 움직이도록 만들어보자



다 자른 에셋을, Project창에서 Shift키를 누르고 처음과 끝을 눌러줍니다. 그리고 Hierarchy(계층창)으로 넣으면 저장하라는 파일이 열립니다. Anims라는 파일을 새롭게 만들어주고 저장합니다.

Animation(Ctrl + 6)을 열어서 적당한 프레임에 맞춰 애니메이션이 가능하도록 만들어줍니다.

추가적으로 Curves를 누르면 해당 프레임마다 한 위치에서 다른 위치까지 움직이는 모습을 쉽게 구현할 수 있다. 예를 들어 새가 날라가는 것을 구현하면 좌측 끝에서 우측 끝으로 날라가도록 만들어줄 수 있다.
Add Property에서 Transform에 Position, Rotation을 추가해야지 사용 가능하다.
(직접 사용해봐야 이해가 빠를 듯)

내가 생각하는데로 만들어버리면 된다.

물리

2D에서 사용하는 물리는 모두 뒤에 2D가 붙는다.
Toko는 왼쪽 마우스를 클릭할 때 마다 점프를 하기 때문에 콜라이더를 다리 부분에 넣어둔다.

소리

오디오 기본과 믹서만 알면 된다.
몰입감을 느끼기 위해선 사운드는 상당히 중요한 역할이다.
유니티는 3D음향이 자동으로 저장되어 있다.

오디오 소스


Audio Clip : 내가 넣을 소리
Mute : 음소거
Play On Awake : 게임 시작할 때 바로 음원 시작하겠다.
Loop : 무한 반복
(Play On Awake, Loop는 게임 브금에서 사용)

오디오 리스너

오디오 리스너는 음원을 듣는 역할이고, 메인 카메라에 기본적으로 달려있다.
오디오 리스너는 딱 하나만 존재할 수 있다.
2d는 오디오 리스너가 단순하게 되어 있고, 3d는 좀 더 다양하게 구성되어 있다.

오디오 파일

free game audio에서 편하게 다운 받고 사용하면 된다.

음향 - 오디오 믹서

배경음 효과음 줄이고 등등 하고 싶은 방법은 유튜브에 검색하거나, ChatGPT에 질문하면 된다.

<오디오 정리>

반드시 알아야되는 2가지 가 있다. 오디오 소스, 오디오 리스너

Audio Source(오디오 소스)

  • 음향 재생하는 컴포넌트

Audio Listener(오디오 리스너)

  • 게임 내 음향을 듣는 역할을 하는 컴포넌트

  • 게임 내 단 하나만 존재해야 한다.

Audio Mixer

  • 믹싱하는 컴포넌트
profile
고급 개발자가 되고 싶어요!
post-custom-banner

0개의 댓글