Inspector - TeamCrazyPerformance/Game_study GitHub Wiki

Inspector(์ธ์ŠคํŽ™ํ„ฐ)๋ž€?

๊ฐ์ข… ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ, ์—์…‹, ์Šคํฌ๋ฆฝํŠธ ๋ณ€์ˆ˜ ๋“ฑ์˜ ๊ฐ’์„ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋Š” ์ฐฝ์ด๋‹ค. ๊ฑฐ์˜ ๋ชจ๋“  Unity ์š”์†Œ๋“ค์˜ ์„ค์ •๊ณผ ์š”์†Œ๋“ค์„ ํ™•์ธ, ํŽธ์ง‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฐฝ์˜ ์œ„์น˜์™€ ๋‹ซํ˜”์„ ๋•Œ ์—ฌ๋Š” ๋ฐฉ๋ฒ•

image

  • ์œ ๋‹ˆํ‹ฐ๋ฅผ ์„ค์น˜ ํ›„ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค์–ด์„œ ์ฒซ ๋ฌผ์ฒด๋ฅผ ์ƒ์„ฑ, ์„ ํƒํ•˜๋ฉด ์œ„ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์˜ค๋ฅธ์ชฝ์— Inspector ํƒญ์ด ๋œฌ๋‹ค.

  • ์ƒ๋‹จ ๋ฉ”๋‰ด์—์„œ Windows > General > Inspector๋ฅผ ์„ ํƒ

  • ์•„๋ฌด ์ฐฝ์˜ More ํ•ญ๋ชฉ ๋ฉ”๋‰ด(โ‹ฎ)์—์„œ Add Tab > Inspector๋ฅผ ์„ ํƒ

Inspector ์ฐฝ ์†Œ๊ฐœ

image

Inspector์— ๋œจ๋Š” Component๋Š” ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ๋งˆ๋‹ค ์ƒ์ดํ•˜๋‹ค. ์œ„์— ์žˆ๋Š” Component๋“ค์€ Cube์˜ Component๋“ค์ด๋‹ค. ๊ฐ Component๋“ค์€ ์‚ญ์ œ, ์„œ๋กœ ๊ฐ„์˜ ์ˆœ์„œ ๋ณ€๊ฒฝ, ์ถ”๊ฐ€ ๋“ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์›ํ•˜๋Š” Component๋ฅผ ๋Œ๊ฑฐ๋‚˜ ๊ฐ Property์˜ ์  3๊ฐœ(...) ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ์ˆœ์„œ๋ฅผ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ์‚ญ์ œ๋Š” ์  3๊ฐœ(...) ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.

image

Inspector ์ฐฝ์„ ๋งจ ๋ฐ‘์œผ๋กœ ์Šคํฌ๋กคํ•˜์—ฌ Add Component๋ฅผ ๋ˆŒ๋Ÿฌ Component๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. ์Šคํฌ๋ฆฝํŠธ์˜ ๊ฒฝ์šฐ ๊ฒ€์ƒ‰์ฐฝ์—์„œ ์Šคํฌ๋ฆฝํŠธ ๋ช…์„ ์ง์ ‘ ์ž…๋ ฅํ•ด ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

UI

ใ…ใ„ดใ…‡ใ„น

Script

public ๋ณ€์ˆ˜

image image

Script์˜ Class ์•ˆ์—์„œ public ๋ฉค๋ฒ„ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ ๋’ค ์–ด๋–ค Object์— ์ ์šฉํ•˜๋ฉด ์œ„์˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด Inspector ์ฐฝ์—์„œ ๋ณ€์ˆ˜๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. ์กฐ์ ˆํ•œ ๋ณ€์ˆ˜๋Š” ํ•ด๋‹น Object์—์„œ๋งŒ ์ ์šฉ๋˜๋ฉฐ, ๊ธฐ๋ณธ๊ฐ’์„ ์ˆ˜์ •ํ•˜๋ ค๋ฉด Script ๋‚ด์—์„œ ์ ์šฉํ•ด์•ผํ•œ๋‹ค.

image image

๋ณ€์ˆ˜๋ฅผ public์œผ๋กœ ์„ค์ •ํ•˜๊ณ  ์‹ถ์ง€๋งŒ ๊ตณ์ด ์ธ์ŠคํŽ™ํ„ฐ์—์„œ ๊ฐ’์„ ์ˆ˜์ •ํ•ด์ค„ ํ•„์š”๊ฐ€ ์—†์„ ๊ฒฝ์šฐ ํ•ด๋‹น ๋ณ€์ˆ˜ ์œ„์— [HideInInspector]๋ฅผ ์‚ฝ์ž…ํ•˜์—ฌ ์ค€๋‹ค.

private ๋ณ€์ˆ˜

image ๋ณ€์ˆ˜๋ฅผ private๋กœ ์„ค์ •ํ•˜๊ณ  ์‹ถ์ง€๋งŒ ๋ณด๊ธฐ ์‰ฝ๊ฒŒ Inspector ์ฐฝ์— ํ‘œ์‹œํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ private ํ‚ค์›Œ๋“œ ๋Œ€์‹  [SerializeField]๋ฅผ ์‚ฝ์ž…ํ•˜์—ฌ ์ค€๋‹ค.

ํŠน์ˆ˜ํ•œ Attribute

image

์œ„์˜ ์‚ฌ์ง„์ฒ˜๋Ÿผ ์Šคํฌ๋ฆฝํŠธ์—์„œ public ๋ณ€์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๋ฉด ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ ์ฐพ๊ธฐ ํž˜๋“ค๊ณ  ์กฐ์ž‘๋„ ๊ท€์ฐฎ์•„์ง„๋‹ค. ์ด๋Ÿฐ ๋ถˆํŽธํ•จ์„ ํ•ด์†Œํ•˜๊ธฐ ์œ„ํ•ด Script์—์„œ ํŠน์ˆ˜ํ•œ Class๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณ€์ˆ˜๋“ค์„ ๋ณด๊ธฐ ์ข‹๊ฒŒ ๊ตฌ๋ถ„ํ•ด์ค„ ์ˆ˜ ์žˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋“  Class๋Š” ๋ธŒ๋ž˜ํ‚ท [] ๋‚ด์— ํ•จ์ˆ˜์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

[Header (string)]

image image

Header Attribute์„ ์‚ฌ์šฉํ•˜๋ฉด ์œ„ ์ฒ˜๋Ÿผ Header ์†์„ฑ์„ ๊ธฐ์ค€์œผ๋กœ ์˜์—ญ์ด ๋ถ„ํ• ๋˜๊ณ  ํƒ€์ดํ‹€์ด ๋‹ฌ๋ฆฐ๋‹ค.

[Space (float)]

image image

float์— ์ ํžŒ๋งŒํผ ๊ฐ„๊ฒฉ์„ ๋„์›Œ์ฃผ๋Š” Attribute๋‹ค.

[Range (float, float)]

image image

๋ณ€์ˆ˜์˜ ๊ฐ’์„ ์Šฌ๋ผ์ด๋” ํ˜•์‹์œผ๋กœ ํ‘œ์‹œํ•˜๊ณ , ์ตœ์†Œ ๋ฐ ์ตœ๋Œ€ ๊ฐ’์„ ์ •ํ•ด์ฃผ๋Š” Attribute๋‹ค.

[Multiline (int)]

image image

๋ฌธ์ž์—ด์„ ์ž‘์„ฑํ•˜๊ธฐ ํŽธํ•˜๋„๋ก ๋ผ์ธ์˜ ์ˆ˜๋ฅผ ๋Š˜๋ ค์ฃผ๋Š” Attribute๋‹ค.

[ToolTip (string)]

image image

ํ•ด๋‹น ๋ณ€์ˆ˜ ์œ„์— ์ปค์„œ๋ฅผ ์˜ฌ๋ฆด ๊ฒฝ์šฐ ๋‚˜ํƒ€๋‚˜๋Š” ํˆดํŒ์„ ์„ค์ •ํ•˜๋Š” Attribute๋‹ค.

[System.Serializable]

image image

ํด๋ž˜์Šค๋‚˜ ๊ตฌ์กฐ์ฒด ์œ„์— ์ด Attribute๋ฅผ ์“ฐ๋ฉด Inspector์— ํ‘œ์‹œ๋  ๋•Œ ๋ณ€์ˆ˜ ์™ผํŽธ์— ์ ‘๊ณ  ํŽผ ์ˆ˜ ์žˆ๋Š” ์‚ผ๊ฐํ˜• ์•„์ด์ฝ˜์ด ๋งŒ๋“ค์–ด์ง„๋‹ค. ํŽผ์น˜๋ฉด ์•ˆ์— ์žˆ๋Š” ๋‚ด์šฉ์ด ๋ณด์—ฌ์ง€๋ฉฐ, ๋‹ค์‹œ ์ ‘์„ ์ˆ˜ ์žˆ๋‹ค.