GAME(53)
-
타워디펜스 개발 1
자...이번에 배운 길찾기 알고리즘을 응용해보는 시간을 가지기 위해서 간단한 타워 디팬스 게임을 만들어봅시다. 먼저 '타일' 을 만들어봅시다. 타일 컴포넌트를 만들고.. 일단 초기니까 이것만 작성하고 실제 '타일' 에 해당하는 오브젝트를 프리팹으로 만들고 거기에 Tile컴포넌트 부착 이제 실제로 Tile을 생성하는 Board를 만듭시다. Board는 Tile을 들고있어야겠죠... 이차원 배열로 가지고 있고 Init함수를 만들어서 tiles를 초기화합니다. CreateBoard라는 함수를 만들어서 순회하면서 아까 만든 Tile오브젝트를 Instantiate해서 생성.. 타일의 위치는 카운팅 위치로 하면 제 위치에 갈것. 그리고 생성한 TIle을 이차원 배열에 삽입합니다. TileSize만큼의 Tile생성하..
2023.11.09 -
작곡 프로그램 개발 일지 19
자... 오늘은 강연을 좀 들었기 때문에 작업량이 많지 않음. 오늘 한 것은 트랙 설정이랑 간단한 픽스를 했다. 먼저 트랙 채널 설정은 드래그 하는 시스템을 가져와서 드래그해서 채널을 바꿀 수 있도록 설정! 드럼이 9 채널이기 때문에 어떻게 할까 고민을 했는데 이 방법이 지금은 제일 좋은것같음. 그래서 같은 번호의 채널을 가진 여러 트랙을 만들수 있게 해서 드럼도 다중 트랙으로 설정. 그리고 버그 수정, 여기서 생성된 Midi 파일이 다른곳에서 재생이 안되는 오류 발생! -> HeaderChunk에 Format이 1일때 다중트랙이 재생되는것으로 알아 트랙에 따라 동적으로 바뀌게 설정 이 프로젝트는 미디 파일을 읽어서 리듬게임을 할 수 있게 하는것! 팀원분이 악기 정보를 어디서 가져오는지 궁금해 해셔서 기..
2023.11.08 -
작곡 프로그램 개발 일지 18
다시 여러 방법들을 생각해보았다. 뭔가 의미가 없는 생각같긴한데 일단 트랙에서 악기 변경 버튼이 트랙버튼이랑 이어져있다고 생각 이렇게 연결되있으면 가능한데 다중 트랙일시 문제. 따라서 필요에 따라 연결이 끊어지는 개념이 필요함 N : 1 관계에서 연결이 끊어지면, 악기측에서 어느 트랙인지 알 수 없는 문제 발생.. 따라서 중간자의 개념이 필요 중간자를 통해서 트랙과 악기가 서로의 간섭 없이 소통할 수 있다! 어제 생각해본 방법이긴 한데 한번 제대로 생각을 정리해봄. 아무리 생각해도 이게 최선의 방법인듯 하다. 자 그래서 이 개념을 도입해본다면 지금 TrackButton이란 클래스로 페이징 처리를 해 주고 있다. 이 페이지는 결국 Track의 번호에 해당함 그래서 중간자는 이렇게 설정하고 근데 버튼을 클릭..
2023.11.07 -
작곡 프로그램 개발 일지 17
UI에 관한 피드백을 받았고, 변경 또한 해야 하기 때문에 악기 선택 UI를 하는 겸 UI 관련한 작업을 하기로 했다. 작곡 시스템을 개발하느라 설계를 멋지게 하지 못하여서 이식을 하는데 좀 걸릴 것 같다. 그래서 지금부터라도 설계를 똑바로 해야겠다고 다짐했다. 일단 악기 선택 UI를 만들어야 하는데 이 구조가 조금 고민이 되었다. 먼저 구조는 트랙 UI에서 악기를 클릭하면 악기 선택 UI가 뜨고 악기를 선택하면 다시 그 트랙의 악기가 선택된 악기로 변경 되어야 하는것. 먼저 생각난것은 트랙 악기 클릭시 자신의 인덱스를 악기 선택쪽으로 넘겨서 처리하는 방안을 생각했지만 악기에 인덱스를 넘겨주었다면 악기 선택에서 트랙을 알아야 하는 문제가 발생하는것 따라서 이벤트를 넘겨서 악기가 선택되면 이벤트를 실행하는..
2023.11.06 -
작곡 프로그램 개발 일지 16
이제 박자를 대강 맞추었으니 여러 악기를 선택해야 하는데.... Program Change Event와 Controll Change Event가 있다고 한다. 다른 프로그램에서 드럼을 찍어서 다시 하나 하나 분석을 해 보는데도저히 모르겠다. Program Change Event와 Controll Change Event는 눈에 보이지도 않는다.. B9, 07 , 64 이벤트는 볼륨 조절 이벤트이고 ... 그 앞 FF 21 01.... 이벤트도 드럼과는 상관이 없는 문제이다. 더 탐색을 해 보았는데.. 이 9n 이벤트가 99로 시작한다는 점이 눈에 띄었다. 원래라면, 90 부터 시작을 할텐데 99부터 시작을 하니까 변경을 해 보았는데? 피아노로 쳐졌다. 99번은 또 Drum Kit과 관련된 놈인가 보다.....
2023.11.02 -
작곡 프로그램 개발 일지 15
이제 칸마다의 박자를 맞추어야 하는데, 댄스빌 영상을 찾아보니까 한칸에 0.5박으로 되어있고, 몇 칸을 재생할것인지 길이를 결정한다. 그것을 계산하기 위해서는? 이전 이벤트에 0.5박을 누적시키면 된다. 대충 생각한대로 해 보았다. 다시 학교가는 길을 2중주 버전으로 쳐 보았다. 뭔가 의도대로 된 느낌? 하지만 아직 부족한 부분이 많음. 1. 마지막 음이 끊김 2.공백의 길이가 음의 길이가되버림 이런식으로 연산을 해서 박자를 결정! 맞는지 모르겠지만 잘 되는듯?
2023.11.01