카드 뒤집기 게임제작

2025. 9. 15. 17:52개발

 

 
 

안녕하세요! 어느덧 사전캠프 마지막주에 접어들었습니다
와아아아
 
이번 프로젝트는 내배캠 신청 전부터 기대했던
"카드 뒤집기"를 만들어볼건데요!
 
 
마지막 프로젝트인 만큼, 어렵고 복잡한 내용들이 많네요. ㅜㅜ
차근차근 하나하나씩 오늘 배운 것들 짚어볼게요~
 
 
 
 
 
 
 
 
 
 
 
 


**이미지 사이즈

 

 

 
 
프로젝트 창-Rtan 이미지 클릭-인스펙터 창-
Pixels per unit
 
 
 
오늘 새로 배운 개념인 pixels per unit이 있습니다.
이게 뭘까요?
 
 

pixels per unit이란?

씬 창을 당겨보면 격자 무늬가 보인다.
네모칸 하나를 unit이라고 한다.
pixels per unit은 하나의 unit을 몇 픽셀로 할 것이냐 묻는 것.

예시) pixels per unit이 100이면, 세로 100 x 가로 100이 된다.
         르탄 이미지 사이즈는 500 x 500이다.
         다섯 개의 유닛을 가로 500 x 세로 500으로 차지한다. /굉장히 커짐!

 
 
 
 
 
 


 

** 게임에서 시간 흐르게 하기

 
시간 흐르게 하는 것은 저번 프로젝트들에서 많이 학습한 것이다!!
 
먼저 시간 ui를 만들어주고, 게임매니저 폴더와 스크립트 만들어주는 것까지는 알고 있다.
 
 
그 다음에는 중요한 것
1. 타임 변수 만들기
2. 타임을 표시해줄 업데이트 텍스트 변수 만들기
 
 
 
 
 

//1. 타임 변수 만들기

public class GameManager : MonoBehaviour

{

  public Text timeTxt;
  float time = 0.0f;
  
}

 

//타임표시 업데이트

void update()
{
 time += Time.DeltaTime;
 timeTxt.text = time.ToString();

}

 
 

 
 
 


** 카드 만들기- 카드 배치하기

 
 
 

 
 
 

배치전략 여러번 돌려들어도 이해하기가 너무 어려웠는데...
간단하게 생각해서 이렇게 이해함.
 
 
y값 : 몫
x값: 나머지
 
각각 1.4씩 곱해주면 됨 (여백)

 
 
 

정해진 횟수만큼만 반복 생성

 

이번에는 오브젝트를 복붙하는게 아닌,
코드를 통해 구현할 것이다!
 
why? 레벨이 계속 올라갈 때마다, 카드 하나하나 설계하는 것이
매우 복잡해지기 때문이다.
우린 이번 시간에 간단하게 코드로 구현하는 법을 배워볼 것이다.

 

void start()
{
    for (int i = 0; i <16;  i++ 증가한다)
}

for문 - 어떤일을 한번이 아닌 여러번 계속 실행할때 사용하는 기능이다.

int i = 0; - 초기값을 0으로 설정.

i<16 -정수 i가 16보다 작을 때

i++ -계속해서 증가한다

 
 
 
 
 

 

그리고 위에 배치전략을 코드로 구현하면 이렇게 된다.
카드배치를 4 x 4로 몫과 나머지는 4로 하면 된다.
 
 
instantiate함수를 통해 카드를 생성해준다.
위치값은 this.transform변수로 랜덤하게 생성해줄 것이다.
 
 
 
 
 
 
 
 
 
 


** 카드 만들기 - 이미지 랜덤 로직

 

@@중요@@
 
여기서 오늘 또 새로 배우는 개념이 나온다.
 
대괄호와 배열, 정렬에 대해서 알아볼 것이다!
 
 

1. int [] - int 뒤에 붙은 대괄호는 배열이라는 뜻이다.
           동일한 자료형들이 여러개 들어갈 수 있다.
           여기선 {0,0 .... 7,7}이 들어간다.



3.  arr.OrderBy(x => Random.Range (0f,7f)).ToArray();


arr - 배열
OrderBy -정렬

x =>는 꺾새 안에 0,0부터 7,7을 한번씩 순회해준다는 뜻이다.

0f와 7f는 0부터 7까지 랜덤으로 카드를 정렬해준다는 뜻.

ToArray는 배열로 만들어준다는 뜻

 
 
 
 
 
 
 
 
 

using문에 Linq를 붙여주고
debug.log를 찍으면 이렇게 랜덤하게 배열된다

 

'개발' 카테고리의 다른 글

0922  (1) 2025.09.22
카드 뒤집기 게임 제작 - 2  (1) 2025.09.17
고양이 밥주기 게임 - 2  (1) 2025.09.12
고양이 밥주기 게임  (1) 2025.09.12
케챱게임 만들기  (0) 2025.09.10