raylib:tetris:테트리스_개념_및_준비
테트리스 개념 및 준비
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판이전 판 | |||
raylib:tetris:테트리스_개념_및_준비 [2023/12/23 23:21] – 이거니맨 | raylib:tetris:테트리스_개념_및_준비 [2023/12/24 12:46] (현재) – Drawbackground 이거니맨 | ||
---|---|---|---|
줄 38: | 줄 38: | ||
// 테트리스 설정 | // 테트리스 설정 | ||
- | int numCols; | + | int numCols; |
- | int numRows; | + | int numRows; |
- | int paddingX; | + | int paddingX; |
- | int paddingY; | + | int paddingY; |
- | int cellSize; | + | int cellSize; |
- | int backGrid[20][10]; | + | int backGrid[20][10]; |
// Color Pallette | // Color Pallette | ||
줄 50: | 줄 50: | ||
</ | </ | ||
- | ==== 3. gam.cpp에 그리드 그려보기 ==== | + | |
+ | 가로 20 세로 10의 그리드 행렬에는 숫자값(int)을 저장한다. 이 숫자에 따라 해당 셀의 색상이 바뀌는 것이다. | ||
+ | |||
+ | 0은 블랙, 1은 흰색, 2는 어두운녹색, | ||
+ | |||
+ | ==== 3. game.cpp에 그리드 그려보기 ==== | ||
+ | |||
+ | 먼저 game 클래스가 생성될 때 각 값들을 초기화해야 한다. | ||
+ | |||
+ | === 가. Game:: | ||
+ | |||
+ | <code raylib> | ||
+ | Game:: | ||
+ | { | ||
+ | numCols = 10; | ||
+ | numRows = 20; | ||
+ | paddingX = 100; | ||
+ | paddingY = 100; | ||
+ | cellSize = 30; | ||
+ | |||
+ | for (int i = 0; i < 20; i++) | ||
+ | { | ||
+ | for (int j =0; j < 10; j++) | ||
+ | { | ||
+ | backGrid[i][j] = 0; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | backGrid[18][2] = 3; | ||
+ | backGrid[18][3] = 3; | ||
+ | backGrid[19][3] = 3; | ||
+ | |||
+ | } | ||
+ | </ | ||
+ | |||
+ | 그리드 전체를 0으로 하여 검은색으로 덮되, 맨 아래쪽 몇개는 노랑색이 나오게 해보았다. | ||
+ | |||
+ | |||
+ | === 나. Draw메서드 === | ||
+ | |||
+ | 따로 DrawBackground()함수를 호출하게 한 후에, 그 DrawBackground()함수를 다음과 같이 만들었다. | ||
+ | |||
+ | <code raylib> | ||
+ | void Game:: | ||
+ | { | ||
+ | ClearBackground(DARKBLUE); | ||
+ | |||
+ | |||
+ | for (int row = 0; row < numRows; row++) | ||
+ | { | ||
+ | for (int column = 0; column < numCols; column++) | ||
+ | { | ||
+ | int cellValue = backGrid[row][column]; | ||
+ | DrawRectangle(paddingX + column * cellSize, paddingY + row*cellSize, | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | </ | ||
raylib/tetris/테트리스_개념_및_준비.1703341298.txt.gz · 마지막으로 수정됨: 2023/12/23 23:21 저자 이거니맨