
블록의 Static mesh가 얇아서 Impact point가 이미 설치되어 있는 블록의 위치로 조정되는 이슈
Character Forward Vector에 -1을 곱한 값을 impact point에 더해서 impact point를 플레이어쪽으로 약간 당겨 와서 해결
해결하는데 1시간 정도 소요
자면서 생각해 봤을 때 아무래도 Voxel은 블록 하나 단위로 두거나 파괴하기가 너무 힘들 것 같음
최적화 방법론을 찾다 보니 여러 액터를 하나의 스태틱 메시로 만들어 배치하고 일정 거리 내의 스태틱 메시만 다시 블록 액터로 변환시키는 방법이 가능할 듯하여 시도
스태틱 메시에서 피봇 위치를 바꾸고 BP를 만들 수 있음! 기존 BP_Block_Placed 블록의 6면 큐브들을 Merge하여 하나의 Static mesh component로 만들고 피봇 위치를 0,0,0으로 변경한 뒤 BP를 만들고 로직 복사하여 생성, 더이상 큐브 크기의 절반만큼 +/-하여 배치하지 않아도 됨
Platform 생성, 8*8 크기의 BP_Block_Placed를 합친 static mesh, BP_Platform 생성, SM_Platform을 사용하여 만든 블루프린트, 플레이어와 위치가 가까워질 경우 블록으로 변경, 멀어질 경우 블록들을 다시 스태틱 메시로 변경하는 방법도 있다함
합친 SM 도입 -> 6개의 큐브 SM을 하나의 SM으로 대체, 넓은 플랫폼 도입 -> 64개의 SM을 하나의 SM으로 대체로 최적화 시도
합친 SM 도입 만으로도 8000개 액터 수에도 프레임 드랍이 없음, 더 좋은 최적화를 위해 레벨 스트리밍 등을 시도해 볼 수 있겠지만 우선 플랫폼과 SM 기반 최적화로 맵 구현하는것과 NPC 생성을 우선해야함
방법 서칭 및 구현에 0406 6시간 0407 1시간 총 7시간 정도 소요

1차 기본 환경 생성 완료, 1시간 정도 소요 / 유리, 나무 계단 블록 추가 1시간 정도 소요
나중에 만들 것: 문, 토치, 집 빠르게 만들고 NPC 구현 진행



풀, 꽃 추가 (퀵셀 에셋 활용 폴리지 브러시로 빠르게 생성하려 했지만 왠지 폴리지가 땅을 인식하지 못해서 땅 블록의 collision을 BlockAllDynamics -> Default로 변경하여 해결)
맵 구현 완료, 3시간 정도 추가 소요