반응형

프로그래밍 개요

1. Unity C# Script

스크립트(Script)의 역할

  • 스크립트가 컴포넌트로 종속된 게임 오브젝트에 주어지는 각종 명령 제어
  • 게임 내에 사용되는 여러 오브젝트들을 생성, 삭제 및 관리
  • 게임 전체 또는 일부를 관리하는 게임 내 시스템 구현

스크립트 생성

Project View - ‘+’ - C# Script

파일을 생성한 직후에는 아래 그림과 같은 상태로 이때 파일 이름을 수정하면 스크립트 파일 내부의 클래스 이름이 파일 이름과 동일하게 변경된다 이후에 이름을 변경할 때는 클래스 이름과 파일 이름을 직접 수정해야 한다.

스크립트 파일을 더블 클릭하면 비주얼스튜디오가 열리고 Visual Studio에서 코드를 수정할 수 있다.

//이름공간(namespace)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

//클래스 이름 : 부모 클래스 이름
public class NewBehaviourScript : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

*이름 공간 (namespace)  : 특정한 규칙으로 묶여 있는 여러 클래스, 구조체를 담고 있다.

*MonoBehaviour은 UnityEngine에서 미리 정의해 둔 클래스이다.

 

C# 스크립트(Script) 기초

  • 개행 문자
    • 한글에서 .을 찍어 문장을 마치는 것과 같이 스크립트 상에서 문장이 끝났음을 알리는 문자
    • ; (세미콜론)
  • 들여쓰기
    • { (중괄호) 아래의 코드는 Tab키로 한 칸 밀려난 채로 시작하고,
    • } 로 닫을 때까지 들여쓰기가 유지됨
    • 들여쓰기를 지키지 않아도 에러는 발생하지 않지만 코드를 알아보기 어렵다.
  • 스크립트 저장 (단축키 : Ctrl+S)
    • 스크립트 편집기에서 편집이 완료되면 반드시 저장을 하고, Unity Editor로 돌아온다
  • 컴파일
    • 사람이 알아볼 수 있는 언어(C# 언어)를 기계어로 바꾸는 과정
    • 우리가 작성한 코드가 실제로 실행이 가능한지 판단하는 과정
    • Visual Studio에서 코드를 저장하고, 유니티 에디터로 돌아오면 자동으로 컴파일
  • 주석
    • 한줄 주석 : //
    • 여러 줄 주석 : /* 내용 */

 

2. Debug.Log()를 이용한 문장 출력

Debug.Log( ); - 괄호 안에 입력하는 문자열 또는 변수의 값을 Console View에 출력해 주는 메소드

저장하고 유니티 에디터로 돌아온다.

작성한 스크립트가 Hierarchy View에 들어가 있어야 게임 상에서 역할을 할 수 있다.

게임 오브젝트에 스크입트를 컴포넌트로 적용하기 위한 조건
1. 스크립트 파일 이름과 클래스 이름이 같아야 한다.
2. 부모 클래스로 MonoBehaviour를 상속받아야 한다.
스크립트를 게임 오브젝트의 컴포넌트로 적용하는 방법
1. Hierarchy View의 게임 오브젝트에 스크립트 파일을 드래그
2. 게임 오브젝트를 선택하고, Inspeector View의 빈 공간으로 스크립트 파일을 드래그
3. 게임 오브젝트를 선택하고, Inspector View의  "Add Component" 버튼을 눌러서 컴포넌트 선택

 

결과 화면

“▶(Play)” 버튼을 누르면 게임이 실행되고, Console View에 다음과 같은 문장들이 출력된다.

*보통 하나의 게임 오브젝트에 동일한 컴포넌트는 1개만 존재하도록 해야 한다.

Hierarchy View에 있는 게임 오브젝트(컴포넌트)를 편집할 때는 플레이를 종료해야 한다!!

 

반응형