K-CodeCraft / ACTProject

0 stars 0 forks source link

feat(KJH) : MapObject배치(#27) #31

Closed JamesHe65 closed 6 days ago

JamesHe65 commented 1 week ago

eatuer : 맵 오브젝트 설치 및 유지 시스템.

기능 추가사항

  1. Client.cpp - Init() 마지막 부분 코드 처럼 MapObjDesc구조체를 채워서 AddMapObj();를 하면 준비 완료.
  2. Engine - 02. Managers - MapManager클래스로 이동 후, Update() 함수에서 if문 추가해주면 버튼 클릭 중 해당 오브젝트를 터레인(바닥)에 배치할 수 있음.

해당 오브젝트를 삭제하고 싶을 경우의 기능은 아직 미구현. 만약 삭제하고 싶을 시

  1. Resources폴더 - MapObj - MapObjectLists.txt 파일 삭제 하면 배치한 옵젝 전부 삭제.

엔진 변경사항

  1. Game.cpp - Run() - 맵매니저 Init() 추가, Update()가 끝난 후 종료 직전에 맵매니저 ExportMapObj() 함수 추가.(저장된 맵 오브젝트들 파일로 Export함수)

  2. Scene.cpp - Update(), Pick() 일부분 코드 추가 왼쪽버튼을 누르면, 피킹 및 맵 오브젝트 생성

  3. 카메라 프로젝션 행렬(S_MatProjection)이 UICamera랑 메인카메라가 공유되는 현상이 발견되어서 원근투영쪽에 전역행렬 넣어둠. 및 S_MatProjection이 업데이트되는 부분이 없어서 추가함.

  4. 모델렌더러, GetModelRenderer()->GetModel()에서 TextureName이 필요해서 함수 추가함.

  5. 카메라 스크립트 -> Shift 누르면 빨라지는 함수 추가. PR전에 주석처리함.

  6. 클라이언트는 UI를 마지막으로 옮겼고, 테스트 터레인, 맵 정보 구조체 추가.