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

๋ชฉ๋ก์ „์ฒด ๊ธ€ (1099)

KoreanFoodie's Study

8-1. ์ž๋ฐ” ์ธํ„ฐํŽ˜์ด์Šค์˜ ์—ญํ• ๊ณผ ์„ ์–ธ, ๊ตฌํ˜„ ์˜ˆ์ œ ์‚ดํŽด๋ณด๊ธฐ

์ธํ„ฐํŽ˜์ด์Šค์˜ ์—ญํ•  ์ธํ„ฐํŽ˜์ด์Šค๋Š” ๊ฐ์ฒด์˜ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์„ ์ •์˜ํ•œ ํƒ€์ž…์ด๋‹ค. ๊ฐœ๋ฐœ ์ฝ”๋“œ๊ฐ€ ์ค‘๊ฐ„์— ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋‘๋Š” ์ด์œ ๋Š”, ๊ฐœ๋ฐœ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜์ง€ ์•Š๊ณ , ์‚ฌ์šฉํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด์„œ์ด๋‹ค. ์ธํ„ฐํŽ˜์ด์Šค๋Š” ํ•˜๋‚˜์˜ ๊ฐ์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ ๊ฐ์ฒด๋“ค๊ณผ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ ์–ด๋–ค ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š๋ƒ์— ๋”ฐ๋ผ ์‹คํ–‰ ๋‚ด์šฉ๊ณผ ๋ฆฌํ„ด๊ฐ’์ด ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐœ๋ฐœ ์ฝ”๋“œ ์ธก๋ฉด์—์„œ ์ฝ”๋“œ ๋ณ€๊ฒฝ ์—†์ด ์‹คํ–‰ ๋‚ด์šฉ๊ณผ ๋ฆฌํ„ด๊ฐ’์„ ๋‹ค์–‘ํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ์ธํ„ฐํŽ˜์ด์Šค ์„ ์–ธ ์ธํ„ฐํŽ˜์ด์Šค๋Š” "~.java" ํ˜•ํƒœ์˜ ์†Œ์Šค ํŒŒ์ผ๋กœ ์ž‘์„ฑ๋˜๊ณ  ์ปดํŒŒ์ผ๋Ÿฌ(javac.exe)๋ฅผ ํ†ตํ•ด "~.class" ํ˜•ํƒœ๋กœ ์ปดํŒŒ์ผ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฌผ๋ฆฌ์  ํ˜•ํƒœ๋Š” ํด๋ž˜์Šค์™€ ๋™์ผํ•˜๋‹ค. public interface InterfaceName { ... } ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ƒ์ˆ˜์™€ ๋ฉ”์†Œ๋“œ๋งŒ์„..

Tutorials/Java 2021. 9. 15. 17:58
7. ์ž๋ฐ”์˜ ์ƒ์† : ํƒ€์ž… ๋ณ€ํ™˜๊ณผ ๋‹คํ˜•์„ฑ

ํƒ€์ž… ๋ณ€ํ™˜๊ณผ ๋‹คํ˜•์„ฑ (Polymorphism) ๋‹คํ˜•์„ฑ์€ ๊ฐ™์€ ํƒ€์ž…์ด์ง€๋งŒ ์‹คํ–‰ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ค์–‘ํ•œ ๊ฐ์ฒด๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์„ฑ์งˆ์„ ๋งํ•œ๋‹ค. ์ž๋™ ํƒ€์ž… ๋ณ€ํ™˜(Promotion) ์ž๋™ ํƒ€์ž… ๋ณ€ํ™˜์˜ ๊ฐœ๋…์€ ์ž์‹์€ ๋ถ€๋ชจ์˜ ํŠน์ง•๊ณผ ๊ธฐ๋Šฅ์„ ์ƒ์†๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— ๋ถ€๋ชจ์™€ ๋™์ผํ•˜๊ฒŒ ์ทจ๊ธ‰๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. // Vehicle ์ž๋™ ํƒ€์ž… ๋ณ€ํ™˜์ด ๋ฐœ์ƒํ•œ๋‹ค! ์ฆ‰, ๋งค๊ฐœ ๋ณ€์ˆ˜์˜ ํƒ€์ž…์ด ํด๋ž˜์Šค์ผ ๊ฒฝ์šฐ, ํ•ด๋‹น ํด๋ž˜์Šค์˜ ๊ฐ์ฒด๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ž์‹ ๊ฐ์ฒด๊นŒ์ง€๋„ ๋งค๊ฐœ๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค! ๋งค๊ฐœ๊ฐ’์œผ๋กœ ์–ด๋–ค ์ž์‹ ๊ฐ์ฒด๊ฐ€ ์ œ๊ณต๋˜๋Š๋ƒ์— ๋”ฐ๋ผ ๋ฉ”์†Œ๋“œ์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋Š” ๋‹ค์–‘ํ•ด์งˆ ์ˆ˜ ์žˆ๋‹ค(๋งค๊ฐœ ๋ณ€์ˆ˜์˜ ๋‹คํ˜•์„ฑ). ์ž์‹ ๊ฐ์ฒด๊ฐ€ ๋ถ€๋ชจ์˜ ๋ฉ”์†Œ๋“œ๋ฅผ ์žฌ์ •์˜(์˜ค๋ฒ„๋ผ์ด๋”ฉ)ํ–ˆ๋‹ค๋ฉด ๋ฉ”์†Œ๋“œ ๋‚ด๋ถ€์—์„œ ์˜ค๋ฒ„๋ผ์ด๋”ฉ๋œ ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•จ์œผ๋กœ์จ ๋ฉ”์†Œ๋“œ์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋Š” ๋‹ค์–‘ํ•ด์ง„๋‹ค. ๊ฐ•์ œ ํƒ€์ž… ๋ณ€ํ™˜ ๊ฐ•์ œ ..

Tutorials/Java 2021. 9. 15. 00:08
6-3. ์–ด๋…ธํ…Œ์ด์…˜(Annotation) : ์ž๋ฐ” ์–ด๋…ธํ…Œ์ด์…˜ ๊ฐœ๋…๊ณผ ์˜ˆ์ œ

์–ด๋…ธํ…Œ์ด์…˜ ์–ด๋…ธํ…Œ์ด์…˜์€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ผ๊ณ  ๋ณผ์ˆ˜ ์žˆ๋‹ค. @AnnotationName ์–ด๋…ธํ…Œ์ด์…˜์€ ๋‹ค์Œ ์„ธ ๊ฐ€์ง€ ์šฉ๋„๋กœ ์‚ฌ์šฉ๋œ๋‹ค. 1. ์ปดํŒŒ์ผ๋Ÿฌ์—๊ฒŒ ์ฝ”๋“œ ๋ฌธ๋ฒ• ์—๋Ÿฌ๋ฅผ ์ฒดํฌํ•˜๋„๋ก ์ •๋ณด๋ฅผ ์ œ๊ณต 2. ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํˆด์ด ๋นŒ๋“œ๋‚˜ ๋ฐฐ์น˜ ์‹œ ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ์ •๋ณด๋ฅผ ์ œ๊ณต 3. ์‹คํ–‰ ์‹œ(๋Ÿฐํƒ€์ž„ ์‹œ) ํŠน์ • ๊ธฐ๋Šฅ์„ ์‹คํ–‰ํ•˜๋„๋ก ์ •๋ณด๋ฅผ ์ œ๊ณต ๋Œ€ํ‘œ์ ์œผ๋กœ๋Š” @Override๊ฐ€ ์žˆ๋‹ค. (์ƒ์† ๋ฉ”์†Œ๋“œ ์žฌ์ •์˜ ์‹œ) ์–ด๋…ธํ…Œ์ด์…˜ ํƒ€์ž… ์ •์˜์™€ ์ ์šฉ ์–ด๋…ธํ…Œ์ด์…˜ ํƒ€์ž…์˜ ์ •์˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ๊ณผ ์œ ์‚ฌํ•˜๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด @interface๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์–ด๋…ธํ…Œ์ด์…˜์„ ์ •์˜ํ•˜๋ฉฐ, ๊ทธ ๋’ค์— ์‚ฌ์šฉํ•  ์–ด๋…ธํ…Œ์ด์…˜ ์ด๋ฆ„์ด ์˜จ๋‹ค. public @interface AnnotationName { ํƒ€์ž… elementName() [default ๊ฐ’]..

Tutorials/Java 2021. 9. 14. 17:23
6-2. ํŒจํ‚ค์ง€ : ์ž๋ฐ” ํŒจํ‚ค์ง€์˜ ๊ฐœ๋…๊ณผ ์˜ˆ์ œ

ํŒจํ‚ค์ง€ ์ž๋ฐ”์—์„œ๋Š” ํด๋ž˜์Šค๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ํŒจํ‚ค์ง€์˜ ๋ฌผ๋ฆฌ์ ์ธ ํ˜•ํƒœ๋Š” ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ํด๋”์ด๋‹ค. ํŒจํ‚ค์ง€๋Š” ๋‹จ์ˆœํžˆ ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ํด๋” ๊ธฐ๋Šฅ๋งŒ ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํด๋ž˜์Šค์˜ ์ผ๋ถ€๋ถ„์ด๋‹ค. ํŒจํ‚ค์ง€๋Š” ํด๋ž˜์Šค๋ฅผ ์œ ์ผํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ์‹๋ณ„์ž ์—ญํ• ์„ ํ•œ๋‹ค. ํŒจํ‚ค์ง€๋Š” ํด๋ž˜์Šค๋ฅผ ์œ ์ผํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ์‹๋ณ„์ž ์—ญํ• ์„ ํ•œ๋‹ค. ํด๋ž˜์Šค ์ด๋ฆ„์ด ๋™์ผํ•˜๋”๋ผ๋„ ํŒจํ‚ค์ง€๊ฐ€ ๋‹ค๋ฅด๋ฉด ๋‹ค๋ฅธ ํด๋ž˜์Šค๋กœ ์ธ์‹ํ•œ๋‹ค. ํด๋ž˜์Šค์˜ ์ „์ฒด ์ด๋ฆ„์€ "ํŒจํ‚ค์ง€๋ช…+ํด๋ž˜์Šค๋ช…"์ธ๋ฐ, ํŒจํ‚ค์ง€๊ฐ€ ์ƒ/ํ•˜์œ„๋กœ ๊ตฌ๋ถ„๋˜์–ด ์žˆ๋‹ค๋ฉด ๋„ํŠธ(.)๋ฅผ ์ด์šฉํ•ด ํ‘œํ˜„ํ•œ๋‹ค. ์ƒ์œ„ํŒจํ‚ค์ง€.ํ•˜์œ„ํŒจํ‚ค์ง€.ํด๋ž˜์Šค ํด๋ž˜์Šค๋ฅผ ์ด๋™์‹œํ‚ฌ ๋•Œ๋Š” ํŒจํ‚ค์ง€ ์ „์ฒด๋ฅผ ์ด๋™์‹œ์ผœ์•ผ ํ•œ๋‹ค. ์ฆ‰, myPackage ๋‚ด์˜ myClass๋ฅผ yourPackage๋กœ ์˜ฎ๊ธด๋‹ค๋ฉด, ํ•ด๋‹น ํด๋ž˜์Šค๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋œ๋‹ค! ํŒจํ‚ค์ง€ ..

Tutorials/Java 2021. 9. 14. 16:47
6-1. ์ •์  ๋ฉค๋ฒ„์™€ static : ์ •์  ๋ฉ”์†Œ๋“œ, ์ •์  ์ดˆ๊ธฐํ™” ๋ธ”๋ก, ์‹ฑ๊ธ€ํ†ค

์ •์ (static) ์ •์  ๋ฉค๋ฒ„๋Š” ํด๋ž˜์Šค์— ๊ณ ์ •๋œ ๋ฉค๋ฒ„๋กœ์„œ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ•„๋“œ์™€ ๋ฉ”์†Œ๋“œ๋ฅผ ๋งํ•œ๋‹ค. ํด๋ž˜์Šค๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋กœ๋”ฉ๋˜๋ฉด ์ •์  ๋ฉค๋ฒ„๋ฅผ ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ํด๋ž˜์Šค ์ด๋ฆ„๊ณผ ํ•จ๊ป˜ ๋„ํŠธ(.) ์—ฐ์‚ฐ์ž๋กœ ์ ‘๊ทผํ•œ๋‹ค. int a = myClass.value; myClass.doSomething(a); ์ •์  ์ดˆ๊ธฐํ™” ๋ธ”๋ก ์ •์  ํ•„๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•„๋“œ ์„ ์–ธ๊ณผ ๋™์‹œ์— ์ดˆ๊ธฐ๊ฐ’์„ ์ฃผ๋Š” ๊ฒƒ์ด ๋ณดํ†ต์ด๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ณ„์‚ฐ์ด ํ•„์š”ํ•œ ์ดˆ๊ธฐํ™” ์ž‘์—…์˜ ๊ฒฝ์šฐ, ์ •์  ๋ธ”๋ก(static block)์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. static { ... } ์ •์  ๋ธ”๋ก์€ ํด๋ž˜์Šค๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋กœ๋”ฉ๋  ๋•Œ ์ž๋™์ ์œผ๋กœ ์‹คํ–‰๋œ๋‹ค. ์ •์  ๋ธ”๋ก์€ ํด๋ž˜์Šค ๋‚ด๋ถ€์— ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ์„ ์–ธ๋˜์–ด๋„ ์ƒ๊ด€์—†๊ณ , ์„ ์–ธ๋œ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰๋œ๋‹ค. public class TV..

Tutorials/Java 2021. 9. 14. 15:02
5. ์ž๋ฐ” ์ฐธ์กฐ ํƒ€์ž… : ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ๋ฉ”๋ชจ๋ฆฌ

๋ฐ์ดํ„ฐ ํƒ€์ž… ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ primitive type๊ณผ reference type(์ฐธ์กฐ ํƒ€์ž…)์œผ๋กœ ๋‚˜๋‰œ๋‹ค. ์ฐธ์กฐ ํƒ€์ž…์ด๋ž€ ๊ฐ์ฒด์˜ ๋ฒˆ์ง€๋ฅผ ์ฐธ์กฐํ•˜๋Š” ํƒ€์ž…์œผ๋กœ, ๋ฐฐ์—ด, ์—ด๊ฑฐ, ํด๋ž˜์Šค, ์ธํ„ฐํŽ˜์ด์Šค ํƒ€์ž…์ด ์ด์— ํ•ด๋‹น๋œ๋‹ค. ์ž๋ฐ”๋Š” ๋ฐฐ์—ด์˜ ์ฃผ์†Œ๋ฅผ ์Šคํƒ ์˜์—ญ์—, ์‹ค์ œ ๋ฐ์ดํ„ฐ ๊ฐ’์€ ํž™ ์˜์—ญ์— ํ• ๋‹นํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ์˜์—ญ JVM์€ ์šด์˜์ฒด์ œ์—์„œ ํ• ๋‹น๋ฐ›์€ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ(Runtime Data Area)๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌ๋ถ„ํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค. 1. ๋ฉ”์†Œ๋“œ ์˜์—ญ : ์ฝ”๋“œ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํด๋ž˜์Šค(~.class)๋“ค์„ ํด๋ž˜์Šค ๋กœ๋”๋กœ ์ฝ์–ด ํด๋ž˜์Šค๋ณ„๋กœ ๋Ÿฐํƒ€์ž„ ์ƒ์ˆ˜ํ’€(runtime constant pool), ํ•„๋“œ(fiedl) ๋ฐ์ดํ„ฐ, ๋ฉ”์†Œ๋“œ(method) ๋ฐ์ดํ„ฐ, ๋ฉ”์†Œ๋“œ ์ฝ”๋“œ, ์ƒ์„ฑ์ž(constructor) ์ฝ”๋“œ ๋“ฑ์„ ๋ถ„๋ฅ˜ํ•ด์„œ ์ €์žฅํ•œ๋‹ค. ๋ฉ”์†Œ๋“œ ์˜..

Tutorials/Java 2021. 9. 14. 14:39
7. ํ”„๋ฆฌํŒน, ์ถฉ๋Œ ์ฒ˜๋ฆฌ(OnTrigger, OnCollision) ๋“ฑ : ์œ ๋‹ˆํ‹ฐ ํŠœํ† ๋ฆฌ์–ผ

ํ”„๋ฆฌํŒน ๊ฒŒ์ž„ ์˜ค๋ธŒํ…ํŠธ๋Š” ํ”„๋ฆฌํŒน์œผ๋กœ ๋งŒ๋“ค์–ด ์žฌํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งˆ์น˜, ์นผ์„ ์ฐ์–ด๋‚ด๋Š” ์ฃผ๋ฌผ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค! ์‚ฌ์šฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค. Hierarchy์— ์žˆ๋Š” ์˜ค๋ธŒ์ ํŠธ๋ฅผ ํ”„๋กœ์ ํŠธ ์ฐฝ์— ๋“œ๋ž˜๊ทธ&๋“œ๋ž ํ•ด์ฃผ๊ธฐ๋งŒ ํ•˜๋ฉด ๋œ๋‹ค! Use Gravity ๋ฆฌ์ง€๋“œ ๋ฐ”๋”” ์ปดํฌ๋„ŒํŠธ์˜ Use Gravity ํ•„๋“œ๋ฅผ ํ•ด์ œํ•˜๋ฉด ์ค‘๋ ฅ์˜ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š๋Š”๋‹ค. transform ๋ณ€์ˆ˜ transform์€ ์Šคํฌ๋ฆฝํŠธ์—์„œ ์ž์‹ ์˜ ํŠธ๋žœ์Šคํผ ์ปดํฌ๋„ŒํŠธ๋กœ ๋ฐ”๋กœ ์ ‘๊ทผํ•˜๋Š” ์ง€๋ฆ„๊ธธ์ด๋‹ค! Destroy( ) void Start() { // ์ด๋™์— ์‚ฌ์šฉํ•  ๋ฆฌ์ง€๋“œ๋ฐ”๋”” ์ปดํฌ๋„ŒํŠธ ํ• ๋‹น bulletRigidbody = GetComponent(); // ๋ฆฌ์ง€๋“œ๋ฐ”๋””์˜ ์†๋„ = ์•ž์ชฝ ๋ฐฉํ–ฅ * ์ด๋™ ์†๋ ฅ bulletRigidbody.velocity = transform.forwa..

Game Dev/Unity : Tutorial 2021. 9. 4. 16:40
6. ๋จธํ‹ฐ๋ฆฌ์–ผ, GetAxis, Input.GetKey( ) : ์œ ๋‹ˆํ‹ฐ ํŠœํ† ๋ฆฌ์–ผ

๋จธํ‹ฐ๋ฆฌ์–ผ ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ์˜ ์ปฌ๋Ÿฌ๋Š” ๋จธํ‹ฐ๋ฆฌ์–ผ(Material)์ด ๊ฒฐ์ •ํ•œ๋‹ค. ๋จธํ‹ฐ๋ฆฌ์–ผ์€ ์…ฐ์ด๋”์™€ ํ…์Šค์ณ๊ฐ€ ํ•ฉ์ณ์ง„ ์—์…‹์œผ๋กœ, ์˜ค๋ธŒ์ ํŠธ์˜ ํ”ฝ์…€ ์ปฌ๋Ÿฌ๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค ์…ฐ์ด๋”๋Š” ์ฃผ์–ด์ง„ ์ž…๋ ฅ์— ๋”ฐ๋ผ ํ”ฝ์…€์˜ ์ตœ์ข… ์ปฌ๋Ÿฌ๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ์ฝ”๋“œ์ด๋‹ค. ์…ฐ์ด๋”๋Š” ์งˆ๊ฐ๊ณผ ๋น›์— ์˜ํ•œ ๋ฐ˜์‚ฌ์™€ ๊ตด์ ˆ ๋“ฑ์˜ ํšจ๊ณผ๋ฅผ ๋งŒ๋“ ๋‹ค. ํ…์Šค์ฒ˜๋Š” ํ‘œ๋ฉด์— ์ž…ํžˆ๋Š” ์ด๋ฏธ์ง€ ํŒŒ์ผ์ด๋‹ค. ์…ฐ์ด๋”๋Š” ๋ฌผ๊ฐ์œผ๋กœ, ํ…์Šค์ฒ˜๋Š” ์Šค์ผ€์น˜๋‚˜ ๋ฐ‘๊ทธ๋ฆผ์œผ๋กœ ์ดํ•ดํ•˜๋ฉด ๋œ๋‹ค. ๋ฐ‘๊ทธ๋ฆผ์ด ๊ฐ™์•„๋„ ๋ฌผ๊ฐ์˜ ์ข…๋ฅ˜์— ๋”ฐ๋ผ ํ™”ํ’์ด ๋‹ฌ๋ผ์ง„๋‹ค! ์ด ์ค‘ ์•Œ๋ฒ ๋„(Albedo)๋Š” ๋ฐ˜์‚ฌ์œจ์ด๋ผ๋Š” ๋œป์œผ๋กœ, ๋ฌผ์ฒด๊ฐ€ ์–ด๋–ค ์ƒ‰์„ ๋ฐ˜์‚ฌํ• ์ง€๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค! C# ์Šคํฌ๋ฆฝํŠธ ์ด์ œ ๊ธฐ์ดˆ์ ์ธ ์ฝ”๋“œ๋“ค์„ ์‚ดํŽด๋ณด์ž. void FixedUpdate() { if (Input.GetKey(KeyCode.UpArrow) == true) { playerRig..

Game Dev/Unity : Tutorial 2021. 9. 3. 22:46