분류 전체보기
-
스파르타 최종 프로젝트 26일차게임 개발기록 2024. 7. 22. 15:27
1. 아이템 제작 기능 만들기먼저 유닛 슬롯들이 아이콘과 애니메이터 컨트롤러를 로드 해올 때 문제가 있었다. 제대로 리소스를 로드 해오지 않았는데 원인은 그거였다. 나는 데이터를 CSV로 받아오는데 이 때 마지막 줄에 /n이 붙어서 경로를 제대로 찾지 못 한 문제였다. 그래서 Replace라는 함수를 이용해서 해결했다.code = datas[7].Replace("\r", ""); /r을 공백으로 바꿔줌. 이렇게 하니까 정상적으로 리소스를 받아와서 초기화가 잘 되었다. 이제 어제 만들어 둔 UI를 작업 해주자. 목록에서 제작 할 아이템을 클릭 하면 상단에 메뉴가 초기화 되고 각종 함수들이 호출 되게 해주면 될 것이다. 먼저 재료오브젝트는 계속 해서 바뀌고, 수가 다르다. 그래서 오브젝트풀로 이용해서..
-
스파르타 최종프로젝트 25일차게임 개발기록 2024. 7. 22. 01:21
1. 아이템제작기능 만들기아이템을 제작 하고 장착 하고 외형이 변하게 하고, 다른 아이템들은 갯수만큼 유닛들의 능력치가 상승하게 해보자. 먼저 아이템 제작 UI를 어떻게 할지 구상을 해야 한다. 진짜 디자인 어떻게 할지가 어려운 것 같다. 레퍼런스 좀 뒤져봐야하나. UI먼저 작업하고 코드를 작업 하고 싶은데 UI구상이 좀처럼 쉽게 안 떠오른다. 제작 화면을 열었을 시에 화면을 꽉 채우는 듯한 씬을 옮기는 것이 좋을까. 아니면 제작 창만 나오는 느낌으로 할지 고민이다. 그리고 아직 아이템의 대한 기획이 끝나지 않아서 예상보다 시간이 좀 걸릴 것 같다. 어떻게 하면 좋을까. 제작은 곡괭이랑 획득한 아이템을 강화 하는 것만 할 수 있게끔 할 것 같은데, 아이템을 표시 하는 인벤토리를 하나 더 만들어야 ..
-
스파르타 최종프로젝트 24일차게임 개발기록 2024. 7. 21. 23:58
1.유닛 슬롯 수정유닛저장기능을 추가 하기에 앞서서 유닛슬롯의 구조를 변경 할 필요가 있었다. 현재 유닛을 구매 하는 상점시스템이 등록한 유닛들이 전부 다 나오는 구조였는데, 유닛을 구매하면 다음 유닛이 열리는 구조로 변경을 할 생각이였다. 이것을 하기에 앞서 유닛의 Data를 받아오는 방식부터 조금 수정을 해야 할 것 같았다.지금은 Stat이라는 클래스가 있고 그걸 갖고 있는 Data클래스라는 게 있고 이 Data를 가지는 Controller가 있게 했는데 이러한 구조를 할 경우에 Data라는 오브젝트를 생성을 했어야 했다. 지금 다시 보니까 이렇게 할 필요가 없다고 생성이 되어서 Data라는 중간을 삭제 하고 바로 stat과 Controller가 잇게 했다. 그리고 나중에 저장을 하려면 연결이 되..
-
스파르타 최종프로젝트 23일차게임 개발기록 2024. 7. 19. 23:36
벌써 23일차다. 말이 안 된다.. ㅜㅜ 시간 너무 빠르다. 3주 하고도 2일이 지난 시간. 과연 난 만족할만큼 작업을 했는가. 지금 생각하면 절대 아니라고 생각이 든다. 내 실력이 많이 부족하다고 하더라도 지금 이시간이면 난 모든 기능을 완성 했어야 한다고 생각이 든다. 아쉽긴 하지만 지금이라도 제발 속도를 올려보자. (일단 지금 글을 적는 건 저녁이므로 내일부터^^..) 1.강화기능 저장하기어제 강화구조를 수정 하고 저장기능을 추가 해봤다. 그런데 파일을 찾지 못 해서 중단 하였었는데 그 문제는 이러했다. Application.persistentDataPath;라는 거 자체를 string으로 저장을 시켜두고 사용을 하는 것인데 내가 이걸 초기화 하기 전에 Data를 불러왔기 때문에 비어있는 stri..
-
스파르타 최종프로젝트 22일차게임 개발기록 2024. 7. 18. 15:24
1.코드 많이 수정 하기저장 기능을 구현 하기에 앞서 원활한 작업을 하기 위해선 구조를 변경 해야 하는 부분이 있었다. 강화로직과 유닛을 생성 하는 것들인데, 현재 강화는 공격력에 계속 더하는 형식인데 이러한 방식은 별로 좋지 않은 것 같다. 공격력은 그냥 냅두고 강화 레벨에 따른 공격력 계산을 하는 것으로 바꿔주고 유닛 생성 하는 것도 바꿔야 할 것 같다. 구매를 한 유닛은 저장이 되어야 하는데 어떻게 할지 생각을 해야 한다. 지금은 시작과 동시에 유닛List를 생성 해내는데 나중에 모든 List 만드는 게 아니라 구매를 하면 다음 유닛이 열리는 형식으로 바꿀 것이다. 그리고 구매를 한 유닛이면 유닛의 Lv을 적용 해야 하는데 저장 기능을 구현 하기 전에 정해야 할 것들이 여러 개 있었다. 먼..
-
24년 7월 18일 TIL공부 기록 2024. 7. 18. 12:15
최적화 기법 POT 텍스처아틀라스유니티 프로파일러 배치( Batch)SetPassCall 유니티의 최적화 기법 배칭, 텍스처아틀라스, 오브젝트풀링, LOD(거리에 따라 디테일 수준 결정), 컬링(카메라에 보이지 않는 것 렌더링 X)압축 및 텍스처 포멧 텍스처 포멧 DXT1/5 (S3TC): 주로 PC와 콘솔에서 사용되며, 압축률이 높아 메모리 사용량을 줄입니다.ETC1/2: 모바일 플랫폼에서 많이 사용되는 압축 포맷입니다.PVRTC: iOS 장치에서 사용되는 포맷으로, 높은 압축률과 품질을 제공합니다.ASTC: 최신 모바일 장치에서 사용되며, 유연한 압축률과 높은 품질을 제공합니다. 드로우 콜 최적화 배칭, 텍스처 아틀라스, 인스턴싱, 배칭 : 동일한 머터리얼 사용시 오브젝트를 그룹화 한 후에 한 ..
-
스파르타 최종 프로젝트 21일차게임 개발기록 2024. 7. 17. 23:40
1. 랜덤 블록 생성 완성하기블록이 생성 될 때 랜덤으로 광석으로 생성이 되어야 하고, 광석의 종류 또한 랜덤으로 적용이 되어야 했다. 처음엔 매니저가 SO들을 갖고 있다가 컨트롤러를 만들 때 SO를 넘겨서 이 SO를 가지고 블록들을 생성 하게 하려고 했다. 그런데 이렇게 할 경우에 한 층에는 하나의 광석만 나오게 됐었다. 내가 원하는 방식이 아니었다. 원하는 방식은 한 층에는 여러 광석이 랜덤으로 나와야 하고, 밑으로 내려갈 수록 희귀한 광석이 더 잘나와야 했다. 그리고 철광석으로 결정이 됐다면, 철광석 중에서도 재료를 덜 주는 블록, 많이 주는 블록으로 나뉘게 하고 싶었다. 그래서 방식을 다시 바꿔봤다. 데이터를 넘길 때 모든 광석들의 Data를 갖고 있는 것을 넘겨야 하기에 굳이 SO를 만들어..