본문 바로가기

Unity 개발 공부

[내배캠] 본캠 1일차. 팀 카드 뒤집기 게임 #1 wireframe.

팀원 5인을 소개하는 카드 뒤집기 게임을 만드는 1주일 프로젝트가 시작되었다.

우리팀은 2조로, 간단한 자기소개후, 조 이름을 정한 후 간략하게 게임 기획을 구상했다.

5개의 stage를 만들고, 각 스테이지마다 뒤집기 특수룰(기믹)을 도입 하는 방식으로 레벨디자인을 설계하기로 했다.

 

해당 게임 디자인의 wireframe은 이와같다.

StartScene -> Mainscene 에서 스테이지 고르기 -> Stage00_BattleScene -> 클리어시 Stage00_ResultScene 에서 간단한 소개글과 프로필 사진을 띄우는걸로 기획을 정리하였고

 

특수룰에는 아래와 같은 아이디어들이 나왔다.
팀원들이 리스트안에서 각기 취사선택하여 본인이 맡은 스테이지에 구현해보는것으로 결정했다.

  1. 카드 한쌍식 맞추면 시간 더 주고, 틀리면 시간 깎아버림.
  2. 시간이 일정시간 지나면 한번 셔플- 난수로 섞이게 
  3. 한칸씩 밀린다. 
  4. 퍼즐적인 요소가 들어가는 … 예를들어 얼굴 사진 좌우가 나눠져있고 한몸으로 맞춰야함.
  5. 카드 뒤집히는 시간을 없애서 두번째 카드를 아예 안보이게 만들기
  6. 손가락이 느리면 가장 처음에 뒤집은거 다시 원래대로 뒤집히게…. 순차적으로 원래대로 돌아감.
  7. 시간제한이 아닌 턴 횟수

 

이렇게 계획후. 간단하게 필수적으로 구현해야하는 내용을 우선적으로 세팅하기 시작했다.

using UnityEngine;
using UnityEngine.UI;

public class GameManager : MonoBehaviour
{
    public static GameManager instance;    //싱글톤
    public Text Timetxt;
    public float time = 0.0f;

 
    
    private void Awake()
    {
        if (instance == null)
        {
            instance = this;
        }
       
    }


    // Start is called once before the first execution of Update after the MonoBehaviour is created
    void Start()
    {
        Time.timeScale = 1.0f;
    }

    // Update is called once per frame
    void Update()
    {
        time += Time.deltaTime;
        Timetxt.text = time.ToString("N2");
    }
}

 

 

 

이슈 및 해결:

그전엔 따라하기만하다, 안보고 세팅하다보니 정말 초보적인 부분에서 에러가 떠 당황했다.

스크립트를 엔진상에 만들고 ctrl + d로 복사하다보면, visual studio 에서 켰을때 엔진상에 이름을 변경해도, 

public class 클래스명 : Monobehaviour 에서 클래스명이 중복되어 문제가 되는 경우가있다. 
필자는 총 4개의 스크립트를 만들때 public으로 선언한 GameManager라는 이름이 계속해서 중복되어서 컴파일링 오류가 났다. 엔진상에서 설정한 각 스크립트의 이름으로 바꿔주면 해결된다.