목록Programming/Unity (19)
DNF LOVE
우선 Object의 움직임을 다루는 것을 알기 전에 게임을 개발하기 위해 우리가 필요한 컴퓨터 사이언스 개념 '컴퓨터 그래픽스'이다. 컴퓨터 그래픽스는 게임 개발의 기초 지식이다. 그래픽스를 통해 모양과 색을 수치로 변화하여 디지털로 나타내는 논리적 표현 방법이다. 확대, 축소, 회전 등의 변환이 가능하고 색의 변경이 쉽고, 3차원 공간에서 자유자재로 이동하면서 다각도에서도 볼 수 있다. 광원의 위치에서 물체 각 면의 밝기를 나타낼 수 있고, 표면의 재질감과 투명감 등 다양하고 섬세한 묘사가 가능하다. 이렇듯 시간과 공간을 자유롭게 조작할 수 있게 한다. 사실 나도 그래픽스를 배우고 있는 학생의 입장이기 때문에 자세한 설명 하기는 내게 어렵지만, 이 Object가 움직이는 것에 대한 Unity의 기준점들..
[위치 이동] 사용자 입력을 받는 기능이 여러개이듯, Player를 이동시키는 데에도 여러가지 방법이 존재한다. 이제 그 방법을 알아보도록 하자. Translate 컴포넌트가 있다. 이는 Object의 position, Rotation, Scale을 품고 있는 컴포넌트이다. 이것을 스크립트를 통해 변경할 수 있으며 이를 통해 Object가 이동이 될 수도 있고 방향이 바뀌거나 Scale이 변화될 수 있다. 1. Trasnform의 Position에 직접 접근하여 설정 tranform.position은 오브젝트의 현 위치와 무관하게 Global로 원하는 위치로 이동시키는 방법이다. 상대적 위치가 아닌 절대적 위치라는 뜻이다. tranform.position과 Vector3를 사용하게 되는데 Vector3는..
우선, Player에 붙여있는 하위 컴포넌트들을 받아오도록 하자. 컴포넌트를 받아오기 위해서는 해당 Object에 붙여 있는 스크립트 내 Start, Awake 함수 등 오브젝트가 활성화 되었을 때 1번만 받아와도 된다. 우선 변수들을 PlayerControler 스크립트에 선언하도록 하자. private와 public은 접근 제한자인데 public을 사용하면 해당 인스펙터창에 보여지고, private를 사용하면 인스펙터창에 숨겨져 보인다. public은 인스펙터창에서도 충분히 설정할 수 있는데 이 리지드바디는 어떻게 받아올까? 그것은 바로 활성 함수들을 통해 충분히 받아올 수 있다. Start함수에 Rigidbody rb는 해당 오브젝트(this)의 컴포넌트를 받아오겠다(GetComponent 함수 사..