๐ฎ Unity
[Unity] ์ฌ์ฉ์ ์ ๋ ฅ ๊ฐ์ง
Update() ๋ฉ์๋ ์ ๋ ฅ์ ๊ฐ์งํ๋ ค๋ฉด Update() ๋ฉ์๋์ input ํด๋์ค์ ์ ๋ ฅ ๊ฐ์ง ๋ฉ์๋ ํ์ Input ์คํ ์์ ์ ์ด๋ค ํค๋ฅผ ๋๋ ๋ ์ง ์๋ ค์ค Input.GetKey() ๋ฉ์๋๋ ํค๋ณด๋์ ์๋ณ์๋ฅผ KeyCode ํ์ ์ผ๋ก ์ ๋ ฅ๋ฐ๋๋ค. bool Input.GetKey(KeyCode key); Input.GetKey(): ํด๋น ํค๋ฅผ ๋๋ฅด๋ ๋์ Input.GetKeyDown(): ํด๋น ํค๋ฅผ ๋๋ฅด๋ ์๊ฐ
[Unity] C# ํด๋์ค์ ์ค๋ธ์ ํธ
ํด๋์ค ์ถ์ํ ํ ๋์๊ณผ ๊ด๋ จ๋ ์ฝ๋(๋ณ์์ ๋ฉ์๋)๋ฅผ ๋ฌถ๋ ํ ํด๋์ค์ ํ๋ = ํด๋์ค์ ๋ฉค๋ฒ ์ค์์ ๋ณ์ ์ค๋ธ์ ํธ - ์๋ณธ ํด๋์ค์์ ์ฌ๋ฌ ๊ฐ์ ์ค๋ธ์ ํธ ์์ฑ ๊ฐ๋ฅ - ์ค๋ธ์ ํธ๋ ์๋ก ๋ ๋ฆฝ์ ์ด๋ฉฐ ๊ตฌ๋ณ ๊ฐ๋ฅ ์ฐธ์กฐ(reference) ํ์ - C#์์ ํด๋์ค๋ก ๋ง๋ ๋ณ์๋ ์ฐธ์กฐ ํ์ - ์ฐธ์กฐ ํ์ ์ ๋ณ์๋ ์ค์ฒดํ ๋ ์ค๋ธ์ ํธ๊ฐ ์๋ - ์ฐธ์กฐ ํ์ ์ ๋ณ์๋ฅผ ์ ์ธํ๋ ๊ฒ๋ง์ผ๋ก๋ ์ค๋ธ์ ํธ๊ฐ ์์ฑ๋์ง ์๊ธฐ ๋๋ฌธ์ new๋ฅผ ์ฌ์ฉํด ์ค๋ธ์ ํธ๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ์์ฑ - ์ฐธ์กฐ ํ์ ์ ' ํ ์ฌ๋์ ์ฌ๋ฌ ๊ฐ์ ๋ณ๋ช ์ผ๋ก ๋ถ๋ฅด๋ ์ํฉ'์ ๋ง๋ค ์ ์์. - ์ฆ, ์ค๋ธ์ ํธ๋ ํ๋์ง๋ง ๊ทธ๊ฒ์ ์ฌ๋ฌ ๊ฐ์ ์ฐธ์กฐ ๋ณ์๊ฐ ๋์์ ๊ฐ๋ฆฌํฌ ์ ์์. ๊ฐ(value) ํ์ - float, int, string ๋ฑ์ C# ๋ด์ฅ๋ณ์๋ ์ฐธ์กฐ๋ก ๋์ ..
[Unity] C# ์์๊ณผ ์ปดํฌ๋ํธ ํจํด
์์ - ๊ฒ์ ์์ง์ ์ด๋ฏธ ์์ฑ๋ ๊ธฐ๋ฐ ์ฝ๋๋ฅผ ์ ๊ณต - ๊ฒ์ ์์ง์ ์ฝ๋๋ฅผ ์ฌ์ฌ์ฉํ๋ฏ๋ก ์์ฐ์ฑ ์์น - ์ ๋ํฐ์ ์ปดํฌ๋ํธ ๊ธฐ๋ฐ ๊ตฌ์กฐ๋ฅผ ์ดํดํ๋ ค๋ฉด ์์์ ์์์ผ ํจ ์์์ ํ๊ณ ๋ถ๋ชจ ํด๋์ค๋ฅผ ์์ํด ์์ ํด๋์ค์ ๊ธฐ์ด ๊ตฌํ์ ๋์ ํ ์ ์๋ค. ๊ทธ๋ฌ๋, ์์์๋ง ์์กดํ๋ฉด ์คํ๋ ค ์ฝ๋๋ฅผ ์ฌ์ฌ์ฉํ๊ธฐ ํ๋ค ์ ๋ ์๋ค. ๋ถ๋ชจ ํด๋์ค๋ ์์ ํด๋์ค์ ๊ณตํต์ ์ผ๋ก ํ์ํ ๊ธฐ๋ฅ์ ๊ตฌํํด์ผํ๋ ๋ฐ, ๋ถ๋ชจ ํด๋์ค์ ๊ธฐ์กด ๊ธฐ๋ฅ์ด ๋์ค์ ๊ตฌํํ ์์ ํด๋์ค์ ๊ธฐ๋ฅ๊ณผ ์คํ๋ ค ์ถฉ๋ํ ์ ์๋ค. → ์ปดํฌ๋ํธ ํจํด์ ์ฌ์ฉํด์ผ ํจ ์ปดํฌ๋ํธ ํจํด Component Pattern ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ง ๋ถํ์ ์กฐ๋ฆฝํ์ฌ ์์ฑ๋ ์ค๋ธ์ ํธ๋ฅผ ๋ง๋๋ ๋ฐฉ์ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ง ์ปดํฌ๋ํธ๋ฅผ ๋น ๊ป๋ฐ๊ธฐ์ธ ๊ฒ์ ์ค๋ธ์ ํธ์ ์กฐ๋ฆฝํ๋ ๋ฐฉ์ - ์ ์ฐํ ์ฌ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค. -..
[Unity] ๋ฌผ์ฒด ์์ง์ด๊ธฐ
โป 2D์ 3D ์ปดํฌ๋ํธ๋ฅผ ๋ฃ๊ฑฐ๋ 3D์ 2D ์ปดํฌ๋ํธ๋ฅผ ๋ฃ์ผ๋ฉด ์๋์ด ์๋๋ค. 1. ์๋ ฅ์ ๋ฐ๊พธ์ด ๋ฌผ์ฒด ์์ง์ด๊ธฐ Rigidbody rigid; void Start() { rigid = GetComponent(); rigid.velocity = Vector3.right; // ์ค๋ฅธ์ชฝ์ผ๋ก ์๋ ฅ์ ๋ฐ์ } public class MyBall : MonoBehaviour { Rigidbody rigid; void Start() { rigid = GetComponent(); } void FixedUpdate() { rigid.velocity = new Vector3(2, 4, 3); // ๋ฒกํฐ๋ฅผ ์์ฑํ์ฌ ์๋ ฅ ์ง์ ๊ฐ๋ฅ } } - velocity: ํ์ฌ ์ด๋ ์๋ โป RigidBody ๊ด๋ จ ์ฝ๋๋ FixedUp..
[Unity] ๋ฌผ์ฒด ํ์ ์์
Mesh, Material, Collider, RigidBody ํ์ฑ/๋ง์ฐฐ๋ ฅ์ ์ถ๊ฐํ๊ณ ์ถ๋ค๋ฉด? → Physics Material ์ถ๊ฐ [Unity] ๋ฌผ๋ฆฌ ์ฌ์ง ๋ง๋ค๊ธฐ - physics material: ํ์ฑ๊ณผ ๋ง์ฐฐ์ ๋ค๋ฃจ๋ ๋ฌผ๋ฆฌ์ ์ธ ์ฌ์ง - physics material>Bounciness: ํ์ฑ๋ ฅ, ๋์์๋ก ๋ง์ด ํ์ด์ค๋ฅธ๋ค - physics material>Bounce Combine: ๋ค์ ํ์ฑ์ ๊ณ์ฐํ๋ ๋ฐฉ์ (๋ณดํต Maximum ์ฌ.. asxpyn.tistory.com
[Unity] ๋ฌผ๋ฆฌ ์ฌ์ง ๋ง๋ค๊ธฐ
- physics material: ํ์ฑ๊ณผ ๋ง์ฐฐ์ ๋ค๋ฃจ๋ ๋ฌผ๋ฆฌ์ ์ธ ์ฌ์ง - physics material>Bounciness: ํ์ฑ๋ ฅ, ๋์์๋ก ๋ง์ด ํ์ด์ค๋ฅธ๋ค - physics material>Bounce Combine: ๋ค์ ํ์ฑ์ ๊ณ์ฐํ๋ ๋ฐฉ์ (๋ณดํต Maximum ์ฌ์ฉ) - physics material>Friction: ๋ง์ฐฐ๋ ฅ, ๋ฎ์ ์๋ก ๋ง์ด ๋ฏธ๋๋ฌ์ง - physics material>Friction Combine: ๋ค์ ๋ง์ฐฐ๋ ฅ์ ๊ณ์ฐํ๋ ๋ฐฉ์. ex. (0,0,0,Minimum) ์ฌ์ฉ์ ๋นํ ์ ๋๋ฉ์ด์ ์ฒ๋ผ ์ญ ๋ฏธ๋๋ฌ์ง โป ์ ๋๋ฉ์ด์ ์ค๋ฌ์ด ๋๋์ ๋ด๊ณ ์ถ์ ๋, Friction Combine์ ์ต์๋ก, Bounciness ํฉ์ฐ์ ์ต๋๋ก
[Unity] ๋ฌผ์ฒด์ ์ฌ์ง ๋ง๋ค์ด์ฃผ๊ธฐ
- Material: ๋ฌผ์ฒด์ ํ๋ฉด ์ฌ์ง์ ๊ฒฐ์ ํ๋ ์ปดํฌ๋ํธ - Material > Metalic: ๊ธ์ ์ฌ์ง ์์น - Material > Smoothness: ๋น ๋ฐ์ฌ ์์น ์ง์ ๊ทธ๋ฆฐ ๊ทธ๋ฆผ์ด๋ ์๋ ์๋ ๊ทธ๋ฆผ์ Assets ํด๋์ ๋ฃ์ด ๋ฌผ์ฒด์ ์ฌ์ง์ ๋ฃ์ด์ค ์๋ ์๋ค. (์ง์ ๋ฌผ์ฒด ์์ ๋ฃ์ด์ฃผ๊ฑฐ๋ Material > Albedo ์ผ์ชฝ์ ์์ ์ ์ฌ๊ฐํ ์๋ฆฌ์ ๋ฃ์ด์ฃผ๋ฉด ์ ์ฉ ๊ฐ๋ฅ) - Material > Tiling: ํ ์ค์ณ ๋ฐ๋ณต ํ์ผ ๊ฐ์ - Material > Emission: ํ ์ค์ณ ๋ฐ๊ด(๋ฐ๊ธฐ) ์กฐ์ (๋น์ด ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋์ค๋ ๊ฒ์ X Only ์ฌ์ง ๋๋, ๋น์ ๋ด์ฃผ๋ ๊ฑด Light ๋ฐ๋ก ์์) ๋ฌผ์ฒด ํฌ๋ช ๋ ์กฐ์ ํ๋ ๋ฐฉ๋ฒ - Rendering Mode > Transparent ์ ํ ํ, Albedo ์์..
[Unity] Rigidbody Component / Collider Component
[Rigidbody Component] - Add Component๋ฅผ ๋๋ฌ Rigidbody Component(๋ฌผ๋ฆฌ ํจ๊ณผ๋ฅผ ๋ฐ๊ธฐ ์ํ ์ปดํฌ๋ํธ)๋ฅผ ์ถ๊ฐํ๋ค. -> ๋ฌผ์ฒด๊ฐ ์ค๋ ฅ์ ์ํฅ์ ๋ฐ๊ฒ ๋๋ค. โป ์ด ๋ Sphere Collider๋ฅผ ์ ๊ฑฐํ ๊ฒฝ์ฐ, ์ค๋ ฅ์ ์ํฅ์ ๋ฐ๊ธดํ์ง๋ง ๋ค๋ฅธ ๋ฌผ์ฒด์์ ์ถฉ๋์ ์ด๋ค์ง์ง ์๊ธฐ์ ๊ตฌ๊ฐ ํ๋ฉด์ ํต๊ณผํด๋ฒ๋ฆฐ๋ค. - RigidBody > Mass ์์น๊ฐ ๋์ ์๋ก ์ถฉ๋์ด ๋ฌด๊ฑฐ์์ง๋ค. - RigidBody > Use Gravity๋ก ์ค๋ ฅ์ ๋ฐ๋์ง๋ฅผ ๊ฒฐ์ ํ๋ค. - RigidBody > Is Kinematic ์ ์ฒดํฌ ์ ์ธ๋ถ ๋ฌผ๋ฆฌ ํจ๊ณผ๋ฅผ ๋ฌด์ํ๋ค. (๋ค๋ฅธ ๋ฌผ์ฒด์์ ์ถฉ๋์ด ์ผ์ด๋๋ ์๋ฌด ์ผ X) → ์์ง์ด๋ ์ฅ์ ๋ฌผ์ ๋ง๋ค ๋ ์ ์ฉํจ [Sphere Collider] - Sphere C..