[Unity] C# ํด๋ž˜์Šค์™€ ์˜ค๋ธŒ์ ํŠธ
๐ŸŽฎ Unity

[Unity] C# ํด๋ž˜์Šค์™€ ์˜ค๋ธŒ์ ํŠธ

ํด๋ž˜์Šค

์ถ”์ƒํ™” ํ•  ๋Œ€์ƒ๊ณผ ๊ด€๋ จ๋œ ์ฝ”๋“œ(๋ณ€์ˆ˜์™€ ๋ฉ”์†Œ๋“œ)๋ฅผ ๋ฌถ๋Š” ํ‹€

 

ํด๋ž˜์Šค์˜ ํ•„๋“œ = ํด๋ž˜์Šค์˜ ๋ฉค๋ฒ„ ์ค‘์—์„œ ๋ณ€์ˆ˜

 

์˜ค๋ธŒ์ ํŠธ

 

- ์›๋ณธ ํด๋ž˜์Šค์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์˜ค๋ธŒ์ ํŠธ ์ƒ์„ฑ ๊ฐ€๋Šฅ

- ์˜ค๋ธŒ์ ํŠธ๋Š” ์„œ๋กœ ๋…๋ฆฝ์ ์ด๋ฉฐ ๊ตฌ๋ณ„ ๊ฐ€๋Šฅ 

 

์ฐธ์กฐ(reference) ํƒ€์ž…

 

- C#์—์„œ ํด๋ž˜์Šค๋กœ ๋งŒ๋“  ๋ณ€์ˆ˜๋Š” ์ฐธ์กฐ ํƒ€์ž…

- ์ฐธ์กฐ ํƒ€์ž…์˜ ๋ณ€์ˆ˜๋Š” ์‹ค์ฒดํ™” ๋œ ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ์•„๋‹˜

- ์ฐธ์กฐ ํƒ€์ž…์˜ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋Š” ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ์ƒ์„ฑ๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— new๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ƒ์„ฑ

- ์ฐธ์กฐ ํƒ€์ž…์€ ' ํ•œ ์‚ฌ๋žŒ์„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ณ„๋ช…์œผ๋กœ ๋ถ€๋ฅด๋Š” ์ƒํ™ฉ'์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ.

- ์ฆ‰, ์˜ค๋ธŒ์ ํŠธ๋Š” ํ•˜๋‚˜์ง€๋งŒ ๊ทธ๊ฒƒ์„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ฐธ์กฐ ๋ณ€์ˆ˜๊ฐ€ ๋™์‹œ์— ๊ฐ€๋ฆฌํ‚ฌ ์ˆ˜ ์žˆ์Œ.

 

๊ฐ’(value) ํƒ€์ž…

 

- float, int, string ๋“ฑ์˜ C# ๋‚ด์žฅ๋ณ€์ˆ˜๋Š” ์ฐธ์กฐ๋กœ ๋™์ž‘ X

- ๊ฐ’ ํƒ€์ž…์˜ ๋ณ€์ˆ˜๋Š” ํ•ด๋‹น ๋ณ€์ˆ˜ ๊ณต๊ฐ„์— ๊ฐ’ ์ž์ฒด๋ฅผ ์ €์žฅ

 

๋ณ€์ˆ˜๋กœ ์ปดํฌ๋„ŒํŠธ ์‚ฌ์šฉํ•˜๊ธฐ

 

 

๋ณ€์ˆ˜๋กœ Rigidbody ์ปดํฌ๋„ŒํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์˜ˆ์ œ

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Jumper : MonoBehaviour
{
    public Rigidbody myRigidbody;
    void Start()
    {
        myRigidbody.AddForce(0,500,0);
    }

}

 

Cube ์˜ค๋ธŒ์ ํŠธ์— Rigidbody Component๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ ,

Jumper ์Šคํฌ๋ฆฝํŠธ์˜ ๋ณ€์ˆ˜ myRigidbody์— Cube ์˜ค๋ธŒ์ ํŠธ์— ์ถ”๊ฐ€ํ•œ Rigidbody ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.