-
Unity의 Namespace, Class를 알아보자쓰리디/Unity, 유니티 2025. 3. 14. 15:47반응형
Unity의 기본개념
Namespace, Class를 알아봅시다.
NameSpace, Class
Unity에서 NameSpace, Class 개념을 많이 마주하게 됩니다.
한번 그 차이를 확실히 알아봅시다!
Namesapce
NameSpace의 개념
Namespace는 코드를 정리하는 폴더와 같은 역할을 합니다.
여러 기능을 하나의 폴더로 정리하여, 충돌 방지, 관리를 용이하게 해 줍니다.using UnityEngine; using UnityEngine.InputSystem;
이렇듯 상단에 뜨는 코드들을 많이 봐왔을 텐데요.
Unity에서 기본적으로 제공하는 API를 활용하기 위해서는 특정 Namespce를 가져와야 한답니다.
UnityEngine : 게임 Object, Physics, Ui 등 핵심기능
UnityEngine.SceneManagement : Scene 관리 기능
UnityEngine.InputSystem : Input System들을 관리
Input Action을 가져와서 활용하려면, Unity Namespace는
UnityEngine.InputSystem을 활용해야겠습니다.
Class
Class의 개념
Class는 Object를 정의하는 템플릿입니다.
Unity에서 Monobehaviour를 상속받아 Gameobject와 상호작용하는 Script의 기본단위로 사용됩니다.
using UnityEngine; public class MBH_PlayerControl : MonoBehaviour { [SerializeField] float myspeed = 2.0f; void Start() { Debug.Log(" Let's GODORI "); } void Update() { transform.Translate(Vector3.up*Time.deltaTime); } }
위 코드에서 MBH_PlyaerControl이라는 Class를 만들고, Monobehaviour를 상속받아 Unity Method를 사용할 수 있습니다.
Monobehaviour Method
Start() : 게임 시작 시 한번 실행
Update() : 매 Frame마다 실행
FixedUpdate() : Physics를 위한 Frame마다의 실행
OnTriggerEnter(Collider other) : 다른 Object와 충돌 시 실행
Namespace와 Class의 관계
Class는 Namespace안에 포함된다. 모 모든 Class는 특정 Namespace에 포함될 수 있습니다.
만약 새로운 Class를 만들려면, Namespace를 직접 정의하여 충돌을 방지할 수 있습니다.
이렇듯 AttackGame이라는 Namespace내에, Enemyattack class를 정의하면,
다른 Project의 Class와 충돌할 가능성을 줄일 수 있습니다.=> NameSpace는 코드 그룹화, 정리하고, API를 가져 올때 사용됩니다.
=> Class는 Unity에서 Object의 동작을 정의하는 기본 단위입니다.
남만 알고 있는 쓰리디에 대한 정보를
속이 쓰리지 않게,
소기쓰리디반응형'쓰리디 > Unity, 유니티' 카테고리의 다른 글
Unity InputAction을 활용한 이동 (0) 2025.03.25 Unity에서 Input을 넣는 세가지 방법 (0) 2025.03.18