728x90
(unity) ์ƒ๋ช…์ฃผ๊ธฐ,unity Lifecycle, ์ด๋ฒคํŠธ ํ•จ์ˆ˜์˜ ์‹คํ–‰ ์ˆœ์„œ, ์ฝ”๋ฃจํ‹ด
๐ŸŽฏ game engine/โ—ฝ ์œ ๋‹ˆํ‹ฐ(unity)2022. 9. 15. 16:32(unity) ์ƒ๋ช…์ฃผ๊ธฐ,unity Lifecycle, ์ด๋ฒคํŠธ ํ•จ์ˆ˜์˜ ์‹คํ–‰ ์ˆœ์„œ, ์ฝ”๋ฃจํ‹ด

1. ์ฃผ์š” ํ•จ์ˆ˜ ๊ฐ„๋‹จ ์ •๋ฆฌ Awake Start ํ•จ์ˆ˜ ์ „์— ํ˜ธ์ถœ๋˜๋ฉฐ ํ”„๋ฆฌํŒน์ด ์ธ์Šคํ„ด์Šคํ™” ๋œ ์งํ›„์— ํ˜ธ์ถœ. Start ์—…๋ฐ์ดํŠธ ์‹œ์ž‘ ์ง์ „ ์ตœ์ดˆ๋กœ ์‹คํ–‰. OnEnalbe ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ์—๋งŒ ํ™œ์„ฑํ™” ์ง ํ›„ ์ด ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœ. FixedUpdate FixedUpdate ๋Š” ์ข…์ข… Update ๋ณด๋‹ค ๋” ์ž์ฃผ ํ˜ธ์ถœ๋จ. ํ”„๋ ˆ์ž„ ์†๋„๊ฐ€ ๋‚ฎ์€ ๊ฒฝ์šฐ ํ”„๋ ˆ์ž„๋‹น ์—ฌ๋Ÿฌ ๋ฒˆ ํ˜ธ์ถœ๋  ์ˆ˜ ์žˆ์Œ. ๋ชจ๋“  ๋ฌผ๋ฆฌ ๊ณ„์‚ฐ ๋ฐ ์—…๋ฐ์ดํŠธ๋Š” FixedUpdate ํ›„ ์ฆ‰์‹œ ๋ฐœ์ƒ. FixedUpdate ์˜ ์›€์ง์ž„ ๊ณ„์‚ฐ์„ ์ ์šฉํ•  ๋•Œ Time.deltaTime ๋งŒํผ ๊ฐ’์„ ๊ณฑํ•  ํ•„์š”๊ฐ€ ์—†์Œ. - ์ด์œ : FixedUpdate ๊ฐ€ ํ”„๋ ˆ์ž„ ์†๋„์™€ ๊ด€๊ณ„์—†์ด ์‹ ๋ขฐํ•  ์ˆ˜์žˆ๋Š” ํƒ€์ด๋จธ์—์„œ ํ˜ธ์ถœ๋˜๊ธฐ ๋•Œ๋ฌธ Update Update ๋Š” ํ”„๋ ˆ์ž„๋‹น ํ•œ ๋ฒˆ ํ˜ธ์ถœ. ํ”„๋ ˆ์ž„ ์—…๋ฐ..

(unity) ์†๋„์™€ ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ
๐ŸŽฏ game engine/โ—ฝ ์œ ๋‹ˆํ‹ฐ(unity)2022. 7. 12. 17:17(unity) ์†๋„์™€ ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ

์†๋„์™€ ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ Update( ) ๋ฉ”์„œ๋“œ๋Š” ํ‰๊ท ์ ์œผ๋กœ 1์ดˆ์— 60๋ฒˆ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๊ฒƒ์€ ํ‰๊ท ์ผ ๋ฟ ๊ฒŒ์ž„ ํ™”๋ฉด์„ ๊ฐฑ์‹ ํ•˜๋Š” ์ฃผ๊ธฐ๋Š” ์ปดํ“จํ„ฐ ์„ฑ๋Šฅ์— ์˜์กด์ ์ด๋ผ์„œ Update( )๊ฐ€ 1์ดˆ์— ๋ช‡ ๋ฒˆ ์‹คํ–‰๋ ์ง€๋Š” ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๊ฒƒ์€ ํ‰๊ท ์ผ ๋ฟ ๊ฒŒ์ž„ ํ™”๋ฉด์„ ๊ฐฑ์‹ ํ•˜๋Š” ์ฃผ๊ธฐ๋Š” ์ปดํ“จํ„ฐ ์„ฑ๋Šฅ์— ์˜์กด์ ์ด๊ธฐ ๋•Œ๋ฌธ์— Update๊ฐ€ 1์ดˆ์— ๋ช‡ ๋ฒˆ ์‹คํ–‰๋ ์ง€๋Š” ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ Update( ) ๋ฉ”์„œ๋“œ์—์„œ ์ดˆ๋‹น ์ด๋™ ์†๋„๋‚˜ ํšŒ์ „ ์†๋„ ๋“ฑ ์‹œ๊ฐ„๊ณผ ๊ด€๋ จ๋œ ์ˆ˜์น˜๋ฅผ ๋‹ค๋ฃฐ ๋•Œ๋Š” ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ์„ ๊ณ ๋ คํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ปดํ“จํ„ฐ ์„ฑ๋Šฅ์— ๋”ฐ๋ผ ๊ฐ™์€ ์ฝ”๋“œ๊ฐ€ ๋‹ค๋ฅด๊ฒŒ ๋™์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์™€ ๊ด€๋ จ๋œ ํ”ํ•œ ํ˜„์ƒ์œผ๋กœ Pc๊ฒŒ์ด๋จธ๋“ค์ด 'ํ”„๋ ˆ์ž„ ์ œํ•œ'์„ ํ•ด์ œํ–ˆ์„ ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณ ์ • ํ”„๋ ˆ์ž„์ด 60์ธ ๊ฒŒ์ž„์ด ์žˆ๋‹ค๊ณ ..

(unity) GetComponent, GetAxis, OnTriggerEnter, OnCollisionEnter, FindObjectOfType
๐ŸŽฏ game engine/โ—ฝ ์œ ๋‹ˆํ‹ฐ(unity)2022. 7. 12. 17:06(unity) GetComponent, GetAxis, OnTriggerEnter, OnCollisionEnter, FindObjectOfType

GetComponent( ) ๋ฉ”์„œ๋“œ ์›ํ•˜๋Š” ํƒ€์ž…์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ž์‹ ์˜ ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ์—์„œ ์ฐพ์•„์˜ค๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค. Rigidbody = GetComponent(); โ€ป ์ œ๋„ค๋ฆญ: GetComponent ( ) ๋ฉ”์„œ๋“œ์—์„œ ์‚ฌ์šฉํ•œ ๊บฝ์‡  ๋Š” ์ œ๋„ค๋ฆญ(Generic)๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ œ๋„ค๋ฆญ์€ ๋ฉ”์„œ๋“œ๋‚˜ ํด๋ž˜์Šค๊ฐ€ ์—ฌ๋Ÿฌ ํƒ€์ž…์— ํ˜ธํ™˜๋˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ๊บฝ์‡  ์•ˆ์— ์›ํ•˜๋Š” ํƒ€์ž…์„ ๋ช…์‹œํ•˜๋ฉด ํด๋ž˜์Šค๋‚˜ ๋ฉ”์„œ๋“œ๊ฐ€ ํ•ด๋‹น ํƒ€์ž…์— ๋งž์ถฐ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์ œ๋„ค๋ฆญ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด ๊ฐ™์€ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ์—ฌ๋Ÿฌ ํƒ€์ž…์˜ ๋ฉ”์„œ๋“œ๋‚˜ ํด๋ž˜์Šค๋ฅผ ์ผ์ผ์ด ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (์ด๋™) GetAxis( ) ๋ฉ”์„œ๋“œ ์–ด๋–ค ์ถ•์— ๋Œ€ํ•œ ์ž…๋ ฅ๊ฐ’์„ ์ˆซ์ž๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค.Input.GetAxis( ) ๋ฉ”์„œ๋“œ๋Š” ์ถ•์˜ ์ด๋ฆ„์„ ๋ฐ›์Šต๋‹ˆ๋‹ค. ์ด ์ŠคํŠธ๋ง์€ ์ž…๋ ฅ ๋งค๋‹ˆ์ € ์„ค์ ˆ ์ฐฝ์—์„œ ์ˆ˜์ •๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๊ฒฝ..

(unity) MonoBehaviour? ๋ฉ”์„ธ์ง€ ๊ธฐ๋ฐ˜ ๋ฐฉ์‹? ์œ ๋‹ˆํ‹ฐ ์ด๋ฒคํŠธ ๋ฉ”์„œ๋“œ?
๐ŸŽฏ game engine/โ—ฝ ์œ ๋‹ˆํ‹ฐ(unity)2022. 7. 11. 18:26(unity) MonoBehaviour? ๋ฉ”์„ธ์ง€ ๊ธฐ๋ฐ˜ ๋ฐฉ์‹? ์œ ๋‹ˆํ‹ฐ ์ด๋ฒคํŠธ ๋ฉ”์„œ๋“œ?

๊ฒŒ์ž„ ์—”์ง„์—์„œ ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ๋Š” ๊ฒŒ์ž„ ์„ธ์ƒ์— ์กด์žฌํ•˜๋Š” ํ•˜๋‚˜์˜ ๋ฌผ์ฒด์ž…๋‹ˆ๋‹ค. ์œ ๋‹ˆํ‹ฐ๋Š” ๊ฒŒ์ž„์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ปดํฌ๋„ŒํŠธ ํŒจํ„ด์„ ์‚ฌ์šฉํ•ด ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ปดํฌ๋„ŒํŠธ ํŒจํ„ด ํ˜น์€ ์ปดํฌ์ง€์…˜(composition) ํŒจํ„ด์ด๋ž‘ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ง„ ๋ถ€ํ’ˆ์„ ์กฐ๋ฆฝํ•˜์—ฌ ์™„์„ฑ๋œ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ปดํฌ๋„ŒํŠธ ๋ฐฉ์‹์€ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ง„ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋นˆ ๊ป๋ฐ๊ธฐ์ธ ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ์— ์กฐ๋ฆฝํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ์œ ์—ฐํ•˜๊ฒŒ ์žฌ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๊ณ , ๊ธฐํš์ž์˜ ํ”„๋กœ๊ทธ๋ž˜๋จธ์˜ ์˜์กด๋„๊ฐ€ ๋‚ฎ์•„์ง€๋ฉฐ ๋…๋ฆฝ์„ฑ ๋•๋ถ„์— ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ์‚ญ์ œ๊ฐ€ ์‰ฝ์Šต๋‹ˆ๋‹ค. MonoBehaviour? ์œ ๋‹ˆํ‹ฐ์˜ ๋ชจ๋“  ์ปดํฌ๋„ŒํŠธ๋Š” monobehaviour ํด๋ž˜์Šค๋ฅผ ์ƒ์†ํ•ฉ๋‹ˆ๋‹ค. MonoBehaviourํด๋ž˜์Šค๋Š” ์œ ๋‹ˆํ‹ฐ์—์„œ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด ์ œ๊ณตํ•˜๋Š” ํด๋ž˜์Šค์ด๋ฉฐ ์ปดํฌ๋„ŒํŠธ์— ํ•„์š”ํ•œ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, MonoBehavi..

(unity/warning CS0108, NullReferenceException)
๐ŸŽฏ game engine/โ—ฝ ์œ ๋‹ˆํ‹ฐ(unity)2022. 4. 18. 01:04(unity/warning CS0108, NullReferenceException)

๋งจ๋‚  ๋‹ค๋ ‰๋งŒ ํ–ˆ๋Š”๋ฐ ์œ ๋‹ˆํ‹ฐ ํ•˜๋ ค๋‹ˆ ๋„ˆ๋ฌด ์–ด๋ ต๋„ค์š”@_@...๋„ค๋น„๋ฉ”์‰ฌ ์ธ๊ฐ•๋“ค์œผ๋ฉด์„œ ๋”ฐ๋ผ ์ณค๋Š”๋ฐ ์„ ์ƒ๋‹˜์€ ์ž˜๋˜๋Š”๋ฐ ๋‚˜๋Š” warning ๋– ์„œ ๊ณ ์ƒํ•œ.. ๊ฒฝ๊ณ ๋ฌธ๊ณผ NullReferenceException ์—๋Ÿฌ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.. 1. warning CS0108: 'ControlCharacter.camera' hides inherited member 'Component.camera'. Use the new keyword if hiding was intended. ๋ณ€์ˆ˜ ์ด๋ฆ„์— ์—ฐ๋‘์ƒ‰์œผ๋กœ ~~~~~~~ ํ‘œํ˜„ํ•˜๋ฉด์„œ ๊ฒฝ๊ณ ๋ฅผ ์•Œ๋ฆฌ๊ณ  ์žˆ๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. "camera"๋ผ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ง๋ผ๋Š” ๊ฒฝ๊ณ ์ž…๋‹ˆ๋‹ค. ์ •๋ง ๊ฐ„๋‹จํ•˜๊ฒŒ "_camera" ์ด๋Ÿฐ ์‹์œผ๋กœ ๋ณ€์ˆ˜ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜๋ฉด ๊ฒฝ๊ณ ๊ฐ€ ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค. c++์—์„œ ์‚ฌ..

(Unity/ error: CS8357) deterministic compilation failed
๐ŸŽฏ game engine/โ—ฝ ์œ ๋‹ˆํ‹ฐ(unity)2022. 4. 16. 17:03(Unity/ error: CS8357) deterministic compilation failed

์ปดํŒŒ์ผ ์˜ต์…˜ ์ค‘ ํ•˜๋‚˜์ธ deterministic(๋™์ผํ•œ ์ž…๋ ฅ ์†Œ์Šค์—์„œ ๋ฐ”์ดํŠธ ๋‹จ์œ„์— ํ•ด๋‹นํ•˜๋Š” ์ถœ๋ ฅ์„ ์ƒ์„ฑํ•œ๋‹ค๊ณ  ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  unity์—์„œ๋Š” ์–ด์…ˆ๋ธ”๋ฆฌ์˜ ๊ณต์šฉ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ๋ณ€๊ฒฝ ๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์–ด์…ˆ๋ธ”๋ฆฌ์ •์˜(.asmdef) ์ฐธ์กฐ์˜ ๋ถˆํ•„์š”ํ•œ ์žฌ์ปดํŒŒ์ผ์„ ๋ฐฉ์ง€ ํ•œ๋‹ค.) ๋ผ๊ณ  ํ•œ๋‹ค.. ์–ด์จŒ๋“  ์šฐ๋ฆฌ๋Š” ์ผ๋‹จ ์—๋Ÿฌ๋ฅผ ์ฒ˜๋ฆฌํ•ด๋ณด์ž ! --------------------------------------------------------------------------------------------------------------------------------- ์œ„ ๋ฐฉ๋ฒ•๊นŒ์ง€ ํ–ˆ๋Š”๋ฐ ํ•ด๊ฒฐ์ด ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด,

728x90
image