์ „์ฒด ๊ธ€

์ „์ฒด ๊ธ€

    [Unreal] ์นด๋ฉ”๋ผ ๊ฐœ์„ 

    [Unreal] ์นด๋ฉ”๋ผ ๊ฐœ์„ 

    1. ์นด๋ฉ”๋ผ๊ฐ€ ์บ๋ฆญํ„ฐ ๋ชธ์„ ๋šซ๋Š” ํ˜„์ƒ์บ๋ฆญํ„ฐ๊ฐ€ ์˜ค๋ธŒ์ ํŠธ์— ๊ฐ€๊นŒ์ด ๊ฐ€๊ฒŒ ๋˜๋ฉด, ์นด๋ฉ”๋ผ์™€ ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ๊ฐ€๊นŒ์›Œ์ ธ ์บ๋ฆญํ„ฐ ๋ชธ์„ ๋šซ๋Š” ํ˜„์ƒ์ด๋‹ค.  Collision Presets ๋‚ด Camera ์„ค์ •์„ Block์œผ๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด ๋œ๋‹ค.Default๋กœ Block ์„ค์ •๋˜์–ด ์žˆ์ง€๋งŒ ํ˜น์‹œ๋‚˜ ๋‹ค๋ฅธ ๊ฐ’์œผ๋กœ ์ˆ˜์ •ํ–ˆ์„ ๊ฒฝ์šฐ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•˜๋‹ค.  ์ด๋ ‡๊ฒŒ ๋ณ€๊ฒฝํ•˜๋”๋ผ๋„ ๋งค์šฐ ๊ฐ€๊น๊ฒŒ ์นด๋ฉ”๋ผ๊ฐ€ ์ด๋™ํ•˜๋ฉด ์—ฌ์ „ํžˆ ๋ชธ์„ ๋šซ๊ณ  ์žˆ๋‹ค.์ด๋Ÿด ๋• ํ”„๋กœ์ ํŠธ ์„ธํŒ…์—์„œ Near Clip Plane ๊ฐ’์„ ๋ณ€๊ฒฝํ•œ ํ›„ ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋ฉด ๋œ๋‹ค.  ์ด๋ ‡๊ฒŒ ๊ฐ€๊น๊ฒŒ ์นด๋ฉ”๋ผ๊ฐ€ ๋ถ™์–ด๋„ ๋ชธ์„ ๋šซ์ง€ ์•Š๋Š”๋‹ค.   2. ์นด๋ฉ”๋ผ ์ถฉ๋Œ์ด ์–ด์ƒ‰ํ•œ ํ˜„์ƒ์นด๋ฉ”๋ผ์™€ ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ๊ฐ€๊นŒ์›Œ์ง€๋ฉด ์ˆœ๊ฐ„์ ์œผ๋กœ ์นด๋ฉ”๋ผ๊ฐ€ ์ด๋™๋˜๋Š”๋ฐ, ์›€์ง์ž„์ด ๋”ฑ๋”ฑํ•ด์„œ ์–ด์ƒ‰ํ•ด ๋ณด์ธ๋‹ค.  ๊ทธ๋ž˜์„œ ์นด๋ฉ”๋ผ Collision์„ ์ง..

    [Unity] null ์ฒดํฌ

    [Unity] null ์ฒดํฌ

    1. UnityEngine.Object == null๊ฐœ๋ฐœ ์‹œ ๊ฐ์ฒด๊ฐ€ ์‹ค์ œ๋กœ ์กด์žฌํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด == null ์ฒดํฌ๋ฅผ ์ž์ฃผ ์‚ฌ์šฉํ•˜๊ณค ํ•œ๋‹ค. ๊ณผ์—ฐ ์ด ๋ฐฉ๋ฒ•์ด ์ตœ์„ ์ผ๊นŒ? 2. fake null"UnityEngine.Object == null์—์„œ์˜ null์ด ์ง„์งœ null์ด ์•„๋‹ˆ๋‹ค! ์ฆ‰, fake null์ด๋‹ค"๋ผ๋Š” ๋ง์ด ์กด์žฌํ•œ๋‹ค. ์™œ ๊ทธ๋Ÿด๊นŒ? ์›์ธ์€ ์œ ๋‹ˆํ‹ฐ์—์„œ์˜ null๊ณผ System์—์„œ์˜ null์˜ ์ฐจ์ด์ด๋‹ค. ์ด ์ฐจ์ด๋ฅผ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด, UnityEngine.Object์™€ System.Object์˜ null ์ฒดํฌ ๊ฐ’์ด ๋‹ค๋ฅธ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. var obj = new GameObject();yield return null; Destroy(obj);yield return nu..

    [Unreal] ์•กํ„ฐ ์ƒ์„ฑ

    [Unreal] ์•กํ„ฐ ์ƒ์„ฑ

    1. ํŠน์ • ์œ„์น˜์— ์ƒ์„ฑํ•˜๊ธฐ์Šคํฐ ํฌ์ธํŠธ๊ฐ€ ๋  ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ํด๋ž˜์Šค ์•กํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ๋งต ๋‚ด ์•กํ„ฐ๊ฐ€ ์ƒ์„ฑ๋  ์œ„์น˜์— ๋ฐฐ์น˜ํ•œ๋‹ค.  ์ด์ œ ์Šคํฐ ํฌ์ธํŠธ๋“ค์„ ๊ฐ€์ ธ์™€ ๊ทธ ์œ„์น˜์— ์•กํ„ฐ๊ฐ€ ์ƒ์„ฑ๋˜๋„๋ก ํ•  ๊ฒƒ์ด๋‹ค. ๋จผ์ € ๊ฒŒ์ž„ ๋ชจ๋“œ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ๋ฅผ ์—ด์–ด ์ด๋ฒคํŠธ ๊ทธ๋ž˜ํ”„์— ์•„์ดํ…œ ์ƒ์„ฑ์„ ์œ„ํ•œ ํ•จ์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.๊ฒŒ์ž„ ๋ชจ๋“œ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ์ธ ์ด์œ ๋Š” ๋ชจ๋“  ๋ ˆ๋ฒจ์—์„œ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•จ์ด๋‹ค. ๋ ˆ๋ฒจ๋งˆ๋‹ค ๋‹ค๋ฅธ ์Šคํฐ์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๋ผ๋ฉด ๋ ˆ๋ฒจ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ์— ์ž‘์—…ํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค. Get All Actors Of Class With Tag ๋…ธ๋“œ๋ฅผ ํ†ตํ•ด ์Šคํฐ ํฌ์ธํŠธ๋“ค์„ ๊ฐ€์ ธ์™€ ๋ณ€์ˆ˜์— ์ €์žฅํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ Tag๋ฅผ ํ†ตํ•ด ์•„์ดํ…œ ์ข…๋ฅ˜ ๋“ฑ ํŠน์ง•์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ์ƒ์„ฑ๋˜๋„๋ก ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.  ์ƒ์„ฑํ•˜๊ณ  ์‹ถ์€ ์ˆ˜๋งŒํผ Loop๋ฅผ ๋Œ๋ฉฐ Transform์„ ๋ฐ›์•„์™€ ๊ทธ ๊ฐ’์œผ๋กœ ์•„์ด..

    [Unreal] ์ง€ํ˜• ๋งŒ๋“ค๊ธฐ (Light, Landscape, Water Plugin)

    [Unreal] ์ง€ํ˜• ๋งŒ๋“ค๊ธฐ (Light, Landscape, Water Plugin)

    1. ๋ผ์ดํŠธ(Light) ์ƒˆ๋กœ์šด level์„ ์ƒ์„ฑํ•˜๋ฉด ์•กํ„ฐ๋ฅผ ๋ฐฐ์น˜ํ•ด๋„ ์•„๋ฌด๊ฒƒ๋„ ๋ณด์ด์ง€ ์•Š๋Š”๋‹ค. 1) Directional Light Directional Light๋Š” ํƒœ์–‘์˜ ์—ญํ• ์„ ํ•˜๋Š” ๋ผ์ดํŠธ๋กœ ๊ฒŒ์ž„ ์›”๋“œ ๋‚ด ์ „์ฒด์ ์ธ ๋น›์„ ๋‚ธ๋‹ค. ๋ชจ๋นŒ๋ฆฌํ‹ฐ: Movable 2) ํ•˜๋Š˜ BP_Sky_Sphere ๋ธ”๋ฃจํ”„๋ฆฐํŠธ๋Š” ์–ธ๋ฆฌ์–ผ์—์„œ ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ํ•˜๋Š˜ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ์ด๋‹ค. Directional Light Actor: ์ƒ์„ฑํ•œ Directional Light ๋” ๋งŽ์€ ํšจ๊ณผ๋ฅผ ์ฃผ๊ณ  ์‹ถ๋‹ค๋ฉด, ์–ธ๋ฆฌ์–ผ ๋งˆ์ผ“ ํ”Œ๋ ˆ์ด์Šค์—์„œ ๋ฌด๋ฃŒ๋กœ ์ œ๊ณตํ•˜๋Š” ๋ธ”๋ฃจํ”„๋ฆฐํŠธ๋„ ์žˆ๋‹ค. ๋ฒˆ๊ฐœ, ๋…ธ์„, ์‚ฌ๋ง‰ ๋“ฑ ์—ฌ๋Ÿฌ ํšจ๊ณผ๋ฅผ ์ œ๊ณตํ•˜๋‹ˆ ํ™œ์šฉํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. 3) Sky Light Directional Light์™€ ํ•˜๋Š˜๋งŒ ์„ค์ •ํ•ด๋„ ๊ฝค ๊ดœ์ฐฎ์€ ๋งต์œผ๋กœ ๋ณด์ธ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด ๋งต..

    [Unreal] ํƒ€์ž„๋ผ์ธ(Timeline)

    [Unreal] ํƒ€์ž„๋ผ์ธ(Timeline)

    ํƒ€์ž„๋ผ์ธ ํƒ€์ž„๋ผ์ธ ๋…ธ๋“œ๋Š” ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ๋‚ด์—์„œ ๊ฐ„๋‹จํ•œ ์‹œ๊ฐ„ ๊ธฐ๋ฐ˜ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋น ๋ฅด๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ˆ˜ ๋…ธ๋“œ์ด๋‹ค. ์ž…๋ ฅ ํ•€ play: ํƒ€์ž„๋ผ์ธ ํ˜„์žฌ ์‹œ๊ฐ„์—์„œ ์ •๋ฐฉํ–ฅ ์žฌ์ƒ play from start: ํƒ€์ž„๋ผ์ธ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ •๋ฐฉํ–ฅ ์žฌ์ƒ stop: ํƒ€์ž„๋ผ์ธ ํ˜„์žฌ ์‹œ๊ฐ„์—์„œ ์žฌ์ƒ ๋ฉˆ์ถค reverse: ํƒ€์ž„๋ผ์ธ ํ˜„์žฌ ์‹œ๊ฐ„์—์„œ ์—ญ๋ฐฉํ–ฅ ์žฌ์ƒ ์ถœ๋ ฅ ํ•€ update: ํƒ€์ž„๋ผ์ธ์ด ํ˜ธ์ถœ๋˜์ž๋งˆ์ž ์‹คํ–‰ ์‹ ํ˜ธ ์ถœ๋ ฅ ๊ทธ๋ž˜ํ”„ ํƒญ์ด๋‚˜ ๋‚ด ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ํƒญ์—์„œ ํƒ€์ž„๋ผ์ธ์„ ๋”๋ธ” ํด๋ฆญํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ์—๋””ํ„ฐ์—์„œ ๋ฐ”๋กœ ํŽธ์ง‘์ด ๊ฐ€๋Šฅํ•˜๋‹ค. track ์ถ”๊ฐ€: float, vector ์™ธ ์—ฌ๋Ÿฌ ๊ฐ’์˜ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์œ„ํ•œ ํŠธ๋ž™ ์ถ”๊ฐ€ Length: ํƒ€์ž„๋ผ์ธ์˜ ์žฌ์ƒ ๊ธธ์ด ์„ค์ • ํ™œ์šฉ ๋ฌธ ์—ด๊ธฐ ๋ฌธ์ด ์—ด๋ฆฌ๊ณ  ๋‹ซํžˆ๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ถ”๊ฐ€ํ•ด ๋ณผ ๊ฒƒ์ด๋‹ค. ๋จผ์ € ํƒ€์ž„๋ผ์ธ ๋…ธ๋“œ..

    [Unreal] AI ์บ๋ฆญํ„ฐ

    [Unreal] AI ์บ๋ฆญํ„ฐ

    ํ”Œ๋ ˆ์ด์–ด๋ฅผ ์ถ”์ ํ•˜๋Š” ์  ์บ๋ฆญํ„ฐ๋ฅผ ๊ตฌํ˜„ํ•  ๊ฒƒ์ด๋‹ค. 1. ์  ์บ๋ฆญํ„ฐ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ํด๋ž˜์Šค์  ์บ๋ฆญํ„ฐ๋กœ ์‚ฌ์šฉํ•  ์บ๋ฆญํ„ฐ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.  ์ƒ์„ฑํ•œ ์  ์บ๋ฆญํ„ฐ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ํด๋ž˜์Šค๋ฅผ ์—ฐ ๋’ค, Mesh์™€ Collision์„ ์•Œ๋งž๊ฒŒ ์ˆ˜์ •ํ•œ๋‹ค. 2. AI ์ปจํŠธ๋กค๋Ÿฌ ์ƒ์„ฑ์–ธ๋ฆฌ์–ผ ์—”์ง„์—์„œ๋Š” ์บ๋ฆญํ„ฐ๋Š” controller์˜ ์ง€๋ฐฐ๋ฅผ ๋ฐ›๋Š”๋‹ค. ํ”Œ๋ ˆ์ด์–ด ์บ๋ฆญํ„ฐ๋Š” player controller์— ๋น™์˜๋˜๊ณ  ๋™์ผํ•˜๊ฒŒ AI ์บ๋ฆญํ„ฐ๋„ AI Controller์— ๋น™์˜๋˜๊ฒŒ ๋œ๋‹ค.  AI ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ƒ์†๋ฐ›๋Š” ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.  ์ด๋ ‡๊ฒŒ ์ƒ์„ฑํ•œ AI ์ปจํŠธ๋กค๋Ÿฌ๋Š” ์ด์ „์— ์ƒ์„ฑํ•œ ์บ๋ฆญํ„ฐ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ํด๋ž˜์Šค์—์„œ ๋“ฑ๋ก ๊ฐ€๋Šฅํ•˜๋‹ค. Rotation Yaw ํ™œ์„ฑํ™”: AI ์บ๋ฆญํ„ฐ ํšŒ์ „ ์‹œ ์‚ฌ์šฉAuto Possess AIDisabled: ๋น„ํ™œ์„ฑํ™”Pla..