테트리스 강좌

초등학생도 쉽게 따라할 수 있는 Unity 테트리스 게임 개발 강좌 자료

변수 (Variable)

📖 개념 설명

변수는 데이터를 저장하는 상자입니다.

int score = 0;        // 정수(숫자)를 저장하는 상자
string name = "홍길동"; // 문자열(글자)을 저장하는 상자
float speed = 1.5f;   // 소수점 숫자를 저장하는 상자
bool isGameOver = false; // 참/거짓을 저장하는 상자

왜 사용하나요?

테트리스 예시:

int score = 0;  // 점수를 저장
int level = 1;  // 레벨을 저장

멤버 변수 vs 로컬 변수


🛠️ 실습: 변수로 값 저장하고 출력하기

목표: 변수에 값을 저장하고 Console에 출력해 봅니다.
이 실습은 “로컬 변수만” 사용합니다. (메소드 안에서 선언한 변수 = 그 메소드가 끝나면 사라짐)

실습 단계

단계 할 일 구분
1단계 로컬 변수만 사용하기 (아래 수행 과정) 로컬 변수 = Start() 안에서만 선언·사용
2단계 멤버 변수 실습이 궁금하면 → 멤버 변수와 로컬 변수 문서의 실습 1·2·3단계로 이어가기 멤버 변수 = 클래스 안, 메소드 밖

이 실습 전용 씬 만들기 (환경 설정)

먼저 이 실습 전용 씬을 만든 뒤 아래 순서로 진행합니다. (자세한 씬 만드는 방법은 개념 실습 테스트 환경 가이드의 씬 만드는 방법 참고.)

이 실습만 할 전용 씬이 없으면 아래 순서로 한 번만 만듭니다. (이미 ConceptTest_Variable 씬이 있으면 File → Open Scene으로 열고 아래 실습만 이어서 하세요.)

  1. File → New Scene → Basic (Built-in) 또는 Empty → Create
  2. File → Save As → 저장 위치: Assets/Scenes → 파일 이름: ConceptTest_Variable → Save
  3. 아래 실습은 모두 이 씬에서 진행합니다. (다른 문서로 왔다 갔다 하지 않습니다.)

수행 과정 (실습 1단계: 로컬 변수만)

  1. Unity에서 새 C# 스크립트 생성
    • Project 창에서 Scripts 폴더 우클릭 → Create → C# Script
    • 이름: VariableTest
  2. 다음 코드 작성
    → score, level, playerName 은 전부 Start() 안에 있으므로 로컬 변수입니다. ```csharp using UnityEngine;

public class VariableTest : MonoBehaviour { void Start() { // 변수 선언과 값 저장 int score = 0; int level = 1; string playerName = “플레이어”;

    // 변수 값 출력
    Debug.Log("점수: " + score);
    Debug.Log("레벨: " + level);
    Debug.Log("이름: " + playerName);
    
    // 변수 값 변경
    score = 100;
    level = 2;
    Debug.Log("변경 후 점수: " + score);
    Debug.Log("변경 후 레벨: " + level);
} } ```
  1. 빈 GameObject에 스크립트 추가 후 Play
    • Hierarchy에서 Create Empty → VariableTest 스크립트 추가
    • Play 버튼 클릭
  2. Console 확인
    • “점수: 0”, “레벨: 1”, “이름: 플레이어” 출력
    • “변경 후 점수: 100”, “변경 후 레벨: 2” 출력
    • → 변수에 값을 저장하고 나중에 바꿀 수 있음을 확인!
  3. 직접 해보기: float speed = 1.5f; 변수를 추가하고 Debug.Log로 출력해 보세요.

  4. 다음 단계: 변수는 “저장소”입니다. 나중에 그 저장소를 바꾸는 함수를 같은 덩어리(클래스)에 넣는 법은 멤버와 메소드 문서에서 배울 수 있어요.

← 개념 목록으로