Programming 4

C++ 테트리스 게임 제작

때는 2022.12.29일 목요일 바킹독 선생님의 실전 알고리즘 강의 영상을 보던 중 C++ 공부 중인 해온이의 대결 신청 나도 C++ 익힐 겸 하기로 했다. 오랜만에 하루종일 앉아서 코드만 짠 것 같다. 이런 기분을 중학생 때 게임 만들 때 느꼈었는데, 고등학교 와서는 못 느꼈다. 노래 반복재생 - 코드짜기 - 버그 발생 - 노래 멈추고 디버깅 - 다시 노래 재생 시간은 대략 29일 하루종일 + 30일 반나절 정도 걸렸다. 클래스는 다음과 같이 나눴다 Tetromino / Tetris / TetrisUI / Display TetrisUI와 Display는 static method로 구성되어있고, TetrisUI는 미노 정보만 받아서 Display 내 함수를 호출하는 역할, Display 는 테트리스와 ..

Programming 2022.12.31

한자성어(사자성어) 프로그램 with Winform

한창 C# 윈폼에 맛들려서 이것저것 만들던 시절이 있었다. C로 CLI 프로그램만 만들다가 GUI 프로그램을 만들 수 있다는 것을 알게 되니, 윈폼만 애용했었다. 때는 2019년 12월달 막 중학교 3학년 끝자락을 즐기던 때였다. 당시 효성중학교에서 오랫동안 계신 선생님, 강송희 선생님이 계셨다. 내 형이 중학생일때도 계셨고, 내가 졸업할때도 계셨으니.. 여담으로 내가 중학교 2학년때 담임선생님이자 도덕 선생님이셨던 차윤경 선생님, 국어 선생님이셨던 강송희 선생님 차윤경 선생님은 강송희 쌤이랑 많이 친하셨다. 그리고 강송희 쌤만의 특별한 수업 방식이 아직도 기억에 남는데, 1일 뉴스였나?? 매 국어 수업마다 번호순대로 돌아가며 3분동안 자기만의 주제를 가지고 발표하는 것이었다. 자기의 오늘 기분, 아침밥..

Programming/C# 2021.02.17

[Unity2D] 체스 개발 일지 - 0.5

체스 기물들 움직임 구현은 충분한 구상이 이루어진 다음에 짜야 할 것 같다. 괜히 먼저 짰다가 코드가 뒤죽박죽일 것 같으니 오늘은 간단하게 체스 Cell 마다 마우스가 올려져있을 때 색 변경 기능을 추가하였다. using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class Cell : MonoBehaviour { public Color Light { get; } = new Color(255 / 255f, 206 / 255f, 162 / 255f); public Color Dark { get; } = new Color(210 / 255f, 138 / 255f, 71 ..

[Unity2D] 체스 개발 일지 - 0

형이 요즘 체스에 맛들렸는데 형보고 전공 공부도 할겸 유니티로 체스를 만들어보라 했다. 근데 형을 도우면서 나도 같이 구상을 하게 됐는데, 그냥 나도 심심하던 참이었기에 체스를 만들어보게 됐다. 그동안은 게임을 만드느라 스프라이트를 구하는데 애썼는데, 체스는 기물 스프라이트들만 있으면 됐기에 걱정될 부분이 없다. 오늘은 체스 판을 초기화하고 기초 공사(?) 느낌의 기능들을 구현했다. 보시다시피 화면의 오른쪽 여백은 각종 UI를 배치하면 될 것 같다. 체스 판과 기물들은 Canvas 에서 UI로 만든다. 체스판의 왼쪽 위에서부터 가로로 한줄씩 아래로 8줄, 즉 2차원 배열형태로 체스판을 구현했다. using System.Collections; using System.Collections.Generic; u..