자료구조(Data Structure)란?
·
자료구조/공용
개요'자료구조'라는건 엄청나게 중요한 개념입니다.프로그래밍에 조금이라도 발을 담궈보았다면 누구든 공감할 내용이죠. 프로그래밍에 소견이 없더라도 실생활에서도 여러가지 자료구조를 발견해낼 수 있습니다. 그래서 자료구조란게 뭐냐구요?    자료구조란?결론부터 한마디로 정리하고 가자면,자료구조란, 어떠한 데이터의 집합을 효율적으로 관리, 처리하는 방법 이라고 할 수 있습니다. 이 자료구조를 왜 사용해야 하냐 묻는다면 딱히 해줄 말이 없습니다.애초에 제가 역으로 묻고 싶어요. 어떻게 자료구조를 사용하지 않고 코딩을 하죠? 실생활에 빗대봅시다.여기 책이 하나 있습니다. 저희가 이 책들을 효율적이게 정리하려고 하면 어디에다가 담아야 할까요? ...네 그렇죠. 책장에 담아야겠죠?  이 책장이 코딩에서의 자료구조입니다...
RE : 격 자 : 세번째 프로젝트 # 0 : 리메이크? 리워크?
·
개발/격 자
개요이번 방학동안 전 하나의 활동을 해보기로 했습니다.바로 '격 자'의 리메이크!뒤에 할일이 산더미처럼 쌓여있지만 하기가 싫은걸요!!!!!!???? 그래도 짬짬히 시간내서 하는거니까 딴 활동들을 유기하는건 아닙니다.    리워크사실 말만 리메이크지 그냥 리워크입니다.기존 격자의 틀을 완전히 버리기엔 살짝 아쉽기 때문에 짜놓은 구조를 바탕으로 게임잼이라서 이상하게 짜놓았던 구조들을 수정 해나갈겁니다. 그중의 대표주자가 바로 그 악명높은 적 감지 코드입니다만... 여기서 말하기엔 좀 기니까 나중에 수정할떄 말하죠. 아무튼 리워크를 하는 이유는 제가 만든 게임 중 이게 가장 재밌는 게임이고 최근에 나온 엔진 프로젝트(UNNAMED)가 망했기 때문에 방학동안 어떻게든 무마하려는거죠.  뭘?무엇을 할것이냐~ 하면..
자기소개?
·
주저리/잡담
보호되어 있는 글입니다.
UNNAMED | 네번째 프로젝트 # Final : 완성
·
개발/UNNAMED
개요제목UNNAMED장르FPS 슈팅게임플랫폼PC개발 툴Unity (C#)개발 기간1달개발 인원1명      한 줄 소개최대한 재시도를 적게 하며 정해진 시간안에 스테이지를 통과하십시오!    게임 소개 영상https://youtu.be/eMNi-PQwVss?si=1gyBI8iPjGCj7sJm     깃허브https://github.com/SundG0162/UNNAMED GitHub - SundG0162/UNNAMED: 2024학년도 1학기 개인 프로젝트 산출물2024학년도 1학기 개인 프로젝트 산출물. Contribute to SundG0162/UNNAMED development by creating an account on GitHub.github.com     코드들FSM 구조를 사용한 플레이어 : ..
C++ 콘솔에서 Bad Apple!! 출력하기 | Default Defense # 9
·
개발/Default Defense
개요제가 콘솔창으로 게임을 만들면서 꼭 해보고 싶었던게 있습니다.바로 Bad Apple!! 출력해보기! 입니다. 유튜브에 'Bad Apple!! but' 키워드로 검색을 하면 아주 많은 미친 프로그래머들이 Bad Apple!! 뮤비를 기상천외한 방법을 사용해서 출력하는 영상을 많이 접할 수 있습니다.  그래서? 저도 해보기로 했죠.     아이디어 정리Bad Apple!!은 그 뮤비를 봤을때 전부 흑백이죠?그러니 뭔가 영상의 한 프레임을 읽어온 다음 그 해상도를 강제로 콘솔창에 맞춰 줄이고 한 픽셀씩 읽어와서 0과 1을 구분해 낼 수 있어보였죠. 그래서 그러한 방법을 시도하기 위해 C++ 콘솔에서 영상을 읽어오는 법을 찾아봤는데... 대충 찾아봤는데도 얼마나 길고 복잡하고 하드한 코딩을 요하는지 알게 되..
Default Defense | 다섯번째 프로젝트 # 8 : Wave, InGameState
·
개발/Default Defense
개요그동안 바쁜 상황에도 개발일지를 시간 잘 짬내서 적고 있었다고 생각했는데 다시 생각해보니 진짜 바쁘면 개발일지를 적지도 못해요.그래서 이미 개발이 다 끝난 프로젝트 개발일지를 적는 우스운일을 하고 있는거겠죠.사실 이때쯤 오면 회고록에 가깝긴 합니다. 그리고 블로그 카테고리를 조금 세분화 했습니다.큰 카테고리를 세분화 한건 아니구요 개발 카테고리 내의 카테고리를 세분화 했습니다.각각의 프로젝트마다 소개글을 하나씩은 쓸텐데 솔직히 카테고리를 각 프로젝트 단위로 나누는게 맞다고 생각했습니다. 그 외는... 아마 폐기한 프로젝트들의 개발일지가 비공개로 들어가 있을겁니다.     Wave아이디어 정리디펜스 게임, 그것도 타워 디펜스다보니까 적들이 몰려오는 웨이브라는 개념이 필요하겠죠.최소한 50웨이브 정돈 있..
UNNAMED | 네번째 프로젝트 # 7 : 스테이지, 튜토리얼
·
개발/UNNAMED
개요UNNAMED의 마지막 개발일지 입니다.게임 소개글을 적기 전에 설명 못한 구조들 간단하게 설명하겠습니다.   시작하기전에.. 프로젝트의 이름이 정해졌습니다.거창한건 없고 예전엔 이름이 없었기 때문에 '이름 미정' 이라고 제목에 적혀있었죠?프로젝트 이름을 제출 5시간 정도 전까지 정하지 못해서 그냥 UNNAMED(이름 없음) 으로 정했습니다.     스테이지아이디어 정리저번 글에서 스테이지 식의 타임어택 게임을 만든다고 했었죠? 근데 대충 구성을 해보고 플레이 해보니 긴박감이 없더라구요.그래서 스테이지마다 제한시간을 두고 그 안에 클리어 못하면 그냥 재시도 하도록 바꿨습니다.  일단 각자 스테이지의 분량이 길다기 보단 각각 깨는데 10초 내외로 아주 짧기 때문에 당연하게도 씬으로 나누기보단 프리팹으로..
Default Defense | 다섯번째 프로젝트 # 7 : 구조 수정
·
개발/Default Defense
개요이미 수정한 구조를 구버전으로 적는 것 만큼 괴로운 일이 없습니다.제가 지금 그러고 있거든요.솔직히 의미 없는 짓 같아서 그냥 쓰겠습니다.    뭘?개요에서 말은 그렇게 했지만 실제로 아군 공격을 끝내고 Entity 구조를 수정했습니다. 그래서 뭘 수정하냐?지금 Enemy와 Ally를 봤을때 공통적으로 무조건 update에서 돌아가야 하는 함수가 있죠.일정 간격을 두어 실행해야 하는 tryMove와 tryAttack이 있죠.이것들을 Entity 클래스에서 update함수를 만들어 묶어주고둘 다 타이머를 사용하기 때문에 타이머 또한 Entity에서 묶어주면 좋겠죠. 그러기 위해선 모든 Entity를 담는 EntityVector가 따로 있으면 좋겠죠.지금의 EntityManager는 Entity를 따로 ..