반응형

 

오브젝트를 만들어봤으니 움직여보고 싶다.

 

1. 화면 아래에 있는 Project의 영역에 오른클릭하고

Create > C# Script를 선택한다.

(C# : 프로그래밍 언어. 게임개발할 때 자주 사용된다.)

 

 

2. 그러면 이렇게 스크립트 파일이 생성되는데,

이 파일을 더블클릭한다.

 

3. 그러면 이렇게 Visual Studio가 자동으로 실행되고

최처에는 저렇게 Class안에 Start와 Update라는 메서드 두개가 있다.

Start는 한 번 실행되고 Update는 60프레임?으로 실행된다고 한다.

 

*클레스와 메서드(함수)의 개념은 프로그래밍의 지식인데,

간단하게 말하자면 클레스는 껍데기고 메서드는 기능이다.

해당 부분에 대한 지식은 C# 프로그래밍 언어를 배우거나

다른 프로그래밍 언어를 배운다면 이해하기 어렵지 않다.

 

 

4. 생성된 스크립트를 드레그해서 원하는 오브젝트에

적용시켜 준다.

만약 inspector에 아무것도 안보인다면 Scene에서 적용시킬 오브젝트를

클릭하면 된다.

 

5. 아래와 같이 작성하면 화면에서 움직인다.

(설명은 캡쳐 화면 아래)

 

Vector3 move;

-> Vector3 : 백터의 형태? 라고 볼 수 있다. Vector2와 3가 있는데 2D냐 3D냐에 따라 갈린다.

-> move : 아무 이름이나 넣어도 상관x. 변수의 이름이다.

(변수 : 변하는 수. Vector3라는 타입의 값이 변할건데 그 변할 얘의 이름이 move라는 의미)

 

if (Input.GetKeyDown(KeyCode.LeftArrow) || Input.GetKeyDown(KeyCode.RightArrow))

-> if : 만약에. 말 그대로 만약에를 뜻하며, 뒤에 나오는 괄호안의 조건이 충족(true)가 된다면 뒤의 코드를 실행하라는 조건문이다.

-> Input : Unity자체가 갖고 있는 클레스라고 알고 있다. 사용자 입력에 대한 것을 감지하는 기능들이 들어가 있음.

-> GetKeyDown : 키를 누르는 것을 인지할 거고 뒤에 괄호 안에 들어가는 것에 대해 감지할 것.

-> KeyCode : 말그대로 키의 코드.

-> LeftArrow : 왼쪽 화살표 키

-> || : OR조건을 나타낸다. 앞에거 이거나 뒤에거 면 true.

 

Debug.Log(Input.GetAxis("Horizontal"));

-> Debug : 디버그. 아마 알음알음 들어봤을 것이다. 프로그래밍 과정에서 문제가 되는 부분을 찾거나 값을 확인하는 등을 뜻한다. 여기서는 디버그관련 기능을 갖고 있는 클레스라고 보여진다.

-> Log : 기록이다. Console이라는 곳에 괄호안의 내용을 표시해주는데, 사용자들은 보통 볼 수 없다.

-> GetAxis : 괄호안에 있는 것의 값을 가지고 와서 반환해준다. 괄호안의 문자열은 Input Manager에서 관리할 수 있다.

*참고/Input Manager보는 방법 및 설정 법

gwer.tistory.com/17

 

[Unity] 유니티에서 Input Manager보는 방법

상, 하, 좌, 우 화살표키를 입력하면 그 방향대로 움직이는 스크립트를 짜볼 것이다. 그 전에 Input을 사용할 때 보고 하면 좋은 InputManager을 세팅해보자. 1. Edit > Project Settings... 클릭 2. Input Manag..

gwer.tistory.com

 

 move = new Vector3(Input.GetAxis("Horizontal"), 0, 0);

-> move = : move란 변수에 뒤에 오는 것을 대입해줄거라는 뜻.

-> new : 프로그래밍언어를 배웠다면 어렵지 않게 이해가능하다. Vector3라는 녀석은 앞서서 move라는 이름의 변수로 활용할거라고 선언(컴퓨터한테 말해뒀음)은 했지만 실제로 값을 넣지는 않았다. 그래서 '실제'값을 넣기위해서는 '실제'의 데이터가 필요한데 new를 사용함으로써 Vector3라는 형태의 데이터를 만들겠다는 뜻이다.

-> Vector3(x좌표, y좌표, z좌표) : 이 Vector3는 기본적으로 값을 3개 갖는데 그 각각의 값이 x, y, z좌표이다. 그래서 Input.GetAxis("Horizontal")을 x좌표가 들어갈 자리에 넣어주고 있다. 이렇게 하면 키보드 입력에 따라 GetAxis를 통해서 값을 받아오고 move에 계속 대입하게 된다.

*아래와 같이 해당 인스턴스(클레스가 실체화 된 것)위에 마우스를 올려놓고 있으면 이렇게 설명이 뜬다.

*인스턴스 개념은 이해못해도 쓰는데 지장은 없으나, 이해하면 편-안

*float는 소수

*오버로드는 여기서 이해 못해도 상관x

 

transform.Translate(move);

-> transform : 유니티에서 제공해주는 기능이라고 볼 수 있는데, 오브젝트 자체를 가르키고 그 오브젝트의 움직임을 관할한다.

-> Translate(move) : 움직이는 기능. 괄호안에는 Vector타입의 데이터를 넣어줘야 하며, move라는 Vector만큼 움직이게 된다.

반응형
반응형

 

유니티에서 첫 프로젝트를 생성하고 난 후

오브젝트를 생성하려 하면 어안이 벙벙하다.

 

하지만 알고보면 매우 간단하다.

 

1. 왼쪽에 붙어있는 Hierarchy 화면에 오른클릭을 한 후

원하는 오브젝트의 형태를 선택해서 생성한다.

 

 

2. 덩그러니 생성

 

3. 위치가 마음에 안들거나 초기 개발에는

보통 위치값을 0, 0, 0으로 줄 수 있다.

오른쪽에 인스펙터(inspector)에서 Transform에 Position값을

수정해준다.

 

 

반응형
반응형

 

상, 하, 좌, 우 화살표키를 입력하면 그 방향대로 움직이는

스크립트를 짜볼 것이다.

그 전에 Input을 사용할 때 보고 하면 좋은

InputManager을 세팅해보자.

 

1. Edit > Project Settings... 클릭

 

2. Input Manager을 발견할 수 있다.

그런데 난 계속 보고 쓰고 싶어서 내 유니티 창에 넣을 것이다.

 

 

3. 탭을 드레그해서 갖다가 붙힌다.

위치는 아무곳이나 상관없지만 개인적으로는 Hierarchy옆에 붙혔다.

 

 

4. 그럼 이렇게 찰싹 붙어있는데 화살표를 눌러서 값들을 봐도

수정할 수 있는 칸이 안나와서 어리둥절 했다.

 

 

5. 간단하게 하이라키 옆에 붙어있는 경계를 잡고 오른쪽으로

드레그해서 넓혀주면 값이 보인다.

 

 

반응형
반응형

 

심심해서 Unity를 다시 끄적이다가

강좌를 보고 따라해보는데 Input이 자동완성이 안된다.

(아마 바로 갖고있는것으로 보아 Unity내부 자원인듯)

상단에 using UnityEngine이 있는데도 못 찾아서 빡쳐서 찾아보았다.

 

우선 실행하고 있는 Unity와 Visual Studio를 종료 한 후 아래의 과정을 따라해보자.

 

1. 윈도우의 검색에서 Visual Studio Installer을 찾아서 클릭

 

2. 수정 버튼 클릭

 

 

3. 워크로드에서 설치 세부 정보에 Unity를 사용한 게임 개발이 없으면

게임에 Unity를 사용한 게임 개발을 체크 한 후 수정버튼을 누르면

다운로드가 시작됨

 

 

4. 다운로드가 완료된 후 다시 Unity를 실행해서 Visual Studio를 사용하면

자동완성이 잘 된다.

반응형
반응형

 

유니티 인터페이스, 단축키 (Hotkey)

 


 

*단축키

 

1. 핸드툴

 

 

- 유니티에서 오브젝트의 위치나 크기 등을 조절하기 위한 핸드툴. 왼쪽부터 Q, W, E, R, T, Y까지 단축키로 사용할 수 있다.

Q : Hand Tool. 오브젝트를 잡고 움직일 수 있다.

W : Move Tool. x, y, z 세가지 축이 나타나며, 원하는 축을 이용해 오브젝트의 위치를 옮길 수 있다.

E : Rotate Tool. 오브젝트를 회전시킬 수 있다.

R : Scale Tool. 오브젝트의 크기를 x, y, z축을 이용하여 조절할 수 있다.

T : Rect Tool. 오브젝트의 크기를 사각형 기준으로 조절할 수 있다.

Y : Move, Rotate or Scale selected objects. 다용도 툴. 위치, 회전, 크기 변경이 가능하다.

 

2. 게임 플레이, 멈춤

 

 

- 게임을 플레이 해보기 위한 버튼들. 왼쪽부터 Ctrl + P 재생, Ctrl + Shift + P 일시정지, Ctrl + Alt + P 단계 실행 이다. 게임재생 중 멈춤은 다시 Ctrl + P를 눌러주면 된다.

 

*인터페이스

 

1.Hierarchy / 하이어라키 / 하이어라키 뷰

 

 

- 현재 씬에 사용되는 게임 오브젝트를 관리하는 뷰. 새로운 게임 오브젝트를 생성/삭제 할 수 있다. 계층 구조를 설정할 수 있다.

 

2. Inspecter / 인스펙터 / 인스펙터 뷰

 

 

- 현재 선택한 게임 오브젝트 혹은 애셋의 정보를 보여주는 뷰이다. 컴포넌트의 추가 / 삭제 / 변경이 가능하다. 또한, 게임 오브젝트의 이름, 태그, 레이어 변경도 가능하다.

 

3. Scene / 씬 / 씬 뷰

 

 

- 게임화면을 만들기위해 실질적으로 제작하는 공간. 게임의 오브젝트들을 배치할 수 있다.

 

4. Game / 게임 / 게임 뷰

 

 

- 현재 씬이 실제로 작동하는 모습을 보여준다. 다양한 해상도로 테스트 가능.

반응형

+ Recent posts