본문 바로가기

Dev-Log

(3)
프로젝트 MC #03 - 덱 빌딩 및 데이터 저장 개요대학교에 복학하게 되면서, 수업 과제 겸 프로젝트를 예토전생 시켜 개발을 이어가게 되었습니다. 현재는 프로토타입 개발을 완료한 상황으로, 개발 과정을 복기하면서 글을 적어보고 있습니다.지난 차례의 글에서 이동 및 차례 처리와 같은 플레이에 필요한 로직들을 대부분 구현했으니, 이제 프로젝트의 핵심 컨셉인 체스 말의 수량을 자유롭게 편집해 덱을 만드는 시스템을 만들 차례입니다. 너무 프로젝트의 볼륨이 커지면 벅찰 것 같다는 생각도 있었고, 프로토타입의 재미 검증이 더 우선이었기 때문에 멀티플레이 구현 없이 (처음엔 데디케이트 서버를 생각만 했었습니다...) 싱글로 오프라인 상에서 게임 플레이를 진행하려 했습니다. 따라서 덱 빌딩 또한 한 화면에서 백이 덱을 구성한 뒤, 흑이 이어서 덱을 구성하는 식으로만..
프로젝트 MC #02 - 말 이동 가능하게 구조 만들기 개요저번 글에서는 가볍게 프로젝트를 생성하고, 말들이 움직일 수 있는 보드를 만들어 보았습니다.그 다음 차례로, 말들을 움직일 수 있게 만들어 보겠습니다. ♟  구조 만들기일단 게임에 필요한 큰 요소들을 3가지로 잡았습니다.전체적인 흐름을 처리해주는 보드매니저, 보드의 한 타일, 그리고 말.처음에는 매니저가 보드 타일을 들고있고, 타일은 말을 들고있는 순으로 상하가 명확한 구조로 생각을 했었습니다. 보드 매니저에서 말의 모든 움직임도 모두 처리해주고, 타일과 말은 각각의 속성값들과 자잘한 메소드만 들고 있는 구조로요.2d 게임이었다면 위와 같은 구조에서, 타일 콜라이더만을 통해 터치를 처리해주면 상호작용에 문제가 없었겠지만 (모든 조작이 타일 터치를 통해서 처리, 말 선택 또한 해당 말이 위치한 타일을 ..
프로젝트 MC #01 - 체스 보드 생성하기 최근에 개인적인 일정들이 마무리되어서, 개발 공부 겸으로 아이디어 중 하나였던 체스 베이스 게임을 하나 심심풀이로 만들어보기로 했습니다. 일단 체스 보드부터 시작해요. ··· [HideInInspector] public Vector3[,] board = new Vector3[6,6]; [SerializeField] private GameObject tileWhite; [SerializeField] private GameObject tileBlack; [SerializeField] private float tileSize = 1; void GenerateBoard() { bool isBlack = true; for(int i = 0; i < 6; i++) // j - Horizontal (A,B,C...)..