
포스트 프로세싱
게임에서 렌더링이 완료된 화면에 추가적인 그래픽 효과를 적용
1. Bloom (블룸)
- 밝은 영역에서 빛이 번지는 효과를 추가하여 더 화려하고 빛나는 느낌을 연출
2. Color Grading (색 보정)
- 화면 전체의 색상, 채도, 명도를 조정하여 특정 분위기를 연출
3. Depth of Field (초점 효과)
- 특정 영역에만 초점을 맞추고 나머지 영역은 흐릿하게 처리
4. Motion Blur (모션 블러)
- 빠르게 움직이는 물체 주변에 잔상을 남겨 더 자연스럽고 역동적인 연출
5. Ambient Occlusion (환경 광 차폐)
- 표면 간의 좁은 공간에서 빛이 닿지 않는 어두운 영역을 추가하여 더 사실적인 그림자 표현
6. Vignette (비네트)
- 화면 가장자리를 어둡게 하여 중앙에 집중도를 높이는 효과
7. Chromatic Aberration (색수차)
- 렌즈의 왜곡 효과를 추가하여 화면 가장자리에 색 번짐을 연출
8. Lens Distortion (렌즈 왜곡)
- 화면을 렌즈로 보는 것처럼 굴곡을 추가하여 독특한 시각적 효과를 만듦
베이스 유아이를 잡고

유아이 메니저를 만듬
public enum UIState
{
Home,
Game,
Score,
}
public class UiManager : MonoBehaviour
{
static UiManager instance;
public static UiManager Instance
{
get { return instance; }
}
UIState currentState = UIState.Home;
HomeUI homeUI = null;
GameUI gameUI = null;
ScoreUI scoreUI = null;
TheStack theStack = null;
private void Awake()
{
instance = this;
theStack = FindObjectOfType<TheStack>();
homeUI = GetComponentInChildren<HomeUI>(true);
homeUI?.Init(this);
gameUI = GetComponentInChildren<GameUI>(true);
gameUI?.Init(this);
scoreUI = GetComponentInChildren<ScoreUI>(true);
scoreUI?.Init(this);
ChangeState(UIState.Home);
}
public void ChangeState(UIState state)
{
currentState = state;
homeUI?.SetActive(currentState);
gameUI?.SetActive(currentState);
scoreUI?.SetActive(currentState);
}
public void OnClickStart()
{
ChangeState(UIState.Game);
}
public void OnClickExit()
{
#if UNITY_EDITOR
UnityEditor.EditorApplication.isPlaying = false;
#else
Application.Quit();
#endif
}
}

이넘에 만들었던 각각의 유아이 스크립트를 작성
AddListener를 사용해 코드로 직접 버튼의 조건을 부여
[SerializeField] 를 사용해서 Handler 만드는 강의를 봤는데
확실히 잘 사용하면 되게 편하겠는데
float horizontal = Input.GetAxisRaw("Horizontal");
float vertical = Input.GetAxisRaw("Vertical");
유니티에서 기본적으로 프로젝트 셋팅에 저장되어있는 값
float horizontal = Input.GetAxisRaw("Horizontal"); = ← a / → d 입력받는 값
float vertical = Input.GetAxisRaw("Vertical"); = ⇡ w / ⇣ s 입력받는 값