전체 글339 40. 던전 씬 구조 변경 & 배경 오브젝트를 추가하는 툴 제작 던전 씬 구조 변경 - 던전 씬은 여러 개의 스테이지를 가지고 있고, 각각의 스테이지는 또 여러개의 던전을 가지고 있다.(던전과 던전씬 혼동x) - 스테이지는 던전-던전-던전-보스방와 같은 구조를 통틀어서 관리하는 객체이고, 던전은 각각 타일/배경/이벤트를 소유한 독립적인 개체이다. - 스테이지가 존재하는 이유는 각각의 던전을 연결하기 위함이며 현재 던전이 완료되었다는 메시지를 수신하면 다음 던전으로 이동시키는 등의 로직을 구성할 생각이다. - 던전은 맵 파일의 주소(Path)를 생성자에서 전달 받게 되고, 주소를 가지고 있다가 Enter에서 타일 객체와 배경 객체들을 씬에 추가한다. - 이 구조는 초안이므로 언제든지 변경될 수 있음 배경 오브젝트를 추가하는 툴 제작 - 앞서 작업했던 원근 투영을 최대한.. 2023. 5. 3. 39. Camera 원근 투영 활용 Camera 원근 투영 활용 - 원근 투영은 초기 엔진 작업 시에 만들어두긴 했는데, 2D 게임이라 사실상 직교투영만 주로 사용해왔다. - 지금 원근 투영을 사용하는 이유는 배경을 그릴 때 깊이 값을 다르게 줘서 멀리 있는 물체는 더 천천히 움직이도록 해서 깊이감을 형성하기 위해서이다. - 이를 위해 카메라를 1개 더 추가하고, 해당 카메라는 Background Layer만 찍도록 했다. - 예를 들어 밤을 배경으로 하는 맵을 만든다고 가정했을 때, 건물은 비교적 가까이 있지만, 달과 별은 저 멀리 있다. - 여기서 플레이어가 움직일 때 건물과 달과 별이 같이 움직인다면 달과 별이 멀리 있다고 느껴지지 않을테니, 이 부분을 구현하기 위해 원근 투영을 사용하는 것이다. - 원근 투영을 사용했을 때 가까이 .. 2023. 5. 2. 38. ItemInfoUI 구현 & 마검 아이템 구현 및 장착 시 이펙트 구현 ItemInfoUI 구현- 이는 이전에 구현했던 SkulInfoUI와 비슷한 구석이 많은데, 결국 아이템도 UI에 보여질 아이템의 이미지, 이름, 설명을 기재해야 하므로 이런 정보들을 한번에 관리할 수 있도록 ItemInfo라는 구조체를 따로 만들었다. - 이렇게 구현하고 나니 생기는 장점은, DetailInfo (UI가 선택되었을 때 우측에 뜨는 설명란을 구성하는 구조체)에 SkulInfo와 ItemInfo를 멤버로 두기 때문에 SkulInfo -> DetailInfo에 값을 전달할 필요가 없어져서 코드가 훨씬 간결해진다는 것이다. - 그리고 SkulInfo에 멤버를 추가하면 DetailInfo에 자동으로 추가되는 이점이 있다. (다만 이 경우 멤버를 삭제할 때 관리 포인트가 늘어날 수 있는데, 이 경.. 2023. 5. 1. 37. SkulItemUI 구현 완료 & Item 기초 작업 SkulItemUI 구현 완료 - 인벤토리를 열고 스컬에 마우스를 대면 나오는 Detail UI를 구현했다. - 스킬에 대한 설명과 스킬 이미지, 스킬 이름 등을 표시해주어야 했기 때문에, Skul 클래스로부터 이 정보를 받아오도록 했다. - Skill을 구성하는 요소를 정리하다 보니 생각보다 많다는 걸 느꼈는데, 이걸 파편적으로 관리하기보다는 구조체로 묶어서 관리하는 것이 더 수월하겠다는 생각이 들었다. (더욱이 지금과 같이 정보를 넘겨주어야 할 때는 더더욱 필요) - 결국 SkillInfo에 담길 텍스쳐는 UI에 표시될 텍스쳐, 바닥에 떨어졌을 때 텍스쳐, 인벤토리에 있을 때 텍스쳐 총 3개가 필요하고, 스킬 설명, 스킬 이름, 쿨타임이 필요하므로 이 정보들을 관리하는 구조체를 만들었다. - 최종 목.. 2023. 4. 29. 이전 1 ··· 31 32 33 34 35 36 37 ··· 85 다음