๐ Game/โ Unreal
![[Unreal] Game Instance, Subsystem](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc8fYWS%2FbtsH2rhRmLg%2FmKlwkzncQPpqIbewzYCmL0%2Fimg.png)
[Unreal] Game Instance, Subsystem
1. Game InstanceGame Instance๋ ๊ฒ์์ด ์์ํ ๋ ๋ง๋ค์ด์ ธ ๊ฒ์์ด ์ข ๋ฃ๋ ๋๊น์ง ์กด์ฌํ๋ค.๋ ๋ฒจ์ด ๋ณ๊ฒฝ๋์ด๋ ๊ณ์ ์ ์ง๋์ด ์ ๋ณด๋ค์ ์ ์ฅํ๊ณ ๊ณต์ ํ๋ ๋ฐ ์ฌ์ฉํ๋ค.์ฑ๊ธํค๊ณผ ๊ฑฐ์ ๋น์ทํ ๊ฐ๋ ์ด๋ค. ์์ฑ๋ ๊ฒ์ ์ธ์คํด์ค๋ ํ๋ก์ ํธ ์ธํ ์์ ์ค์ ์ด ํ์ํ๋ค. ์ด๋ ํน์ ๊ฒ์ ์ธ์คํด์ค๋ฅผ ์ ํํ๋ฉด ๊ฒ์ ์ค ๋ณ๊ฒฝํ ์ ์์ผ๋ฉฐ ์ ํ๋ ํ๋์ ๊ฒ์ ์ธ์คํด์ค๋ง ์กด์ฌ ๊ฐ๋ฅํ๋ค. ๊ฒ์ ํ๋ฆ ๊ฐ์์ ๋ฐ๋ฅด๋ฉด ๊ฒ์ ์ธ์คํด์ค๋ ๊ณต์์ ์ผ๋ก ๊ฒ์ ํ๋ ์ด๊ฐ ์์๋๊ธฐ ์ , ๋จผ์ ๊ฒ์ ์ธ์คํด์ค๋ฅผ ์์ฑ(Create)ํ ํ ์ด๊ธฐํ(Init)๋ฅผ ์งํํ๋ค. 2. SubsystemSubsystem์ ์๋ช ์ด ๊ด๋ฆฌ๋๋ ์๋ ์ธ์คํด์ฑ ํด๋์ค์ด๋ค. ์ฆ, ํ๋ก๊ทธ๋๋จธ๊ฐ ์ง์ ์ธ์คํด์ค๋ฅผ ์์ฑ ๋ฐ ๊ด๋ฆฌํ์ง ์์๋ ์์ง์ด ์์์ ์ธ์คํด์ฑ..
![[Unreal] Object, Actor, Component](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiKVwK%2FbtsETmCbKk4%2Fl5rkHFq9tbnrxpmCIYikzk%2Fimg.png)
[Unreal] Object, Actor, Component
1. Object1) UObjectUObject๋ ์ธ๋ฆฌ์ผ์ด ์ค๊ณํ ์๋ก์ด ์์คํ ์ ๋จ์ ์ค๋ธ์ ํธ๋ก ์ธ๋ฆฌ์ผ์ ๋ชจ๋ ๊ฐ์ฒด๊ฐ ์์ํ๋ ๋ฒ ์ด์ค ํด๋์ค์ด๋ค.C++ ์ค๋ธ์ ํธ(๋ค์ดํฐ๋ธ ํด๋์ค)์ ์์ค์ ๋น ๋ฅธ ์ฒ๋ฆฌ๋ฅผ ์ํ ๊ธฐ๋ฅ ๊ตฌํ์ ์ฌ์ฉํ๋ค.์ ๋์ฌ FUObject ์ค๋ธ์ ํธC++ ์ค๋ธ์ ํธ์ ๊ฐ์ฒด์งํฅ์ค๊ณ๋ฅผ ์ํ ๋ค์ํ ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์ค๋ธ์ ํธ์ด๋ค.์ฝํ ์ธ ์ ์์ ๊ด๋ จ๋ ๋ณต์กํ ์ค๊ณ ๊ตฌํ์ ์ฌ์ฉํ๋ค.์ ๋์ฌ U 2) UHT(Unreal Header Tool)UObject๋ฅผ ์์ํ๋ฉด ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋๋ฐ, ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ํค๋ ํ์ผ์์ ์ ์ฒ๋ฆฌ ๋จ๊ณ๋ฅผ ๊ฑฐ์ณ ํ์ํ ์ ๋ณด๋ฅผ ์์งํด์ผ ํ๋ค. ์ด๋ฌํ ์ ์ฒ๋ฆฌ ๋จ๊ณ๋ UHT์์ ์ด๋ฃจ์ด์ง๋ค. ์ธ๋ฆฌ์ผ ํ๋ก์ ํธ ๋น๋ ์ ์ฐ์ UHT๋ ์์ค ์ฝ๋๋ฅผ ๋ถ์ํ์ฌ .generated.h ์..
![[Unreal] UMG](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ft2xUQ%2FbtssVWaHKb2%2F5wXQXAI79MbOsxJYMVtQJk%2Fimg.png)
[Unreal] UMG
1. UMGUMG(Unreal Motion Graphic)๋ ์ธ๋ฆฌ์ผ ์์ง์์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌ์ฑํ ์ ์๋ ์ ์ ํด์ด๋ค. 2. ์ฌ์ฉUMG์์๋ UI๋ฅผ ๊ตฌ์ฑํ๋ ๊ตฌ์ฑ ์์๋ค์ ์์ ฏ(Widget)์ด๋ผ๋ ๊ฐ๋ ์ผ๋ก ์ฌ์ฉํ๋ฉฐ, ์์ ฏ ๋ธ๋ฃจํ๋ฆฐํธ(Widget Blueprint)์์ ์ด ์์ ฏ๋ค์ ํธ์งํ์ฌ UI๋ฅผ ์ ์ํ ์ ์๋ค. ๋์์ด๋ํญ์ ์๊ฐ์ ๋ ์ด์์ ๊ตฌ์ฑ์ ์ํ ํธ์ง์ฐฝ์ด๋ค.๊ทธ๋ํํญ์ ์ธํฐ๋ ์ ๊ธฐ๋ฅ์ ์ํด ๋ง๋ จ๋ ์ฝ๋ฉ ์์ญ์ ํธ์ง์ฐฝ์ด๋ค. ์์ ฏ์ ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ํ์ฉํ์ฌ ๊ตฌ์ฑํ๋ ๊ฒ์ด ์ข๋ค. ๊ตฌํํ๊ณ ์ ํ๋ ์ฌ์ ์ต์๋จ์ผ๋ก ํ์ฌ ๊ฐ๊ฐ์ ๊ตฌ์ฑ ์์๋ค์ ๋ฐฐ์นํ๊ณ ๊ตฌ์ฑ ์์๊ฐ ํน์ ํ ๊ธฐ๋ฅ์ ๋ด์ ๊ฒฝ์ฐ์ ์์ ฏ์ผ๋ก ๋ฌถ์ด์ ๊ทธ๋ฃนํํ๋ค.์ต์์ ์์ ฏ์ ์บ๋ฒ์ค ํจ๋์ ํ์ฉํ์ฌ ์์ ฏ๋ค์ ๋ ์ด์์์ ๊ตฌ์ฑํ๋ค.ํ์ ์์ ฏ์ ํน์ ๊ธฐ๋ฅ..
![[Unreal] ๋ฐ๋ผ๋ณด๋ Actor์๊ฒ ํจ๊ณผ ์ฃผ๊ธฐ](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fsub0a%2FbtsHnWA2KCk%2F4dHnKpvssOnVaAe5nw0lWk%2Fimg.gif)
[Unreal] ๋ฐ๋ผ๋ณด๋ Actor์๊ฒ ํจ๊ณผ ์ฃผ๊ธฐ
๋ฐ๋ผ๋ณด๋ Actor์๊ฒ ํจ๊ณผ ์ฃผ๊ธฐ 1. Overlay MaterialOverlay Material์ ๊ธฐ์กด ์กํฐ์ ์ค์ ๋ Material์ ์ถ๊ฐ๋ก ๋ธ๋ ๋ ํ๊ธฐ ์ํ Material์ด๋ค. ์ธ๊ณฝ์ , ๋น ๋ฑ ์ฌ๋ฌ ์ฌ๋ฌ ํจ๊ณผ๋ฅผ ๋ฃ์ ์ ์๋ค. ์บ๋ฆญํฐ๊ฐ ์ด ์กํฐ๋ฅผ ๋ฐ๋ผ๋ณผ ๋ ํด๋น ๋จธํฐ๋ฆฌ์ผ์ M_Outline ๋จธํฐ๋ฆฌ์ผ์ Set ํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํํ ๊ฒ์ด๋ค. M_Outline ๋จธํฐ๋ฆฌ์ผ์ ์์์ ์๋๋ก ๋น์ ๋ด๋ฉฐ Highlight ๋๋ ๋จธํฐ๋ฆฌ์ผ์ด๋ค. ๊ตฌํ์ ๋ค์๊ณผ ๊ฐ๋ค. Blend Mode: AdditiveShading Model: Unlit 2. Sphere Trace By Channel์บ๋ฆญํฐ๊ฐ ์กํฐ๋ฅผ ๋ฐ๋ผ๋ณด๋์ง ํ์ธํ๊ธฐ ์ํด Trace๋ฅผ ํ์ฉํ ๊ฒ์ด๋ค. ๋จผ์ ํน์ ์กํฐ๋ง ํ์งํ๊ธฐ ์ํด Trace ์ฑ๋์ ํ๋..
![[Unreal] ์นด๋ฉ๋ผ ๊ฐ์](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbATgAR%2FbtsG4fWwAn6%2FUhAkBSOX9EcKAGCEQpdYu0%2Fimg.png)
[Unreal] ์นด๋ฉ๋ผ ๊ฐ์
1. ์นด๋ฉ๋ผ๊ฐ ์บ๋ฆญํฐ ๋ชธ์ ๋ซ๋ ํ์์บ๋ฆญํฐ๊ฐ ์ค๋ธ์ ํธ์ ๊ฐ๊น์ด ๊ฐ๊ฒ ๋๋ฉด, ์นด๋ฉ๋ผ์ ์ค๋ธ์ ํธ๊ฐ ๊ฐ๊น์์ ธ ์บ๋ฆญํฐ ๋ชธ์ ๋ซ๋ ํ์์ด๋ค. Collision Presets ๋ด Camera ์ค์ ์ Block์ผ๋ก ๋ณ๊ฒฝํ๋ฉด ๋๋ค.Default๋ก Block ์ค์ ๋์ด ์์ง๋ง ํน์๋ ๋ค๋ฅธ ๊ฐ์ผ๋ก ์์ ํ์ ๊ฒฝ์ฐ ๋ณ๊ฒฝ์ด ํ์ํ๋ค. ์ด๋ ๊ฒ ๋ณ๊ฒฝํ๋๋ผ๋ ๋งค์ฐ ๊ฐ๊น๊ฒ ์นด๋ฉ๋ผ๊ฐ ์ด๋ํ๋ฉด ์ฌ์ ํ ๋ชธ์ ๋ซ๊ณ ์๋ค.์ด๋ด ๋ ํ๋ก์ ํธ ์ธํ ์์ Near Clip Plane ๊ฐ์ ๋ณ๊ฒฝํ ํ ํ๋ก์ ํธ๋ฅผ ๋ค์ ์์ํ๋ฉด ๋๋ค. ์ด๋ ๊ฒ ๊ฐ๊น๊ฒ ์นด๋ฉ๋ผ๊ฐ ๋ถ์ด๋ ๋ชธ์ ๋ซ์ง ์๋๋ค. 2. ์นด๋ฉ๋ผ ์ถฉ๋์ด ์ด์ํ ํ์์นด๋ฉ๋ผ์ ์ค๋ธ์ ํธ๊ฐ ๊ฐ๊น์์ง๋ฉด ์๊ฐ์ ์ผ๋ก ์นด๋ฉ๋ผ๊ฐ ์ด๋๋๋๋ฐ, ์์ง์์ด ๋ฑ๋ฑํด์ ์ด์ํด ๋ณด์ธ๋ค. ๊ทธ๋์ ์นด๋ฉ๋ผ Collision์ ์ง..
![[Unreal] NavMesh๊ฐ Collision, Blocking Volume ๋ด๋ถ์ ์์ฑ๋๋ ํ์](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8QkeB%2FbtsGNBZa9r5%2FU6tEQja4TO3KVrKPTUAUwK%2Fimg.png)
[Unreal] NavMesh๊ฐ Collision, Blocking Volume ๋ด๋ถ์ ์์ฑ๋๋ ํ์
1. ํ์ NavMesh๋ฅผ ์ฌ์ฉํ์ฌ AI Pawn์ด ์ด๋ํ ์ ์๋ ์์ญ์ ๋ง๋ค๊ณ ์ ํ๋ค. ๊ทธ๋ฌ๋ ๋ค์๊ณผ ๊ฐ์ด Static Mesh์ ๋ด๋ถ์๋ Nav๊ฐ ์ค์ ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. ์ฐธ๊ณ ๋ก ์ด Static Mesh๋ Collision์ด๋ Blocking Volume์ ์ด์ฉํ์ฌ Blocking์ด ์ค์ ๋ ์ํ์ด๋ค. 2. ์ ๊ทธ๋ด๊น? Collision๊ณผ Blocking Volume์ ๋ด๋ถ๋ผ๋ ๊ฐ๋ ์ด ์๊ณ ์ฐจ๋จ ๋ฉด์ด๋ค. ์ฆ, ๋ด๋ถ๋ ๋น์ด์๋ค. 3. ํด๊ฒฐ 1) MinRegionArea NavMesh์ MinRegionArea ๊ฐ์ ์์ ํ๋ฉด, NavMesh ๋ด ์ฐ๊ฒฐ๋์ง ์์ ์์ ์์ญ๋ค ์ค ์ด ๊ฐ๋ณด๋ค ์์ ๊ฐ์ ์ ๊ฑฐํ ์ ์๋ค. ๊ทธ๋ฌ๋ ์ผ๋ถ ์ง์ญ์ ์ ๊ฑฐ๋์ง ์์ ์ ์๋ค. NavMesh๋ ํ์ผ ๊ทธ๋ฆฌ๋๋ก ๋ณ๋ ฌ๋ก ์ ์..