사운드 매니저를 빠르게 만들어보았다.
3D와 2D 음향이 있는데 2D는 거리, 방향 상관없이 동일하고 3D는 거리방향이 존재하는 것 같았다.
나중에 꼭 좀더알아보자
MVVM으로 만들었다. 구조가 좋았다. 유지관리가 편해보였다.
다만들었다 기분이 좋았다.
📌 문제의 알고리즘과 분석
문제점 1.
마우스로 입력하지 않은 값은 건설이 불가능하다.
문제점 2.
건설 가능 여부를 확인 후 청사진은 필수적으로 설치가 된다.
초기에 만들어줄 건물은 마우스로 입력하는 게 아닌 코드로 좌표를 입력해줘야 하며, 건설이 가능한지 판단 후 청사진이 아닌 실제 건물이 생성되어야 했지만 불가능 했습니다.
📌 어떻게 해결할 것인가?
문제점 1 분석.
건설 위치를 선정하는 값은 마우스 입력과 상관없이 Vector3의 값만 있으면 가능하다.
문제점 2 분석.
건설을 시도하기 전에도 건설 가능 여부를 판단할 시점이 존재한다.
두 가지 문제점의 공통적인 부분은 하나의 기능이 만들어낸 값을 오로지 내부에서만 처리하고 처리하는 과정도 전혀 다른 기능이었습니다.
그리하여 값을 전달하는 방식으로 변경하고 하나의 함수의 기능을 나누기로 했습니다.
📌 결과
코드뿐만이 아닌 다른 방식으로도 값만 주면 건설 여부를 판단할 수 있게 되었고, 판단 여부를 콜백을 받고 어떤 행동을 할지도 자유롭게 설정 가능하게 되었습니다.