6단계 확장 실습 01: 그리드와 행 검사
📌 이 실습은?
2차원 배열에서 “한 행이 다 찼는지” 검사하는 IsRowFull 스타일 실습입니다.
이전 단계를 다 보지 않았어도 이 파일만 따라 하면 진행할 수 있습니다.
이전 단계 링크 (필요할 때만 참고):
- 6단계: 행 제거 시스템 — IsRowFull, ClearFullRows, grid
- 배열 (개념) — 2차원 배열
- 반복문 (개념) — for문
- 5단계 확장 실습 01 — Input과 쿨다운 (선택)
🎯 목표
- 2차원 배열 grid를 두고, 한 행의 모든 칸이 비어 있지 않은지 검사하는 IsRowFull(row) 함수를 만든다.
- Start()에서 몇 번째 행이 가득 찼는지 Debug.Log로 출력한다.
🛠️ 실습
이 실습 전용 씬 만들기 (환경 설정)
- File → New Scene → Basic (Built-in) 또는 Empty → Create
- File → Save As → 저장 위치: Assets/Scenes → 파일 이름: ConceptTest_Stage6_GridRow → Save
- 아래 실습은 모두 이 씬에서 진행합니다.
수행 과정
- 빈 GameObject 생성
- Hierarchy 우클릭 → Create Empty → 이름: “Stage6ExpandTest”
- C# 스크립트 생성
- 이름:
Stage6ExpandTest
- 이름:
- 다음 코드 작성 ```csharp using UnityEngine;
public class Stage6ExpandTest : MonoBehaviour { private int width = 4; private int height = 4; private int[,] grid; // 0=빈칸, 1=채워짐
void Awake()
{
grid = new int[width, height];
// 2번째 행(y=2)만 다 채우기
for (int x = 0; x < width; x++)
grid[x, 2] = 1;
}
void Start()
{
for (int y = 0; y < height; y++)
{
bool full = IsRowFull(y);
Debug.Log($"행 {y} 가득 찼나? {full}");
}
}
bool IsRowFull(int row)
{
for (int x = 0; x < width; x++)
{
if (grid[x, row] == 0)
return false;
}
return true;
} } ```
- 스크립트를 Stage6ExpandTest에 추가 후 Play
- Console: 행 0·1·3은 false, 행 2만 true 로 나오는지 확인
-
직접 해보기: 행 0도 다 채운 뒤
grid[x, 0] = 1;(Awake에서) 추가하고, 행 0도 true가 나오는지 확인해 보세요. - 이어서: 7단계에서 쓰는 점수·UI 실습이 궁금하면 → 7단계 확장 실습 01 - 점수 변수와 UI 텍스트
| ← 5단계 확장 실습 | 단계별 확장 실습 목차 | 7단계 확장 실습 → |