이 게시글은 [고박사의 유니티 노트] 유튜브 채널의
유니티 기초 강의 시리즈 영상의 요약 정리글 임을 밝힙니다.
📌 변수란?
- 데이터(숫자, 문자등)를 저장하고 사용하기 위해 배정되는 공간을 지칭하는 이름
✏️ 변수의 쓰임
- 컴퓨터에 영화, 사진 등을 저장해두고 필요할 때 열어본다.
- 이와 같이 게임 내부에서도 플레이어 이름, 공격력 등 다양한 정보를 저장해두고 필요할 때 꺼내 쓰거나 데이터를 수정하기도 한다.
- 이렇게 게임 내부에서 데이터를 저장/사용하는 공간들을 변수라고 한다.
- 변수에 저장되는 데이터는 단순하게는 플레이어 이름, 공격력과 같은 것에서부터 화면에 보여지는 플레이어 이미지, 사운드 등 게임에 필요한 모든 정보
ex)
string playerName = "김철수"
int attackDamage = 9999;
✏️ 변수 선언
- 어떤 데이터를 저장 및 사용하기 위해 필요한 데이터 공간을 확보하고,
- 그 데이터를 활용하는 범위, 저장하는 데이터 속성,
- 그 공간을 지칭하는 이름을 설정하는 것
- 변수 선언에 필수가 되는 두 가지는
- 저장할 데이터 자료형(Data Type), 변수 이름
ex)
int damage;
float exp;
string name;
bool isDie;
✏️ 변수 특징
- 변수의 이름은 대, 소문자를 구분한다
- 일반적으로 소문자로 시작해서 단어가 구분될 때 첫 글자를 대문자로 사용 ex) maxCount
- int Value; 와 int value; 는 다른변수
- 변수의 이름은 숫자로 시작할 수 없다
- int value01; //Good
- int 01value; //Error
- 변수의 이름은 의미 있게 짓는다
- 에러가 발생하는 것은 아니지만 이 변수가 어떤 데이터를 나타내는지 이름으로 식별 불가
- int enemyCount; int playerHp; //Good
- int a, b, f, j; //Error
- 변수를 사용하기 전에 값을 미리 할당해 두는 것이 좋다
- 값을 설정하지 않고 사용했을 때 컴파일러에 따라 얘기치 못한 상황이 발생할 수 있다
- int value = 0; float value = 1.2f; //Good
- int value; //Error
✏️ 변수 타입
- 정수형 (byte, short, int, long, Etc...)
- (소수점이 없는) 숫자를 저장하는 데이터 타입 (게임에서 int가 가장 흔하게 사용된다)
- 표현 방식 : -1, 2, 0, 10, 1000, -12332
- 실수형 (float, double, Etc...)
- 소수점이 있는 숫자를 저장하는 데이터 타입 (float 소수점 7자리, double 소수점 15자리)
- 표현 방식 : -1.2f, 0.3f, 4.87, 0.0, -3.5 (float과 double을 구분하기 위해 float는 뒤에 f를 붙임)
- 문자열 (string)
- 문자열을 저장하는 데이터 타입
- 표현 방식 : "Hello World", "안녕, 내 이름은 OOO이야"
- 논리형 (bool)
- 사용자 정의 형 (struct, class)
- 위에서 설명한 여러 데이터, 사용자 정의 형을 묶어 새로운 데이터 타입을 생성
✏️ 변수 선언 방식과 초기화
- 변수를 초기화 한다는 것은 변수의 초기 값을 할당하는 것
- 변수 생성과 동시에 값을 할당하거나 유니티에서 초기화를 위해 1번만 호출되는 Awake(), Start() 메소드에서 값을 할당한다
using UnityEngine;
public class Test : MonoBehaviour
{
private int value01;
private int value02, value03, value04;
private int value05 = 10;
private int value06 = 10, value07 = 20, value08 = 30;
private void Awake()
{
value01 = 1;
value02 = 2;
value03 = 3;
value04 = 4;
}
}