GameObject

    [Unreal] Actor 와 ActorComponent 의 개념 (vs. Unity 에서의 GameObject 와 비교)

    Actor 와 ActorComponent 유니티에서는 게임 오브젝트 아래에 게임 오브젝트를 넣는 식으로 Hierarchy 를 만들어낼 수 있다. 하지만 언리얼은 그런 식으로 동작하지 않는다. 유니티에서는 항공기가 있다고 했을 때, 프리팹에 각종 게임 오브젝트를 하위에 넣어 조합하는 방식으로 해당 오브젝트를 제작할 수 있다. 그런데 언리얼에서 Actor 는 Bucket 같은 개념으로, 다양한 액터 컴포넌트를 담고 있다. 즉, 언리얼은 Bucket 안에 다른 Bucket 을 넣는 방식으로 오브젝트를 생성하지 않는다. 액터 컴포넌트는 재사용가능한 기능을 정의하는 컴포넌트에 대한 베이스 클래스로 충돌, 메시, 월드 이동, 소리 재생, 빛과 명암 등의 다양한 기능을 지원한다. 언리얼에서는 트랜스폼을 가진 액터 컴..

    [Unity] 게임 오브젝트 컴포넌트 패턴 (GameObject) C# 구현

    아래는 간단하게 구현해본 컴포넌트 패턴이다, gameObject라는 매개체 즉 자기 자신을 통해 해당 오브젝트가 존재하는지 확인 및 추가 기능. using System; using System.Collections.Generic; namespace ConsoleApplication1 { public class GameObject { // 컴포넌트 리스트 public List lstComp = new List(); public T GetComponent() where T : Component { // 리스트가 해당 오브젝트를 가지고 있을 시 if (lstComp.Contains(typeof(T))) { Type type = lstComp[lstComp.IndexOf(typeof(T))]; T comp = ..