# 유니티에서의 C# 프로그래밍 1
#1 변수 개념 잡기
변수는 값을 저장하는 장소이다. 변수에 저장한 값은 게임 도중 언제든지 접근하고 수정할 수 있다. 변수를 사용하는 이유는 원하는 값을 기억하고 다시 사용하기 위해서이다. 변수를 사용하기 위해서는 변수를 선언해 줘야 한다.
int num;
위 코드는 정수 타입의 값을 다루는 'num' 변수를 선언한 것이다. int는 정수(integer)의 약자이다.
int num = 10;
위와 같이 'num' 변수에 초기값(10)을 할당해 줄 수도 있다. 나는 변수 이름은 편하게 보기 위해 'num'을 사용한 것이고 각자 사용용도를 생각해서 마음껏 설정해주면 된다.
변수의 타입에는 int 뿐만 아니라 실수를 저장하는 float, 참과 거짓을 저장하는 bool, 문자열을 저장하는 srting 등 다양하게 있다.
#2 함수 개념 잡기
프로그래밍에서 함수는 미리 정해진 동작을 수행하는 코드 묶음이다. 함수를 사용하면 같은 동작을 수행하는 코드를 여러 번 작성할 필요가 없다.
int num1 = 10;
int num2 = 12;
int plus = num1 + num2;
예를 들어 위와 같은 코드를 여러 번 사용한다고 생각해보면, 계속 저 코드를 여러 번 사용해야 하고 더하는 숫자가 계속해서 달라진다면 번거로울 뿐만 아니라 코드가 복잡하게 될 것이다. 이런 불편함을 줄이고, 코드를 깔끔하게 작성할 수 있는 방법이 있다.
int Addnum (int num1, int num2){
return num1 + numb2;
}
위와 같은 함수를 작성해 둔다면 아래처럼 굳이 코드를 반복해서 작성할 필요 없이, Addnum 함수를 불러와서 사용할 수 있다.
void print(){
print(Addnum(7,8));
print(Addnum(1,7));
print(Addnum(2,4));
}
C#에서는 함수를 '메서드(method)'라고 부른다.
#3 첫 스크립트 작성하기
C# 프로그래밍을 시작하기 전에 연습용 프로젝트를 생성해주었다. 연습용 프로젝트를 만들어 주었다면 C#스크립트를 만들어주어야 한다. 만드는 방법은 아래 사진을 참고하면 된다.
생성된 HelloCode 스크립트 파일을 더블클릭하면 비쥬얼 스튜디오에서 코드가 열리게 된다.
처음 만든 HelloCode 스크립트에는 위와 같이 자동으로 생성되어 있는 코드가 있다. 전체 스크립트를 보면 using, class, Start, Update 총 4 부분으로 구성된 것을 알 수 있다.
먼저 using은 using 키워드를 이용하여 사용할 라이브러리의 경로를 지정하면 해당 라이브러리에 들어 있는 코드를 가져와서 사용할 수 있다. using 뒤의 경로를 우리는 '네임스페이스'라고 한다. C#과 유니티는 개발에 필요한 여러 라이브러리를 네임스페이스로 제공하고 있고, 예제 코드의 using UnityEngine;은 UnityEngine 네임스페이스에 존재하는 코드를 가져와서 사용한다는 의미이다.
다음은 Start() 메서드이다. Start()메서드는 코드 실행이 시작되는 시발점을 제공한다. 유니티는 상황에 맞추어 자동으로 실행되는 메서드인 유니티 이벤트 메서드가 있다. 그중 위의 Start() 메서드가 대표적이다. Start() 메서드는 게임이 실행될 때 자동으로 한번 실행되기 때문에 게임 시작과 함께 실행될 코드를 위 메서드 안에 넣으면 된다.
프로그래밍을 배운 사람이라면 누구나 알법한 코드를 작성해보자. 바로 "Hello World!"라는 문장을 화면에 출력하는 코드를 작성할 것이다. 위에서 만든 HelloCode 스크립트를 아래와 같이 수정해보자.
위의 사진처럼 코드를 작성하였다면 유니티 에디터 창으로 돌아가 보자. 스크립트 작성을 다했다고 코드가 동작하는 것은 아니다. 이 상태로는 HelloCode 스크립트가 단순한 텍스트 파일이기 때문인데, 동작을 하고자 한다면 '게임 월드에 존재하는 오브젝트'로 만들어야 한다. 하는 방법은 아래의 사진을 확인하자.
위처럼 게임오브젝트를 만들어준 뒤 Project에서 아까 만든 HelloCode를 드래그하여 GameObject로 드래그해주면 inspector 창에서 GameObject에 Hellocode 스크립트가 추가된 것을 확인할 수 있다.
이렇게 됐다면 유니티 엔진 상단에 있는 플레이 버튼을 클릭하여 씬을 시작한 뒤 콘솔 창을 확인해보자.
위의 사진처럼 Hello World!가 출력되었다면 성공한 것이다.
#MEMO
기존에 배웠던 언어들이 있어 C#을 이해하는데 아직까진 큰 어려움이 없었지만 앞으로 더 복잡한 코드들이 나올 것을 알기에 두렵긴 하지만 책에서 잘 설명해주고 있고, 레트로의 유튜브 영상에도 책의 내용을 설명해주는 영상들이 많이 있어 참고하여 공부하면 이해하기 쉬울 것 같다. 오늘도 수고했고 앞으로도 파이팅!
