Notice
Recent Posts
Recent Comments
Link
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก2022/07 (14)

KoreanFoodie's Study

์œ ๋‹ˆํ‹ฐ Monobehaviour ๋‚ด์žฅ ํ•จ์ˆ˜ ํ˜ธ์ถœ ์ˆœ์„œ ๋ฐ ์ฃผ์˜์ 

Udemy ๊ด€๋ จ ๊ฐœ๋… ์ •๋ฆฌ ๋ฐ Dev Log ๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค! Monobehaviour ์œ ๋‹ˆํ‹ฐ์—๋Š” Monobehaviour ๋ผ๋Š” ํด๋ž˜์Šค๊ฐ€ ์žˆ๋‹ค. ์”ฌ์—์„œ GameObject ๋กœ ์‚ฌ์šฉํ•˜๋Š” ํด๋ž˜์Šค๋Š” Monobehaviour ๋ฅผ ์ƒ์†ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ, Monobehaviour ์—๋Š” ๋‹ค์–‘ํ•œ ๋‚ด์žฅ ๋ฉ”์†Œ๋“œ๋“ค์ด ์žˆ๋‹ค. Awake, Start ์ฒ˜๋Ÿผ ์ดˆ๊ธฐํ™”์— ์“ฐ์ด๋Š” ๋…€์„๋„ ์žˆ๊ณ , OnEnable ์ด๋‚˜ OnDisable ์ฒ˜๋Ÿผ ํ•ด๋‹น ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๊ป๋‹ค ํ‚ฌ๋•Œ ( SetActive( ) ํ•จ์ˆ˜ ํ˜ธ์ถœ ํ˜น์€ .enabled ๊ฐ’ ๋ณ€๊ฒฝ ) ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜๋“ค๋„ ์žˆ๋‹ค. ์ค‘์š”ํ•œ ๊ฒƒ์€, ์–ด๋–ค ํ•จ์ˆ˜๊ฐ€ ์–ด๋–ค ์ˆœ์„œ๋กœ ํ˜ธ์ถœ๋˜๋Š”์ง€๋ฅผ ์•Œ์•„์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค! ์ด ๋งํฌ์— ์ •๋ฆฌ๋œ ์‚ฌ์ง„์„ ๊ฐ€์ ธ์˜จ ๊ฒƒ์ด๋‹ค. ํŠนํžˆ ์ฃผ์˜ํ•ด์•ผ ํ•  ์‚ฌํ•ญ์œผ๋กœ๋Š”, Spawner ํด๋ž˜์Šค์—์„œ ์ƒ..

Game Dev/Unity : Study 2022. 7. 24. 21:39
[์–ธ๋ฆฌ์–ผ] Unreal unresolved external symbol ์—๋Ÿฌ

Unreal unresolved external symbol ์—๋Ÿฌ ์˜ค๋žœ๋งŒ์— ์–ธ๋ฆฌ์–ผ์„ ์ผฐ๋Š”๋ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ, ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€๋กœ ๋‚˜๋‰˜๋Š”๋ฐ.... 1. ํ•จ์ˆ˜๋ฅผ ์„ ์–ธ๋งŒ ํ•˜๊ณ  ๊ตฌํ˜„์„ ์•ˆํ•จ ๋ง์ปค์—์„œ ์—๋Ÿฌ๊ฐ€ ๋‚ฌ๋‹ค๋Š” ๊ฑด, ๋งํ‚น ๊ณผ์ •์—์„œ ์ ์ ˆํ•œ ํ•จ์ˆ˜๋ฅผ ์ฐพ์ง€ ๋ชปํ–ˆ๋‹ค๋Š” ์˜๋ฏธ์ด๊ธฐ๋„ ํ•˜๋‹ค. ๋”ฐ๋ผ์„œ ์„ ์–ธ๋งŒ ํ•ด๋†“๊ณ  ์‹ค์ œ๋กœ ๊ตฌํ˜„์„ ํ•˜์ง€ ์•Š์€ ๋ฉ”์†Œ๋“œ๊ฐ€ ์žˆ๋Š”์ง€ ์ฒดํฌํ•ด๋ณด๋„๋ก ํ•˜์ž! ๊ทผ๋ฐ ์ด ๊ฒฝ์šฐ๋Š” ๊ตฌํ˜„์ด ์•ˆ๋œ ํ•จ์ˆ˜๊ฐ€ ์žˆ๋‹ค๊ณ  ์•Œ๋ ค์ค˜์„œ ์‰ฌ์šด๋ฐ... 2. ์ ์ ˆํ•œ ๋ชจ๋“ˆ์„ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š์Œ ์‚ฌ์‹ค ์ด ๊ฒฝ์šฐ๊ฐ€ ๋งค์šฐ๋งค์šฐ ๋นก์นœ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ๋ช…์‹œ์ ์œผ๋กœ ์›์ธ์ด ๋“œ๋Ÿฌ๋‚˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ํ•˜์ง€๋งŒ ์—๋Ÿฌ๋กœ๊ทธ๋ฅผ ์ž˜ ๋ณด๋ฉด ํžŒํŠธ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š”๋ฐ... ์‹ค์ œ ์˜ˆ์‹œ๋ฅผ ๋ณด์ž. ์œ„ ๊ฒฝ์šฐ์—์„œ๋Š”, ์ž˜ ๋ณด๋ฉด LNK2019 ์—๋Ÿฌ์—์„œ BehaviorTree ๊ด€๋ จ์—..

Game Dev/Unreal C++ : Dev Log 2022. 7. 20. 22:59
#11-4 : ์บ๋ฆญํ„ฐ ์• ๋‹ˆ๋ฉ”์ดํ„ฐ ์ปจํŠธ๋กค๋Ÿฌ ์™€ ์• ๋‹ˆ๋ฉ”์ดํ„ฐ (FSM)

ํ”Œ๋ ˆ์ด์–ด ์บ๋ฆญํ„ฐ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์„ค์ •ํ•˜๊ธฐ ํŠน์ • ๋™์ž‘์„ ํ•  ๋•Œ ํŠน์ • ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ์žฌ์ƒ๋˜๋„๋ก ํ•˜๋Š” ๊ธฐ๋Šฅ์€ ์• ๋‹ˆ๋ฉ”์ดํ„ฐ ์ปจํŠธ๋กค๋Ÿฌ์™€ ์• ๋‹ˆ๋ฉ”์ดํ„ฐ๋ฅผ ํ†ตํ•ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋จผ์ € ์• ๋‹ˆ๋ฉ”์ดํ„ฐ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ƒ์„ฑํ•˜์ž. Project ์ฐฝ์—์„œ ์ƒ์„ฑ ๊ฐ€๋Šฅํ•˜๋‹ค. ์• ๋‹ˆ๋ฉ”์ดํ„ฐ ์ฐฝ์œผ๋กœ ์ด๋™ํ•ด ๋ณด์ž. ์ด์ „์— ๋งŒ๋“  ์• ๋‹ˆ๋ฉ”์ด์…˜ ํด๋ฆฝ๋“ค์ด ๋œจ๊ฒŒ ๋œ๋‹ค. ํŠน์ • ๋™์ž‘์„ ๊ธฐ๋ณธ ์ƒํƒœ๋กœ ์ •์˜ํ•˜๊ณ  ์‹ถ์„ ๋•Œ๋Š” Set as Layer Default State ๋กœ ์„ค์ •ํ•˜๋ฉด ๋œ๋‹ค. ์šฐํด๋ฆญ ํ›„ Make Transition ์„ ํ†ตํ•ด ์ƒํƒœ๋ฅผ ์ „์ด์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. Any State ์ƒํƒœ์—์„œ ์ „ํ™˜์„ ํ•  ๊ฒฝ์šฐ, ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋ฉด ๋ฌด์กฐ๊ฑด ํŠน์ • ์ƒํƒœ๋กœ ์ „์ด๊ฐ€ ๋œ๋‹ค. Exit ์˜ ๊ฒฝ์šฐ ์ƒํƒœ ๋จธ์‹ ์˜ ๋™์ž‘์ด ์ข…๋ฃŒ๋˜๋Š” ์ถœ๊ตฌ๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์ „์ด๊ฐ€ ์–ธ์ œ ๋ฐœ๋™๋ ์ง€์˜ ์กฐ๊ฑด์€ ์• ๋‹ˆ๋ฉ”์ดํ„ฐ ์ปจํŠธ๋กค๋Ÿฌ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ..

#11-3 : ์บ๋ฆญํ„ฐ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํด๋ฆฝ ๋งŒ๋“ค๊ธฐ (Sprites -> Animation)

์บ๋ฆญํ„ฐ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํด๋ฆฝ ๋งŒ๋“ค๊ธฐ ๋จผ์ €, ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ฐฝ์„ ์—ฐ๋‹ค. Player ์˜ค๋ธŒ์ ํŠธ๋ฅผ ํด๋ฆญ ํ›„, Create ๋ฅผ ๋ˆ„๋ฅธ๋‹ค. ๊ทธ ํ›„, ์šฐ๋ฆฌ๊ฐ€ ๋งŒ๋“œ๋ ค๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์— ํ•„์š”ํ•œ ์Šคํ”„๋ผ์ดํŠธ๋“ค์„ Animation ์ฐฝ์œผ๋กœ ๋“œ๋ž˜๊ทธ&๋“œ๋žํ•œ๋‹ค. ๊ทธ๋Ÿผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•ด๋‹นํ•˜๋Š” ํ‚คํ”„๋ ˆ์ž„ ์œ„์— ์Šคํ”„๋ผ์ดํŠธ๋“ค์ด ์˜ฌ๋ผ๊ฐ€๋Š”๋ฐ, Samples ๊ฐ’์„ ์กฐ์ ˆํ•ด ์†๋„๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋‹ค. Samples ์˜ ๊ฐ’์€ 1์ดˆ๋‹น ์Šคํ”„๋ผ์ดํŠธ๊ฐ€ ์–ผ๋งˆ๋‚˜ ์ž์ฃผ ๊ต์ฒด๋˜๋Š”์ง€๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์ด์ œ Die ์• ๋‹ˆ๋ฉ”์ด์…˜ ํด๋ฆฝ์„ ๋งŒ๋“ค์–ด ๋ณด์ž. Run ์—์„œ Create New Clip... ์„ ๋ˆ„๋ฅด๊ณ , Die.anim ์œผ๋กœ ์ €์žฅํ•œ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ Samples ๊ฐ’์„ ์„ค์ •ํ•œ๋‹ค. Die ์˜ ๊ฒฝ์šฐ ๋”ฑ ํ•œ ๋ฒˆ๋งŒ ์žฌ์ƒ๋  ๊ฒƒ์ด๋ฏ€๋กœ ๋ฃจํ”„๋ฅผ ํ•ด์ œํ•œ๋‹ค. ์ด์ œ ๋‹ค์Œ์œผ๋กœ๋Š” FSM (์œ ํ•œ ์ƒํƒœ ๋จธ์‹ ) ์„ ์ด์šฉํ•ด..

Game Dev/Unity : Tutorial 2022. 7. 10. 14:32
#11-2 : ์˜ค๋””์˜ค ์†Œ์Šค ์ปดํฌ๋„ŒํŠธ ํ™œ์šฉํ•˜๊ธฐ

์œ ๋‹ˆํ‹ฐ์—์„œ ์˜ค๋””์˜ค (์†Œ๋ฆฌ) ์žฌ์ƒํ•˜๊ธฐ ์œ ๋‹ˆํ‹ฐ์—์„œ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์†Œ๋ฆฌ๋ฅผ ๋‚ด๋„๋ก ๋งŒ๋“ค๊ณ  ์‹ถ์„ ๋•Œ๋Š”, ์˜ค๋””์˜ค ์†Œ์Šค ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ถ™์ด๋ฉด ๋œ๋‹ค. ๊ทธ ํ›„, ์Šคํฌ๋ฆฝํŠธ์—์„œ ์‚ฌ์šฉํ•  AudioClip ๊ณผ AudioSource ๋ณ€์ˆ˜๋ฅผ ์ •์˜ํ•˜๊ณ , ํ”Œ๋ ˆ์ด์–ด ์Šคํฌ๋ฆฝํŠธ์˜ AudioClip ๋ณ€์ˆ˜์— ์ ์ ˆํ•œ ์˜ค๋””์˜ค ์†Œ์Šค ํŒŒ์ผ์„ ๋“œ๋ž˜๊ทธ&๋“œ๋žํ•ด์„œ ๋„ฃ์–ด์ค€ ๋‹ค์Œ, ์‹ค์ œ ํƒ€์ด๋ฐ์— ๋งž๊ฒŒ Play ๋‚˜ PlayOneShot ๋“ฑ์˜ ๋ฉ”์†Œ๋“œ๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋œ๋‹ค! ํ˜น์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌํ˜„ํ•ด๋„ ๋œ๋‹ค : // ์˜ค๋””์˜ค ์†Œ์Šค ์ปดํฌ๋„ŒํŠธ์— ๋‚ด์žฅ๋œ ํด๋ฆฝ์„ ๋ณ€๊ฒฝ playerAudioPlayer.clip = deathClip; playerAudioPlayer.Play(); ์˜ค๋””์˜ค ์†Œ์Šค ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์žฌ์ƒํ•˜๋Š” ์†Œ๋ฆฌ๋Š” ์˜ค๋””์˜ค ๋ฆฌ์Šค๋„ˆ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋“ฃ๋Š”๋‹ค. MainCamera ์˜ ๊ฒฝ์šฐ, Audio..

Game Dev/Unity : Tutorial 2022. 7. 10. 14:15
#11-1 : ์Šคํ”„๋ผ์ดํŠธ ์ž˜๋ผ ์‚ฌ์šฉํ•˜๊ธฐ (Sprite -> multiple)

์Šคํ”„๋ผ์ดํŠธ ์ž๋ฅด๊ธฐ ํ”ฝ์…€ ์•„ํŠธ ์ด๋ฏธ์ง€๋ฅผ ์ด์šฉํ•ด์„œ, ๊ฐ„๋‹จํ•œ ์Šคํ”„๋ผ์ดํŠธ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋งŒ๋“ค์–ด ๋ณด์ž. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์บ๋ฆญํ„ฐ๊ฐ€ ์ฃฝ๋Š” ์Šคํ”„๋ผ์ดํŠธ๊ฐ€ ํ•œ๊บผ๋ฒˆ์— ํ•œ ํŒŒ์ผ๋กœ ๋“ค์–ด์™”๋‹ค๊ณ  ํ•ด ๋ณด์ž. Inspector ์ฐฝ์—์„œ Sprite Mode ๋ฅผ Multiple ๋กœ ๋ฐ”๊พผ ๋‹ค์Œ,Sprite Editor ๋ฅผ ์—ด์ž. ์Šคํ”„๋ผ์ดํŠธ ์—๋””ํ„ฐ ์™ผ์กฑ ์ƒ๋‹จ์— Slice ์—์„œ Grid By Cell Size ๋ฅผ ํด๋ฆญํ•œ๋‹ค. ๊ทธ ํ›„ ์ ์ ˆํ•œ ์‚ฌ์ด์ฆˆ๋กœ ์Šคํ”„๋ผ์ดํŠธ๋ฅผ ์ž๋ฅด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์Šคํ”„๋ผ์ดํŠธ๊ฐ€ ์ž˜๋ฆฐ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค! ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์˜ Apply ๋ฅผ ๋ˆ„๋ฅธ ํ›„ ์ข…๋ฃŒํ•˜์ž.

Game Dev/Unity : Tutorial 2022. 7. 10. 14:12
#10. ๊ณต๊ฐ„๊ณผ ์›€์ง์ž„

์ง€์—ญ ๊ณต๊ฐ„๊ณผ ์ „์—ญ ๊ณต๊ฐ„ ์œ„์˜ ํ๋ธŒ๋Š” y ์ถ•์„ ๊ธฐ์ค€์œผ๋กœ ํšŒ์ „์„ ๊ฐ€ํ•ด์กŒ๋‹ค. ํ˜„์žฌ ํŠธ๋žœ์Šคํผ์˜ ์ขŒํ‘œ๊ณ„๋Š” ์ง€์—ญ๊ณต๊ฐ„์œผ๋กœ ๋‚˜์™€ ์žˆ๋Š”๋ฐ, ์ด๋ฅผ ์ „์—ญ ๊ณต๊ฐ„ (๊ฒŒ์ž„ ์›”๋“œ๋ฅผ ๊ธฐ์ค€) ์œผ๋กœ ๋ฐ”๊ฟ”์„œ ์˜ฎ๊ฒจ๋ณผ ์ˆ˜๋„ ์žˆ๋‹ค. ์ง€์—ญ ๊ณต๊ฐ„์€ ๋ถ€๋ชจ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•˜๋ฉฐ, ์˜ค๋ธŒ์ ํŠธ ๊ณต๊ฐ„์€ ์ž๊ธฐ ์ž์‹ ์„ ๊ธฐ์ค€์œผ๋กœ ํ•œ๋‹ค. ์ง€์—ญ ๊ณต๊ฐ„์ด ๋ถ€๋ชจ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํ๋ธŒ A ์˜ ์ž์‹ ํ๋ธŒ B ๋ฅผ ์„ค์ •ํ•œ ํ›„ ํ๋ธŒ A ๋ฅผ ํšŒ์ „ํ•˜๋ฉด, ํ๋ธŒ B ์˜ ๊ณต๊ฐ„๋„ ํšŒ์ „๋œ ์ƒํƒœ๋กœ ํŠธ๋žœ์Šคํผ์ด ์ด๋™๊ณผ ํšŒ์ „์ด ์ด๋ฃจ์–ด์งˆ ๊ฒƒ์ด๋‹ค. ์ธ์ŠคํŽ™ํ„ฐ ์ฐฝ์— ํ‘œ์‹œ๋˜๋Š” ์œ„์น˜, ํšŒ์ „, ์Šค์ผ€์ผ์€ ์ง€์—ญ ๊ณต๊ฐ„ ๊ธฐ์ค€์œผ๋กœ ์ธก์ •๋œ ๊ฐ’์ด๋‹ค. ํ‰ํ–‰์ด๋™๊ณผ ํšŒ์ „ ์˜ˆ์ œ // ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์—ญ ๊ณต๊ฐ„์„ ๊ธฐ์ค€์œผ๋กœ ํ‰ํ–‰์ด๋™ transform.Translate(new Vector3(0, 1, 0) * Time...

Game Dev/Unity : Tutorial 2022. 7. 10. 14:03
์œ ๋‹ˆํ‹ฐ Awake ์™€ Start ์ฐจ์ด

Udemy ๊ด€๋ จ ๊ฐœ๋… ์ •๋ฆฌ ๋ฐ Dev Log ๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค! ์œ ๋‹ˆํ‹ฐ Awake ์™€ Start ์ฐจ์ด ์œ ๋‹ˆํ‹ฐ์—์„œ Awake ์™€ Start ๋Š” ๋‘˜ ๋‹ค ์ดˆ๊ธฐํ™”๋ฅผ ๋‹ด๋‹นํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์–ด๋–ค ์ฐจ์ด๊ฐ€ ์žˆ๋Š” ๊ฑธ๊นŒ? Awake() : ๋ชจ๋“  ๋ณ€์ˆ˜์™€ ๊ฒŒ์ž„์˜ ์ƒํƒœ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ธฐ Awake ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฒŒ์ž„์ด ์‹œ์ž‘๋˜๊ธฐ ์ „์— ํ˜ธ์ถœ (start ๋ณด๋‹ค ๋จผ์ € ํ˜ธ์ถœ) ๋˜๋ฉฐ, ๋ชจ๋“  ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ์ดˆ๊ธฐํ™”๋˜๊ณ  ํ˜ธ์ถœ๋œ๋‹ค. ๋”ฐ๋ผ์„œ GameObject.FindWithTag ๋ฅผ ์ด์šฉํ•ด ํ•ด๋‹น ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์š”์ฒ˜ํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์˜ค๋ธŒ์ ํŠธ์™€ ์•ˆ์ „ํ•˜๊ฒŒ ์ƒํ˜ธ์ž‘์šฉ๊ธฐ ๊ฐ€๋Šฅํ•˜๋‹ค. [์ฃผ์˜] : ๊ฐ ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ์˜ Awake() ๋Š” ๋žœ๋ค ์ˆœ์„œ๋กœ ์‹คํ–‰๋˜๋ฏ€๋กœ, ์Šคํฌ๋ฆฝํŠธ๊ฐ„์˜ ์ฐธ์กฐ(reference) ๋ฅผ ์„ค์ •ํ•˜๊ธฐ ์œ„ํ•ด Awake ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ์ •๋ณด๋ฅผ ๋ณด๋‚ด๊ณ  ๋ฐ›๋Š” ๊ฒฝ์šฐ์—๋Š” St..

Game Dev/Unity : Study 2022. 7. 10. 09:42
์œ ๋‹ˆํ‹ฐ์—์„œ ์ผ์‹œ์ •์ง€ ๋ฐ ํŠน์ • ๋ฌผ์ฒด ์‹œ๊ฐ„ ์ •์ง€ ๊ตฌํ˜„ํ•˜๊ธฐ

Udemy ๊ด€๋ จ ๊ฐœ๋… ์ •๋ฆฌ ๋ฐ Dev Log ๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค! ์œ ๋‹ˆํ‹ฐ์—์„œ ์ผ์‹œ์ •์ง€ํ•˜๊ธฐ ์œ ๋‹ˆํ‹ฐ์—์„œ๋Š” ์ผ์‹œ ์ •์ง€ ๊ธฐ๋Šฅ์„ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•˜๋ฉด ๋ ๊นŒ? ๋จผ์ € ๊ฒฐ๋ก ๋งŒ ๋งํ•˜์ž๋ฉด, Time.timeScale ๊ฐ’์„ ์กฐ์ ˆํ•˜์—ฌ Time.deltaTime ์„ 0 ์œผ๋กœ ๋งŒ๋“œ๋Š” ๋ฐฉ์‹์„ ์ด์šฉํ•˜๋ฉด ๋œ๋‹ค. void PauseGame () { Time.timeScale = 0; } void ResumeGame () { Time.timeScale = 1; } ์ด๋Ÿฐ ๋ฐฉ์‹์„ ์ด์šฉํ•˜๋ฉด, ๊ฐ ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ๋“ค์˜ Update ๋‚ด ํ•จ์ˆ˜์—์„œ Time.deltaTime ์— ์˜์กดํ•˜๋Š” ๋ชจ๋“  ๋™์ž‘์ด ๋ฉˆ์ถ”๊ฒŒ ๋œ๋‹ค. ์ด ๋ง์€์ฆ‰์Šจ, Time.deltaTime ์— ์˜์กดํ•˜์ง€ ์•Š๋Š” ๋…€์„๋“ค์˜ ๊ฒฝ์šฐ์—๋Š” ์—ฌ์ „ํžˆ ์ผ์‹œ์ •์ง€๋ผ๋Š” ๋ณธ์—ฐ์˜ ๋ชฉ์ ๊ณผ ๋‹ค๋ฅธ ๋™์ž‘์„ ํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค..

Game Dev/Unity : Study 2022. 7. 9. 23:17
๋ชจ๋ฐ”์ผ ๋นŒ๋“œ์‹œ, Input.GetTouch(0) ์‚ฌ์šฉ๋ฒ• : argumentexception: index out of bounds ํ•ด๊ฒฐ๋ฒ•

์œ ๋‹ˆํ‹ฐ ๊ณต๋ถ€ ๋…ธํŠธ Touch Input ์ด์šฉ์‹œ ์—๋Ÿฌ? ๋ถ„๋ช…ํžˆ ์—๋””ํ„ฐ์—์„œ๋Š” ๋งˆ์šฐ์Šค ํด๋ฆญ ์ž…๋ ฅ์œผ๋กœ ์ž˜ ๋™์ž‘ํ–ˆ๋Š”๋ฐ, ๋ชจ๋ฐ”์ผ๋กœ ๋นŒ๋“œํ•˜๋‹ˆ ์ œ๋Œ€๋กœ ์ž‘๋™์„ ํ•˜์ง€ ์•Š์•„ ์›์ธ์„ ํŒŒ์•…ํ•˜๋˜ ์ค‘, Input ๊ด€๋ จ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ธฐ์กด์—๋Š” ํ„ฐ์น˜ ์ž…๋ ฅ์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌํ˜„ํ–ˆ์—ˆ๋Š”๋ฐ... (ํ›„๋žต) if (Input.GetTouch(0).phase == TouchPhase.Began) { JumpButtonPressed(); } ๊ทผ๋ฐ ์ด ๊ฒฝ์šฐ, argumentexception: index out of bounds ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ์—ˆ๋‹ค. ์ด๋Š” ํ„ฐ์น˜ ์ž์ฒด๊ฐ€ ์—†๋Š”๋ฐ, Input ์—์„œ Touch ์˜ ์ฒซ๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ฅผ ๊ฐ€์ ธ์˜ค๋ ค ํ•ด์„œ ์ƒ๊ธด ๋ฌธ์ œ์˜€๋‹ค. ๋”ฐ๋ผ์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฐ„๋‹จํžˆ, Touch ๋ฐฐ์—ด์ด ๋น„์–ด์žˆ์ง€ ์•Š์€์ง€ ์ฒดํฌํ•ด์ฃผ๊ธฐ๋งŒ ํ•˜๋ฉด ๋œ..

Game Dev/Unity : Study 2022. 7. 8. 11:55