모바일 디펜스 게임으로 배우는 Unity 기초 강좌의 맛보기 강의입니다.
이번 시간에는 object와 component의 개념에 대해서 알아보도록 할게요. unity의 가장 핵심적이면서도 중요한 개념이기 때문에 반드시 집중해주셔야 해요. unity에서 object란 monster, 캐릭터, 건물 등 게임 내에서 사용되는 다양한 사물을 의미합니다. 놀랍게도 게임 화면에 보이는 것, 들리는 것들은 전부 object라고 할 수 있어요. object는 한국어로 객체라고도 부릅니다. 반면에 component는 이러한 object를 구성하는 기능을 의미합니다. 예를 들어 캐릭터가 공격하거나 이동하거나 하는 등의 기능은 모두 component에 해당한다고 할 수 있어요. 또한 특정한 object의 위치, 상태 정보 등도 모두 component에 해당해요. 다시 말해 object 안에 여러 개의 component가 포함되는 것입니다. 이러한 측면에서 object가 마치 component를 담는 그릇과도 같은 역할을 수행한다고 하여 container라고도 부릅니다. 예를 들어 드래곤 캐릭터 object가 있을 때 드래곤이 불을 뿜는 동작은 component에 속해요. 근데 드래곤이 가만히 불을 뿜을까요? 이리저리 왔다 갔다 움직이는 기능도 존재할 거예요. 그러한 기능도 마찬가지로 component를 이용해서 처리하는 것입니다. 그래서 사실 object 자체는 껍데기에 비유할 수 있고요. 그러한 껍데기의 내용물을 채우는 내용물이 바로 component라고 생각을 하시면 이해하기 쉬우실 거예요. 비슷한 예시로 사람 object가 있을 때 달리는 기능도 당연히 component가 되겠고요. 건물 object가 있을 때 건물이 다른 캐릭터로부터 공격을 받아 파괴 당하는 등의 기능도 component에 속하겠죠. 이제 unity를 실행해서 component와 object의 개념에 대해서 확실히 이해해 보는 시간을 가져볼게요. unity에 들어가시면 Projects 탭에서 최근 작업한 프로젝트의 목록을 살펴볼 수 있습니다. 독자 여러분은 새로운 프로젝트를 만들거나 따라 하실 필요는 없고요. 제가 만들어 놓은 프로젝트를 구경하면 됩니다. 저는 사전에 Practice 1-1이라는 프로젝트를 만들어 놓았는데요. 한번 프로젝트를 열어보도록 할게요. 프로젝트를 열어보았더니 중간에 Scene이라는 화면이 등장하고 하나의 캐릭터가 보이는데요. 아까 말씀드렸듯이 화면에 보이는 것들은 다 object라고 했었죠? 네, 맞습니다. 바로 이 몬스터 캐릭터가 object라고 할 수 있는 거예요. 이렇게 몬스터와 같이 다양하게 화면 안에서 보이는 것들을 object라고 생각하시면 되고요. 한 번 이렇게 object를 누르면 오른쪽에 Transform이라는 것과 Sprite Renderer라는 것이 보이는 것을 알 수 있는데요. 대략 보니까 특정한 object의 위치, 회전, 크기 등을 설정할 수 있다는 것이 직감적으로 느껴지실 건데요. 바로 이렇게 Transform, Sprite Renderer와 같은 것들이 component라고 할 수 있습니다. 다시 말해 하나의 object가 가지고 있는 모든 기능을 표현하는 기능을 수행하는 거예요. 이번 시간에는 이렇게 unity에서 가장 중요한 개념인 object와 component에 관해서 공부하고 이해하는 시간을 가져보았습니다. 이를 직접 다루어 보는 것은 추후의 강의에서 차근차근 해보도록 할 거니까요. 지금은 이렇게 예제를 보면서 개념만 잡는 것으로 충분합니다.
