Collision Profile
๊ฐ์
Collision Profile(์ฝ๋ฆฌ์ ํ๋กํ์ผ)์ ์ค๋ธ์ ํธ์ ์ถฉ๋ ์์ฑ์ ์ธ๋ฐํ๊ฒ ์ ์ํ๋ ์์คํ ์ ๋๋ค. ๊ฐ ํ๋กํ์ผ์ ์ค๋ธ์ ํธ๊ฐ ์ด๋ค Collision Channel(์ฝ๋ฆฌ์ ์ฑ๋) ์ ์ํ๋์ง, ๋ค๋ฅธ ์ฑ๋๊ณผ ์ด๋ป๊ฒ ์ํธ์์ฉํ๋์ง๋ฅผ ์ ์ํฉ๋๋ค. ์ด๋ฅผ ํตํด ๋ณต์กํ ์ถฉ๋ ๊ท์น์ ์ฒด๊ณ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์์ผ๋ฉฐ, ์๋ฅผ ๋ค์ด ํ๋ ์ด์ด๋ ๋ฒฝ๊ณผ ์ถฉ๋ํ์ง๋ง ํฌ์ฌ์ฒด๋ ํต๊ณผํ๋๋ก ์ค์ ํ๋ ๋ฑ์ ๋ค์ํ ๊ฒ์ ์ํฉ์ ๊ตฌํํ ์ ์์ต๋๋ค.
OVERDARE Studio์ ์ถฉ๋ ์์คํ ์ Collision Channel๊ณผ Collision Profile๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ๊ฐ๊ฐ์ ์ญํ ๊ณผ ๊ด๊ณ๋ฅผ ์ดํดํ๋ฉด ๋์ฑ ํจ๊ณผ์ ์ผ๋ก ์ถฉ๋ ์์คํ ์ ์ค๊ณํ ์ ์์ต๋๋ค.
Collision System ๊ตฌ์ฑ ์์
Collision Channel
Collision Channel(์ฝ๋ฆฌ์ ์ฑ๋)์ ์ค๋ธ์ ํธ์ ๊ทธ๋ฃนํ ๋๋ Raycast ๋ฑ์ ์ฟผ๋ฆฌ ํํฐ๋ง์ ์ํด์ ์ฌ์ฉ ๋ฉ๋๋ค
Object Type์ ์ฑ๋์ธ ๊ฒฝ์ฐ
์ด์ ์ Collision Group๊ณผ ์ ์ฌํ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
Collision Group๊ณผ ๋ฌ๋ฆฌ ๊ฐ ์ฑ๋ ๊ฐ์ ์ํธ์์ฉ ์ฌ๋ถ๋ ์ฑ๋ ์์ฒด์์ ์ค์ ํ์ง ์์ต๋๋ค.
์ฑ๋์ ๋จ์ํ ์ค๋ธ์ ํธ๋ฅผ ๊ทธ๋ฃนํํ๋ ์ญํ ๋ง ํ๋ฉฐ, ์ค์ ์ถฉ๋ ๊ด๊ณ๋ Collision Profile์์ ์ ์ํฉ๋๋ค.

Trace Type ์ ์ฑ๋์ธ ๊ฒฝ์ฐ
RaycastSingleByChannel , SpherecastSingleByChannel ๊ณผ ๊ฐ์ ์ฟผ๋ฆฌ์์ ์ธ์๋ก ์ฌ์ฉ๋ฉ๋๋ค
๊ฒ์ถ ๋์ ์ค๋ธ์ ํธ์ Collision Profile ์ ๋ํ ๊ฐ์ง ์ฌ๋ถ๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.

Collision Channel ์ ํ ์ฌํญ
Collision Channel์ ์ด 32๊ฐ๊น์ง ์์ฑํ ์ ์์ผ๋ฉฐ, ๊ทธ์ค 18๊ฐ๋ฅผ ํฌ๋ฆฌ์์ดํฐ๊ฐ ์ง์ ์ ์ํ์ฌ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Collision Channel์๋ Trace Type ์ฑ๋ ๋๋ Object Type ์ฑ๋์ ์ถ๊ฐํ ์ ์์ต๋๋ค. ๋ ํ์ ์ 32๊ฐ์ ์ฑ๋์ ๊ณต์ ํฉ๋๋ค.
Profile์ ๊ฐ์ ์ ํ์ด ์์ผ๋ฏ๋ก, ์ถ๊ฐ ์ฑ๋ ์์ด๋ ์ถฉ๋ถํ ๊ธฐ๋ฅ ํ์ฅ์ด ๊ฐ๋ฅํฉ๋๋ค.
๋ณดํต์ Object Type ์ฑ๋์ ์ถ๊ฐ ์์ด Profile๋ง ์ถ๊ฐํด๋ ์ถฉ๋ถํ ํธ์ ๋๋ค.
Collision Profile
Collision Profile(์ฝ๋ฆฌ์ ํ๋กํ์ผ)์ ์ค๋ธ์ ํธ์ ์ฝ๋ฆฌ์ ๊ด๋ จ ์์ฑ์ ์ข ํฉ์ ์ผ๋ก ์ ์ํ๋ ๊ตฌ์กฐ์ ๋๋ค. ์ธ๋ฆฌ์ผ ์์ง์ Collision Preset ๊ฐ๋ ๊ณผ ์ ์ฌํ๋ฉฐ, ์์ฃผ ์ฌ์ฉ๋๋ ์ถฉ๋ ์ค์ ์ ๋ฏธ๋ฆฌ ์ ์ํ์ฌ ์ฌ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ฐ ํ๋กํ์ผ์ ๋ค์ ๋ ๊ฐ์ง ํญ๋ชฉ์ ์ ์ํฉ๋๋ค:

์ค๋ธ์ ํธ ํ์ (Object Type / Collision Channel) : ํด๋น ํ๋กํ์ผ์ ๊ฐ์ง ์ค๋ธ์ ํธ๊ฐ ์ํ๋ ์ฝ๋ฆฌ์ ์ฑ๋
๋ค๋ฅธ ์ฑ๋๊ณผ์ ์ถฉ๋/์ธํฐ๋์ ํ์ฉ ์ํ(Collision Response): ๊ฐ ์ฝ๋ฆฌ์ ์ฑ๋๊ณผ์ ๊ตฌ์ฒด์ ์ธ ์ํธ์์ฉ ๋ฐฉ์(์ถฉ๋, ์ค๋ฒ๋ฉ๋ง, ๋ฌด์ ๋ฑ)
์๋ฅผ ๋ค์ด, "์ด ํ๋กํ์ผ์ ํด๋นํ๋ ์ค๋ธ์ ํธ๋ 'Humanoid' ์ฑ๋์ ์ํ๋ฉฐ, 'WorldStatic' ์ฑ๋๊ณผ๋ ์ถฉ๋ํ๊ณ , 'Projectile' ์ฑ๋๊ณผ๋ ์ค๋ฒ๋ฉ๋ง ๋๋ฉฐ, 'Trigger' ์ฑ๋๊ณผ๋ ์ํธ์์ฉํ์ง ์๋๋ค"์ ๊ฐ์ด ์ ์ํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ ์ ๊ณต Collision Profile
OVERDARE Studio๋ ์์ฃผ ์ฌ์ฉ๋๋ ์ถฉ๋ ์ค์ ์ ๋ฏธ๋ฆฌ ์ ์ํ ๊ธฐ๋ณธ ํ๋กํ์ผ์ ์ ๊ณตํฉ๋๋ค:
ํ๋กํ์ผ๋ช
Object Type
์ฃผ์ ์ฉ๋
NoCollision
WorldStatic
์ถฉ๋์ด ํ์ ์๋ ์ค๋ธ์ ํธ (์: ์ดํํธ, ํํฐํด)
BlockAll
WorldStatic
๋ชจ๋ ์ฑ๋๊ณผ ์ถฉ๋ํ๋ ์ค๋ธ์ ํธ
OverlapAll
WorldStatic
๋ชจ๋ ์ฑ๋๊ณผ ์ค๋ฒ๋ฉ๋ง ๋๋ ์ค๋ธ์ ํธ
BlockAllDynamic
WorldDynamic
๋์ ์ค๋ธ์ ํธ์ฉ ์ ์ฒด ์ถฉ๋
OverlapAllDynamic
WorldDynamic
๋์ ์ค๋ธ์ ํธ์ฉ ์ ์ฒด ์ค๋ฒ๋ฉ
์ด๋ฌํ ๊ธฐ๋ณธ ํ๋กํ์ผ์ ํ์ฉํ๊ฑฐ๋, ํ์์ ๋ฐ๋ผ ์ปค์คํ ํ๋กํ์ผ์ ์์ฑํ์ฌ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Collision Profile ์ฌ์ฉ ๋ฐฉ๋ฒ
Collision Profile ํจ๋ ํ์
Collision Profile์ OVERDARE Studio ์ต์๋จ ํญ ์์ญ์์ Model ํญ์ ์ ํํ๋ฉด ์ถ๋ ฅ๋๋ Collision Profile ๋ฒํผ์ ํด๋ฆญํ์ฌ ํ์ํ ์ ์์ต๋๋ค.

Collision Channel ์์ฑ ๋ฐ ๊ด๋ฆฌ
Collision Channel ์ถ๊ฐ
Collision Profile ์ฐฝ์์ Collision Channel ์น์ ์ Empty Channel์ ์ด๋ฆ์ ๋ฐ๊พธ์ด ์๋ก์ด ์ฑ๋๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋๋ Default Channel์ ์ด๋ฆ ๋ณ๊ฒฝ ๋ฐ ์ญ์ ๊ฐ ๋ถ๊ฐํฉ๋๋ค.์ฑ๋ ์ด๋ฆ์ ์ต๋ 50์๊น์ง ์ค์ ํ ์ ์์ต๋๋ค.

Collision Channel ๊ด๋ฆฌ
์ฑ๋๋ช ์์์ ๋ง์ฐ์ค ๋๋ธ ํด๋ฆญํ์ฌ ์ฑ๋๋ช ์ ๋ณ๊ฒฝํ ์ ์์ผ๋ฉฐ, Delete๋ฅผ ํตํด ์ฑ๋์ ์ญ์ ํ ์ ์์ต๋๋ค.
๊ธฐ์กด์ ์ด๋ฏธ ์กด์ฌํ๋ ์ฑ๋๋ช ์ผ๋ก๋ ๋ณ๊ฒฝ์ด ๋ถ๊ฐํฉ๋๋ค.์ฑ๋์ ์ญ์ ํ๋ฉด ํด๋น ์ฑ๋์ ์ฌ์ฉํ๋ ํ๋กํ์ผ์ด ์ํฅ์ ๋ฐ์ ์ ์์ผ๋ฏ๋ก ์ฃผ์๊ฐ ํ์ํฉ๋๋ค.
Collision Cannel ์ ๋ณด ์์
ObjectType
ํด๋น ์ฑ๋์ ์ค๋ธ์ ํธ ํ์ ์ผ๋ก ์ค์ ํฉ๋๋ค. ํด๋น ์ค๋ธ์ ํธ ํ์ ์ ๊ธฐ๋ณธ Response๋ฅผ ์ค์ ํฉ๋๋ค.
๋ณ ๋ค๋ฅธ Profile์ด ์ง์ ๋์ง ์์ผ๋ฉด, ํด๋น ์ค๋ธ์ ํธ ํ์ ์ ๋ชจ๋ ๊ธฐ๋ณธ Responce๋ก ์๋ํฉ๋๋ค.
TraceType
TraceType์ผ๋ก ์ง์ ํ๋ ๊ฒฝ์ฐ, ํด๋น TraceChannel์ด CollisionProfile๊ณผ ์ด๋ป๊ฒ ๋ฐ์ ํ๋์ง ๊ฒฐ์ ํฉ๋๋ค.
์๋ฅผ ๋ค์ด TraceResponce๋ก Pawn์ Ignore ๋ก ์ง์ ํ ๊ฒฝ์ฐ, ํด๋น ์ฑ๋์ ์ด์ฉํด Raycast๋ฅผ ํ ๋, Pawn Profile์ ์ฌ์ฉํ๋ Part, MeshPart๋ ๊ฒ์ถ๋์ง ์์ต๋๋ค.
์ฃผ์ ์ฌ์ฉ์ฌ๋ก
CameraChannel์์ Wall CollisionProfile์ Ignore๋ก ์ค์ ํ๋ฉด, Wall Profile๋ก ์ง์ ๋ ๋ฒฝ์ด ์บ๋ฆญํฐ์ ์นด๋ฉ๋ผ ์ฌ์ด์ ์๋๋ผ๋, ์นด๋ฉ๋ผ๊ฐ ์บ๋ฆญํฐ๋ฅผ ๋ณผ ์ ์๋๋ก ๋ฒฝ ์์ผ๋ก ์ด๋ํ์ง ์์ต๋๋ค.
Collision Profile ์์ฑ ๋ฐ ๊ด๋ฆฌ
Collision Profile ์ถ๊ฐ
Collision Profile ์ฐฝ์์ + New Profile ๋ฒํผ์ ํด๋ฆญํ์ฌ ์๋ก์ด ํ๋กํ์ผ์ ์์ฑํ ์ ์์ต๋๋ค. ์์ฑ ์ New Profile๋ก ์์ฑ๋๋ฉฐ, ํ๋กํ์ผ ์ด๋ฆ์ ๋ณ๊ฒฝํ์ฌ ์ฌ๋ฌ ํ๋กํ์ผ์ ์์ฑํ๊ณ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.

Collision Profile ์ค์
ํ๋กํ์ผ์ ์ ํํ๋ฉด ์ฐ์ธก ํจ๋์์ ๋ค์ ํญ๋ชฉ๋ค์ ์ค์ ํ ์ ์์ต๋๋ค:
์ค๋ธ์ ํธ ํ์ ์ค์
Object Type ๋๋กญ๋ค์ด ๋ฉ๋ด์์ ํด๋น ํ๋กํ์ผ์ ๊ฐ์ง ์ค๋ธ์ ํธ๊ฐ ์ํ Collision Channel์ ์ ํํฉ๋๋ค.
์๋ฅผ ๋ค์ด, ํ๋ ์ด์ด ์บ๋ฆญํฐ์ฉ ํ๋กํ์ผ์ด๋ผ๋ฉด "Player" ์ฑ๋์ ์ ํํ๊ณ , ๋ฒฝ์ด๋ ๋ฐ๋ฅ ๊ฐ์ ์ ์ ์ค๋ธ์ ํธ์ฉ ํ๋กํ์ผ์ด๋ผ๋ฉด "WorldStatic" ์ฑ๋์ ์ ํํ ์ ์์ต๋๋ค.
์ฑ๋๋ณ ์ํธ์์ฉ ์ค์
Collision Responses ์น์ ์์ ๊ฐ Collision Channel๊ณผ์ ๊ตฌ์ฒด์ ์ธ ์ํธ์์ฉ ๋ฐฉ์์ ์ค์ ํ ์ ์์ต๋๋ค.
๊ฐ ์ฑ๋์ ๋ํด ๋ค์ ์ต์ ์ค ํ๋๋ฅผ ์ ํํ ์ ์์ต๋๋ค:
Block
ํด๋น ์ฑ๋์ ์ค๋ธ์ ํธ์ ์ถฉ๋ํฉ๋๋ค. ํด๋น ์ฑ๋์ด Trace Type์ ์ฑ๋์ธ ๊ฒฝ์ฐ,
Overlap
ํด๋น ์ฑ๋์ ์ค๋ธ์ ํธ์ ์ค๋ฒ๋ฉ๋ง ๋๋ฉฐ, ๋ฌผ๋ฆฌ์ ์ถฉ๋์ ๋ฐ์ํ์ง ์์ต๋๋ค.
Ignore
ํด๋น ์ฑ๋์ ์ค๋ธ์ ํธ์ ์ํธ์์ฉํ์ง ์์ต๋๋ค.
Collision Response ์ฐ์ ์์:
Collision Response๋ Ignore > Overlap > Block ์์ผ๋ก ์ฐ์ ์์๊ฐ ๋์ต๋๋ค. ๋ ์ค๋ธ์ ํธ๊ฐ ์๋ก ๋ค๋ฅธ Response๋ฅผ ๊ฐ์ง ๊ฒฝ์ฐ, ๋ ๋์ ์ฐ์ ์์์ Response๊ฐ ์ ์ฉ๋ฉ๋๋ค.- Block vs Overlap โ Overlap์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
Block vs Ignore โ Ignore๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
๋ ์ค๋ธ์ ํธ ๋ชจ๋ Block์ผ๋ก ์ค์ ํ ๊ฒฝ์ฐ์๋ง ์ถฉ๋์ด ๋ฐ์ํฉ๋๋ค.
๊ฐ์ ์ฑ๋ ๊ฐ ์ถฉ๋ ์ค์ : ๊ฐ์ ์ฑ๋(์: Pawn โ Pawn)์ ์ํ ์ค๋ธ์ ํธ๋ค ๊ฐ์ ์ถฉ๋๋ ํ๋กํ์ผ๋ณ๋ก ๋ค๋ฅด๊ฒ ์ค์ ํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, RootPart ํ๋กํ์ผ์ ๋ค๋ฅธ Pawn๊ณผ Overlap์ผ๋ก ์ค์ ํ๊ณ , BodyPart ํ๋กํ์ผ์ ๋ค๋ฅธ Pawn๊ณผ Block์ผ๋ก ์ค์ ํ์ฌ, RootPart๋ ๋ฌด์ํ๊ณ BodyPart๋ง Hitํ๋๋ก ์ค์ ํ ์ ์์ต๋๋ค.

Collision Profile ๊ด๋ฆฌ
ํ๋กํ์ผ๋ช ์์์ ๋ง์ฐ์ค ๋๋ธํด๋ฆญํ์ฌํ๋กํ์ผ๋ช ์ ๋ณ๊ฒฝํ ์ ์์ผ๋ฉฐ, Delete๋ฅผ ํตํด ํ๋กํ์ผ์ ์ญ์ ํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ์ ๊ณตํ๋ ํ๋กํ์ผ๋ช ์ผ๋ก๋ ๋ณ๊ฒฝ์ด ๋ถ๊ฐํฉ๋๋ค. ํ๋กํ์ผ์ ์ญ์ ํ๋ฉด ํด๋น ํ๋กํ์ผ์ ์ฌ์ฉํ๋ ์ค๋ธ์ ํธ๊ฐ ์ํฅ์ ๋ฐ์ ์ ์์ผ๋ฏ๋ก ์ฃผ์๊ฐ ํ์ํฉ๋๋ค.
์ค๋ธ์ ํธ์ Collision Profile ์ ์ฉ
Collision Profile์ ์ค์ ํ ์ค๋ธ์ ํธ(Part, MeshPart ๋ฑ)๋ฅผ ์ ํํ ํ, ํ๋กํผํฐ ์ฐฝ์์ Collision Profile ์์ฑ์ ํ๋กํ์ผ ์ด๋ฆ์ ์ ๋ ฅํ์ฌ ์ค์ ํ ์ ์์ต๋๋ค.
๊ฐ ์ค๋ธ์ ํธ๋ ํ๋์ Collision Profile๋ง ๊ฐ์ง ์ ์์ต๋๋ค.

Collision Profile ํ์ฉ ์์
์์ 1: ํ๋ ์ด์ด์ ํฌ์ฌ์ฒด ์์คํ
ํ๋ ์ด์ด ์บ๋ฆญํฐ๋ ๋ฒฝ๊ณผ ์ถฉ๋ํ์ง๋ง, ํฌ์ฌ์ฒด๋ ํ๋ ์ด์ด๋ฅผ ํต๊ณผํ๊ณ ๋ฒฝ์๋ง ์ถฉ๋ํ๋๋ก ์ค์ ํ ์ ์์ต๋๋ค.
Collision Channel ์์ฑ
"Humanoid" ์ฑ๋ ์์ฑ (๋๋ ๊ธฐ๋ณธ ์ ๊ณต ์ฑ๋ ์ฌ์ฉ)
"Projectile" ์ฑ๋ ์์ฑ
"WorldStatic" ์ฑ๋ ์์ฑ (๊ธฐ๋ณธ ์ ๊ณต, WorldStatic์์ ๋ณ๊ฒฝ๋จ)
Collision Profile ์์ฑ
PlayerProfile:
Object Type: Humanoid
Collision Response
WorldStatic: Block
Projectile: Overlap
Humanoid: Block
ProjectileProfile:
Object Type: Projectile
Collision Response
WorldStatic: Block
Humanoid: Overlap
Projectile: Ignore
์ค๋ธ์ ํธ์ ํ๋กํ์ผ ์ ์ฉ
ํ๋ ์ด์ด ์บ๋ฆญํฐ์ ํ์ Part๋ค์ PlayerProfile ์ ์ฉ
ํฌ์ฌ์ฒด ์ค๋ธ์ ํธ์ ProjectileProfile ์ ์ฉ
๋ฒฝ๊ณผ ๋ฐ๋ฅ ์ค๋ธ์ ํธ์ WorldStatic ์ฑ๋์ ์ฌ์ฉํ๋ ํ๋กํ์ผ ์ ์ฉ
์์ 2: ํธ๋ฆฌ๊ฑฐ ์์ญ ์ค์
ํน์ ์์ญ์ ์ง์ ํ์ ๋ ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ํค๋ ํธ๋ฆฌ๊ฑฐ ์์ญ์ ๋ง๋ค ์ ์์ต๋๋ค.
Collision Channel ์์ฑ
"Trigger" ์ฑ๋ ์์ฑ (๋๋ ๊ธฐ๋ณธ ์ ๊ณต ์ฑ๋ ์ฌ์ฉ)
Collision Profile ์์ฑ
TriggerProfile:
Object Type: Trigger
Collision Response
Humanoid: Overlap
WorldStatic: Ignore
Projectile: Ignore
์ค๋ธ์ ํธ์ ํ๋กํ์ผ ์ ์ฉ
ํธ๋ฆฌ๊ฑฐ ์์ญ Part์ TriggerProfile ์ ์ฉ
Touched์ด๋ฒคํธ๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ ์ด์ด ์ง์ ๊ฐ์ง
์์ 3: ๊ธฐ๋ณธ ํ๋กํ์ผ ํ์ฉ
๊ธฐ๋ณธ ์ ๊ณต ํ๋กํ์ผ์ ํ์ฉํ์ฌ ๋น ๋ฅด๊ฒ ์ถฉ๋ ์ค์ ์ ์ ์ฉํ ์ ์์ต๋๋ค.
NoCollision ํ๋กํ์ผ: ์ดํํธ, ํํฐํด ๋ฑ ์ถฉ๋์ด ํ์ ์๋ ์ค๋ธ์ ํธ์ ์ ์ฉ
BlockAll ํ๋กํ์ผ: ๋ชจ๋ ์ค๋ธ์ ํธ์ ์ถฉ๋ํด์ผ ํ๋ ๋ฒฝ, ๋ฐ๋ฅ ๋ฑ์ ์ ์ฉ
OverlapAll ํ๋กํ์ผ: ๋ชจ๋ ์ค๋ธ์ ํธ์ ์ค๋ฒ๋ฉ๋ง ๋๋ ํธ๋ฆฌ๊ฑฐ ์์ญ์ ์ ์ฉ
ํ์์ ๋ฐ๋ผ ๊ธฐ๋ณธ ํ๋กํ์ผ์ ๋ณต์ฌํ์ฌ ์ปค์คํฐ๋ง์ด์งํ๊ฑฐ๋, ์๋ก์ด ํ๋กํ์ผ์ ์์ฑํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ ์ ๊ณต Collision Channel
OVERDARE Studio๋ ๊ฒ์ ๊ฐ๋ฐ์ ์์ฃผ ์ฌ์ฉ๋๋ Collision Channel์ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํฉ๋๋ค.
์ฑ๋๋ช
์ค๋ช
์ฉ๋
WorldStatic
๊ณ ์ ๋ ์ค๋ธ์ ํธ (Anchored, ๋ฌผ๋ฆฌ ์๋ฎฌ๋ ์ด์ ์์)
๋งต์ ๊ณ ์ ๋ ๋ฐ์, ํ์ค, ๋ฒฝ ๋ฑ
WorldDynamic
๋์ ์ค๋ธ์ ํธ (!Anchored, ๋ฌผ๋ฆฌ ์๋ฎฌ๋ ์ด์ ์์)
์์ง์ด๋ ํ๋ซํผ, ๋์ด ๋ฑ
PhysicsBody
๋ฌผ๋ฆฌ ์๋ฎฌ๋ ์ด์ ์ค๋ธ์ ํธ (CanCollide && !Anchored)
๋ฌผ๋ฆฌ์ ์ผ๋ก ์๋ฎฌ๋ ์ด์ ๋๊ณ ์ถฉ๋ ์ฒ๋ฆฌ๋๋ ์ค๋ธ์ ํธ
Pawn
ํ๋ ์ด์ด๊ฐ ๋น์ ๊ฐ๋ฅํ ์บ๋ฆญํฐ
ํ๋ ์ด์ด ์บ๋ฆญํฐ, NPC ๋ฑ
Trace Channel ํ์ฉ
Trace Channel์ Raycast ๋ฑ์ ์ฟผ๋ฆฌ ์์
์์ ์ฌ์ฉ๋๋ ์ฑ๋์
๋๋ค. RaycastByChannel() API์์ Trace Channel์ ์ฌ์ฉํ๋ฉด ํ๋กํ์ผ๋ณ๋ก Overlap ๋๋ Hit ๊ฒ์ถ์ด ๊ฐ๋ฅํฉ๋๋ค.
Trace Channel๊ณผ Object Type Channel์ ๊ด๊ณ
Trace Channel๊ณผ Object Type Channel์ 32๊ฐ์ ์ฑ๋์ ๊ณต์ ํฉ๋๋ค.
Trace Channel์ Raycast, LineTrace ๋ฑ์ ์ฟผ๋ฆฌ ์์ ์์ ์ฌ์ฉ๋ฉ๋๋ค.
Object Type Channel์ ์ค๋ธ์ ํธ์ ์ถฉ๋ ๊ทธ๋ฃนํ์ ์ฌ์ฉ๋ฉ๋๋ค.
๊ฐ์ ์ฑ๋์ Trace Channel๊ณผ Object Type Channel๋ก ๋ชจ๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Trace Channel ์ฌ์ฉ ์์
ํน์ Trace Channel์ ์ฌ์ฉํ์ฌ Raycast๋ฅผ ์ํํ๋ฉด, ํด๋น ์ฑ๋์ ๋ํ ํ๋กํ์ผ์ Collision Response ์ค์ ์ ๋ฐ๋ผ ๋ค์๊ณผ ๊ฐ์ด ๊ฒ์ถ๋ฉ๋๋ค:
Block: Hit์ผ๋ก ๊ฒ์ถ๋ฉ๋๋ค.
RaycastResult์์Hit์์ฑ์ดtrue๊ฐ ๋ฉ๋๋ค.Overlap: Overlap์ผ๋ก ๊ฒ์ถ๋ฉ๋๋ค.
RaycastResult์์Hit์์ฑ์ดfalse์ด๊ณOverlap์์ฑ์ดtrue๊ฐ ๋ฉ๋๋ค.Ignore: ๊ฒ์ถ๋์ง ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, "WeaponTrace"๋ผ๋ Trace Channel์ ์์ฑํ๊ณ , ํ๋ ์ด์ด ํ๋กํ์ผ์์ WeaponTrace์ ๋ํด Block์ผ๋ก ์ค์ ํ๋ฉด, ๋ฌด๊ธฐ Raycast ์ ํ๋ ์ด์ด๋ง Hit์ผ๋ก ๊ฒ์ถํ๊ณ ๋ค๋ฅธ ์ค๋ธ์ ํธ๋ ๋ฌด์ํ ์ ์์ต๋๋ค.
Collision Profile์ ์ฅ์
Collision Profile์ Collision Group๋ณด๋ค ๋ ์ธ๋ฐํ๊ณ ์ ์ฐํ ์ถฉ๋ ์ ์ด๋ฅผ ์ ๊ณตํฉ๋๋ค:
์ฑ๋๋ณ ์ธ๋ฐํ ์ ์ด: ๊ฐ ์ฑ๋์ ๋ํด Block, Overlap, Ignore๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ์ค์ ํ ์ ์์ต๋๋ค.
ํ๋กํ์ผ ๊ธฐ๋ฐ ์์ธ ๊ด๋ฆฌ: ์์ ์ฒ๋ผ ๊ทธ๋ฃน ๊ฐ์ ๊ด๊ณ๋ฅผ ๋งค๋ฒ ์ ์ํ ํ์ ์์ด, ๊ฐ๋ณ ํ๋กํ์ผ์ ๋ ๋ฆฝ์ฑ๋ง์ผ๋ก ํน์ ์ํฉ(์: ํฌ์ฌ์ฒด ๊ดํต ๋ฑ)์ ๋ง๋ ์ถฉ๋ ๊ท์น์ ํจ์จ์ ์ผ๋ก ์ ์ฉํ ์ ์์ต๋๋ค
ํ์ฅ์ฑ: ์๋ก์ด ์ฑ๋์ด๋ ํ๋กํ์ผ์ ์ถ๊ฐํ๊ธฐ ์ฝ๊ณ , ๊ธฐ์กด ์ค์ ์ ์ํฅ์ ์ฃผ์ง ์์ต๋๋ค.
Last updated