์๋ฅผ๋ค์ด a ๋ณ์์ ๊ฐ์ด 20์ด ๋ค์ด์์.
๋ด๊ฐ a ๋ณ์์ ๋งฅ์ค๊ฐ์ 10์ผ๋ก ์ง์ ํด๋์ 20์ด ๋ค์ด์์ง๋ง 10๋ณด๋ค ํฌ๋๊น
20 ๋ฌด์ํ๊ณ 10์ ํ ๋นํด์ค.
๊ตฌ๊ธ์ ์ฐพ์๋ณด๋ ค๊ณ int size limit ์น๋๊น INT_MAX ์ด๋ฐ๊ฒ๋ฐ์ ์๋จ๋ค
์ง์ ๊ตฌํํ ์๋ ์์ง๋ง ์์ ์ ๋น์ค๋ฌด๋ฆฌํ ๋ฉ์๋๋ฅผ ๋ณธ๊ฑฐ ๊ฐ์์
๊ทธ๋ฅ if (a > 10) { a = 10;} ์ด๋ ๊ฒ ํ๋ฉด ์๋จ?
Mathf.Clamp ์๊ฑด๊ฐ?
Mathf.Max(a, b) ์ด๊ฑด๊ฐ?
์ ๋ณธ๋ฌธ ๋ณด๋๊น ์ ๋ค ์๋๊ฑฐ ๊ฐ๋ค ๋ฏธ์
์ ๋ํฐ๋ผ๋ฉด ์ธ์คํํฐ์์ ์ ๋ ฅ๊ฐ ํ๊ณ ์ง์ ํด์ฃผ๋ ์ดํธ๋ฆฌ๋ทฐํธ๋ ์์ RangeAttribute์๋๊ฐ - dc App
ํ๋ ๋ง๊ณ ์์ฑ์ผ๋ก ๋ง๋ค๊ณ , ๊ทธ ์์์ ์ ์ดํด๋ณด์ธ์.
<Type> <Name> { get { return <Name2>; } set { <Name2> = value > 10 ? 10 : value; }
private <Type> <Name2>
๋จ์ : ์ ๋ํฐ์์๋ ์์ฑ์ ์ธ์คํํฐ์์ ํด๋น ๊ฐ์ ์ง์ ์ ์ดํ ์ ์์ต๋๋ค.
https://docs.unity3d.com/kr/current/ScriptReference/SerializeField.html
private์ธ Name2 ๋ณ์๋ฅผ [SerializeField]๋ฅผ ์ฃผ๋ฉด ์์ ์ ํ ์ ์์๊ฑฐ์์.
๊ทธ๋๋ ์ธ์คํํฐ์์๋ ์์ญ์ ์ ํ๊ณ ์ถ๋ค๋ฉด [SerializeField]์ [Range (min, max)]๋ฅผ ๊ฐ์ด ์ฐ์ ๋ ๋ ๊ฑฐ์์.
์ธ๋ถ์์ ์ฐธ์กฐํ ๋๋ <Name>์ชฝ์, ๋ด๋ถ์์ ์ฐธ์กฐํ ๋๋ ๋ ๋ค ์ฌ์ฉํ์๋ฉด ๋ ๋ฏ