본문 바로가기

DirectX/[갠플] Maple Story 모작22

22-07-27 본 모작은 상업적 용도가 아닌, 공부 목적의 모작입니다. 1. 픽셀 충돌 - 엔진 프로그래머분이 픽셀 충돌에 대해 구현해주심. - 픽셀을 검사해서 캐릭터의 공중 상태를 나눴음. 공중 상태라면 중력이 적용되어야 하므로, RigidBody라는 컴포넌트 클래스를 구현. - 캐릭터에 RigidBody 멤버 추가 후, 개체 생성. 잘 적용되어서 캐릭터가 공중에 있을 시엔 서서히 떨어짐. - 다만, 아직 완벽하지 않음. Finite State Machin을 적용해서, 상태를 분기해줘야할듯. 오늘안으로 캐릭터의 상태 FSM도 작성하는게 목표긴함. 2. UI 카메라 - UI는 화면에 고정되어 있는 경우가 허다함. 예를 들어 hp gauge라던가.. - 근데 이 UI들을 현재의 메인 카메라로만 위치 잡기가 너무 힘듬. .. 2022. 7. 27.
22-07-25 본 모작은 상업적 용도가 아닌, 공부 목적의 모작입니다. 1. 타일에 색상 입혀두기 - 내일 엔진 프로그래머분이 픽셀 충돌에 대해 구현해주시기로함. 이를 위해서 타일 위치에 포토샵으로 색상을 칠해둠.(아래바닥: 마젠타, 위바닥: 시안, 사다리: 옐로우) - 원래는 맵툴을 통해 충돌체를 배치할까 했으나, 이전 모작(랠릭 헌터스 제로)에서 해봣으므로 이번에는 픽셀 충돌을 해보기로 했음. 확실히 생산성은 높다고 들었음.(아주 쉽다는 이야기일듯?ㅎ) 2. 깊이-블랜드-랜더링순서 관계 정리 - 내 생각으론, 랜더링 순서보다 깊이 값이 더 중요한줄 알았음. A가 먼저 그려지고, B가 다음으로 그려진다고 해보자. 그럼 A와 배경이 블랜드 되고, A와 B가 겹쳐진다면 B는 아에 안보임. 이는 A의 깊이가 10, B의 .. 2022. 7. 25.
22-07-23 본 모작은 상업적 용도가 아닌, 공부 목적의 모작입니다. 3.1 마이너 버그 3.1-1 깊이값 조정 - DepthStencil 구현이 되어서, 기존에 만들어두었던 개체들이 화면에 안나오기 시작함. - 적절하게 모든 레벨의 개체 z값을 조정. 3.1-2 메모리 릭 추적 - 사운드 때문에 메모리 릭 발생. 게임 종료시 로드한 사운드를 해제하는 코드가 필요. - 엔진 프로그래머분께 GameEngineCore_Resources 클래스에 해당 코드를 추가해 달라고 건의. 3.1-3 랜더러 x 반전에 따른 충돌 불가능 - 리소스들은 모두 왼쪽을 바라보고 있음. 따라서 방향을 바꿀때마다 랜더러의 x 값을 반전시켜주는 코드가 엔진 프로그래머 분에 의해 추가됨. - 적절한 위치에서 해당 함수를 호출하였음. 그러나, x값.. 2022. 7. 23.
22-07-20 본 모작은 상업적 용도가 아닌, 공부 목적의 모작입니다. 2.1 레벨 변경 조건 - Login 레벨에서는 로그인 버튼을 클릭할 경우. - 나머지 레벨들은 포탈과의 충돌 && 위 화살표키 누르는 경우. 2.2 레벨 변경 전후 일어나야 하는 일 - Veil 클래스 생성 후, 상수 버퍼 Color와 해당 클래스의 Color 멤버를 -Link() -Link() 함수는 엔진 프로그래머분이 따로 구현해두심. - 그리고 델타 타임에 따라 알파 값이 달라지면 됨. 그럼 알파블랜딩 가능. - 그러나, 무작정 해버리면 알파 블랜딩이 동시에 일어날 수 있음. 포탈을 타고 다음 맵으로 가면, 이전 맵의 페이드 아웃과 다음 맵의 페이드 인이 겹침. - 이를 해결하기 위해서 큐 자료를 이용함. 이전 알파 블랜딩 효과가 끝날 때까.. 2022. 7. 20.