[Unity] ๋ชจ๋ฐ”์ผ ๊ฒŒ์ž„ ์„ฑ๋Šฅ ์ตœ์ ํ™” 2ํŽธ
ยท
๐Ÿ“ Game/โœ Unity
๋ชจ๋ฐ”์ผ ๊ฒŒ์ž„ ์„ฑ๋Šฅ ์ตœ์ ํ™” 2ํŽธ 1. ์Œ์•… ํŒŒ์ผ wav ์›๋ณธ ์‚ฌ์šฉ ์–ด์ฐจํ”ผ ์œ ๋‹ˆํ‹ฐ์—์„œ ๋‹ค์‹œ ์••์ถ•์„ ํ•ด์ฃผ๊ธฐ ๋•Œ๋ฌธ์— mp3๋ฅผ ์ผ์„ ๋•Œ์˜ ์ด๋“์€ ํ”„๋กœ์ ํŠธ์˜ ์šฉ๋Ÿ‰์ด ์ค„์–ด๋“ ๋‹ค๋Š” ๊ฒƒ ๋ฐ–์— ์—†๋‹ค. ๊ทธ๋ ‡๋‹ค๊ณ  ์ด๋ฏธ ์••์ถ•๋œ mp3๋ฅผ wav๋กœ ๋ฐ”๊ฟ€ ํ•„์š”๋Š” ์—†๋‹ค. 2. ํ…์Šค์ณ, 3D Mesh์˜ Read/Write Enabled ์ฒดํฌ๋ฐ•์Šค ๋น„ํ™œ์„ฑํ™” CPU์—์„œ GPU๋กœ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์˜ฎ๊ธฐ๊ณ  CPU์—์„œ๋Š” ๋‚ด๋ฆฐ๋‹ค. ํ™œ์„ฑํ™”ํ•œ ๊ฒฝ์šฐ์—๋Š” CPU์—์„œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋‚ด๋ฆฌ์ง€ ์•Š์•„ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์ค‘๋ณต๋œ๋‹ค. ํ…์Šค์ณ๋ฅผ ๋™์ ์œผ๋กœ ์กฐ์ž‘ํ•œ๋‹ค๋ฉด ๋‹น์—ฐํžˆ ์ผœ์•ผ ํ•˜์ง€๋งŒ, ์•„๋‹ˆ๋ผ๋ฉด ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. 3. ํ™”๋ฉด ํ•ด์ƒ๋„ ์กฐ์ ˆ Screen.SetResolution(width, height, false); 4. Renderer.material ์ ‘๊ทผ ์ฃผ์˜ Renderer.materia..
[Unity] ๋ชจ๋ฐ”์ผ ๊ฒŒ์ž„ ์„ฑ๋Šฅ ์ตœ์ ํ™” 1ํŽธ
ยท
๐Ÿ“ Game/โœ Unity
๋ชจ๋ฐ”์ผ ๊ฒŒ์ž„ ์„ฑ๋Šฅ ์ตœ์ ํ™” 1ํŽธ 1. string ํŒŒ์‹ฑ ํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๊ฐ€๋น„์ง€ JSON์ด๋‚˜ XML์„ ๋ฐ์ดํ„ฐ ํŒŒ์‹ฑํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์€๋ฐ, ์ด ๊ณผ์ •์—์„œ ๊ฐ€๋น„์ง€๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์œผ๋ฏ€๋กœ ๋นŒ๋“œ ์ „์— ์—๋””ํ„ฐ์—์„œ ScriptableObject๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์บ์‹ฑํ•ด๋†“๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค. 2. ์• ๋‹ˆ๋ฉ”์ดํ„ฐ ๋“ฑ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ string์œผ๋กœ ํ˜ธ์ถœํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๊ฐ€๋น„์ง€ animator.SetBool("Jump", true); ๋งค๋ฒˆ string์œผ๋กœ ํ˜ธ์ถœํ•˜๋ฉด ๊ฐ€๋น„์ง€๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. ID๋กœ ์บ์‹ฑํ•ด์„œ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค. 3. ์˜ค๋ธŒ์ ํŠธ ํ’€ ๋งŒ๋“ค ๋•Œ ๋ถ€๋ชจ ๋ณ€๊ฒฝ Hierarchy ์ฐฝ์—์„œ enable ๋ถ€๋ชจ, disable ๋ถ€๋ชจ ๋งŒ๋“ค์–ด์„œ ๋ถ€๋ชจ ๊ณ„์† ๋ฐ”๊พธ๋Š” ํ–‰์œ„๋Š” ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. ์™œ๋ƒํ•˜๋ฉด SetParent ํ•จ์ˆ˜๋Š” ๋น„์šฉ์€ ๊ฝค ๋ฌด..
[C# 6.0] ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ (2) - ๋ฌธ์žฅ ๋ ˆ๋ฒจ, ํด๋ž˜์Šค ๋ฉค๋ฒ„ ๋ ˆ๋ฒจ
ยท
๐Ÿ“ Language/โœ C#
C# 6.0์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ 2. ๋ฌธ์žฅ ๋ ˆ๋ฒจ 1) using static ๋ฌธ static ๋ฉ”์„œ๋“œ(ํ˜น์€ ์†์„ฑ)๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ํด๋ž˜์Šค๋ช….๋ฉ”์„œ๋“œ๋ช…(ํ˜น์€ ์†์„ฑ๋ช…)๊ณผ ๊ฐ™์ด ํด๋ž˜์Šค๋ช…์„ ๋ฐ˜๋“œ์‹œ ์•ž์— ์ง€์ •ํ•ด ์ฃผ์–ด์•ผ ํ–ˆ๋‹ค. C# 6.0์—์„œ๋Š” using static์„ ์‚ฌ์šฉํ•ด ๋ฏธ๋ฆฌ ์ง€์ •ํ•ด ์ค€๋‹ค๋ฉด, ํ•ด๋‹น ํŒŒ์ผ ๋‚ด์—์„œ๋Š” ํด๋ž˜์Šค๋ช… ์—†์ด ์ง์ ‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. using static System.Console; namespace CS6 { class Program { static void Main(string[] args) { // Console. ์ƒ๋žต ๊ฐ€๋Šฅ WriteLine("csharpstudy.com"); } } } 2) catch/finally ๋ธ”๋ก์—์„œ await ์‚ฌ์šฉ C# 5.0์—์„œ๋Š” await๋ฅผ catch/final..
[C# 6.0] ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ (1) - ํ‘œํ˜„์‹ ๋ ˆ๋ฒจ
ยท
๐Ÿ“ Language/โœ C#
C# 6.0์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ํ‘œํ˜„์‹ ๋ ˆ๋ฒจ ๋„ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž(Null-conditional operator) ๋ฌธ์ž์—ด ๋ณด๊ฐ„(String Interpolation) Dictionary Initializer nameof ์—ฐ์‚ฐ์ž ๋ฌธ์žฅ ๋ ˆ๋ฒจ using static ๋ฌธ catch/finally ๋ธ”๋ก์—์„œ await ์‚ฌ์šฉ Exception Filter ์ง€์› ํด๋ž˜์Šค ๋ฉค๋ฒ„ ๋ ˆ๋ฒจ ์ž๋™ ์†์„ฑ ์ดˆ๊ธฐ์ž(Auto Property Initializer) ์ฝ๊ธฐ ์ „์šฉ ์ž๋™ ์†์„ฑ(Getter only) Expression-bodied member ์‚ฌ์šฉ https://www.csharpstudy.com/CS6/CSharp-6-new-features.aspx C# 6.0 ์ƒˆ๊ธฐ๋Šฅ - C# ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฐ์šฐ๊ธฐ (Learn C# Programming) ..
[Book] ํด๋ฆฐ ์•„ํ‚คํ…์ฒ˜
ยท
๐Ÿ“ Book/โœ Clean Code
ํด๋ฆฐ ์•„ํ‚คํ…์ฒ˜ 1. ์†Œํ”„ํŠธ์›จ์–ด ์•„ํ‚คํ…์ฒ˜์˜ ์ค‘์š”์„ฑ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ฐ€์น˜ ์ค‘ ๊ธฐ๋Šฅ๊ณผ ๊ตฌ์กฐ ์ค‘ ๋ณดํ†ต ๊ธฐ๋Šฅ์— ์ง‘์ค‘ํ•˜์ง€๋งŒ, ํด๋ฆฐ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ์•ˆํ•œ ์—‰ํด ๋ฐฅ์€ ๊ตฌ์กฐ๊ฐ€ ์ค‘์š”ํ•˜๋‹ค๊ณ  ๋งํ•œ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์ถ”๊ตฌํ•ด์•ผ ํ•˜๋Š” ์ฝ”๋“œ ๊ตฌ์กฐ๋Š” ์ •๋ฆฌ๊ฐ€ ์•ˆ๋๊ฑฐ๋‚˜ ๋„ˆ๋ฌด ๊น”๋”ํ•œ ์ฝ”๋“œ๋ณด๋‹ค ๋งŽ์€ ๊ฒƒ๋“ค์ด ์žˆ์ง€๋งŒ ๋‚˜๋ฆ„์˜ ์งˆ์„œ๊ฐ€ ์žˆ์–ด ์ •๋ฆฌ๋œ ๊ฒƒ์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์™œ ์ข‹์€ ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์™œ ์ค‘์š”ํ• ๊นŒ? ์ฝ”๋“œ๋ฅผ ์ฝ๊ณ  ์ดํ•ดํ•˜๊ณ  ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ํ•˜๋Š” ์œ ์ง€ ๋ณด์ˆ˜์˜ ๊ณผ์ •์—์„œ ์ˆ˜์›”ํ•˜๊ฒŒ ์ง„ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ธฐ๋Šฅ๊ณผ ๋น„์Šทํ•˜๊ฒŒ ๊ตฌ์กฐ๊ฐ€ ์ค‘์š”ํ•˜๋‹ค. ๊ตฌ์กฐ๋Š” ๊ธฐ๋Šฅ์„ ๋’ท๋ฐ›์นจํ•˜๊ณ  ๋” ์‰ฝ๊ฒŒ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด ์ค€๋‹ค. ๊ตฌ์กฐ๊ฐ€ ์ข‹์ง€๋งŒ ๊ธฐ๋Šฅ์ด ๋‚˜์˜๋ฉด, ์ง€๊ธˆ์€ ๋ถ€์กฑํ•˜์ง€๋งŒ ์œ ์ง€ ๋ณด์ˆ˜์˜ ๋น„์šฉ์ด ์ ๊ฒŒ ๋“ ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ ๋ฐ˜๋Œ€๋Š” ๋น„์šฉ์ด ๋งŽ์ด ๋“ ๋‹ค. 2. ์ข‹์€ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ• 1) ์•„ํ‚คํ…์ฒ˜ ์›์น™ ์ฝ”๋“œ๋ฅผ..
์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ •๋ฆฌ
ยท
๐Ÿ“ Computer Science/โœ Algorithm
์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ •๋ฆฌ 1. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ์‚ฌ์ดํŠธ BOJ solved.ac: BOJ ๋ฌธ์ œ๋“ค์˜ ๋‚œ์ด๋„ ๋ฐ ํ‹ฐ์–ด ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ์‚ฌ์ดํŠธ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฆฌํŠธ์ฝ”๋“œ ๊ธฐ์ถœ ๋ฌธ์ œ ์‚ผ์„ฑ: SWEA, BOJ ์‚ผ์„ฑ ๊ธฐ์ถœ ๋ชจ์Œ ์นด์นด์˜ค: ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 2. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ๊ฐ€์ด๋“œ ์‚ฌ์ดํŠธ BOJ ๊ธธ๋ผ์žก์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณต๋ถ€, ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ•˜๋‚˜์š”?