4096개 엔티티로 테스트했는데 생각보다 부하가 1도 없어서 게임의 최대 유닛 제한을 1만으로 할까 생각 중

2ce59e21ecd418986abce8954f82706ae71bd6

성능 테스트를 위해 적 탐지 범위를 크게 늘렸기 때문에 멀리 뒤에서도 달려옴. 실제 게임에서는 적부터 한 2.5열 정도의 거리부터 돌진함. 그 전까지는 부대를 따라서 이동.


2ce49e21ecd418986abce8954780726c7b6afcdd

가장 큰 문제는 이 시점에서 내 캐릭터가 안 보일 때가 너무 많다는 것이다.

그 다음 문제는 넉백 강도 벨런스가 쉽지 않음... 강한 넉백은 공격을 끊을 수 있기 때문이다. 일단 기획 상 스태미너가 존재하기 때문에 1대1에서 무한 넉백은 원천 봉쇄했음.


1. 도트 찍기

일단 6프레임으로 찍었는데, 좀 뚝뚝 끊기는 기분이 든다

나중에 시간 나면 프레임 추가 할 거임


2. 애니메이션 셰이더 커스터마이징

기본적으로 quad mesh 위에 스프라이트의 특정 부분을 보여주는 것으로 애니메이션을 재생하고 있음.(turbo make games 유튜브에서 본 대로)

그리고 좌/우를 바라볼 때 tiling을 반전을 해서 보여줬는데,

이게 휴식/이동 애니메이션에서는 못 알아챘는데, 왼쪽 방향을 볼 때 tiling만 반전하고 offset을 반전을 안 해서 한 프레임씩 밀렸음.

그리고 애니메이션 시작 시 첫 프레임부터 시작하지 않았던 문제. 이건 셰이더 그래프 보고 값 입력하는 코드 추가하면 됨.

빠르게 수정했음.


3. 최적화

IJobEntity를 [WithChangeFilter]와 [WithPresent] 어트리뷰트로 더욱 최적화했다.

특히 WithChangeFilter는 사용법이 까다로우니 조심히 써야한다.

전보다 엔티티는 더 많이 설치했는데 cpu와 메모리 사용량은 적어지는 기적...


4. 시간차

2일 전까지는 죽으면 바로 삭제, 공격 즉시 판정

하지만 이제 죽음 상태가 되면 죽음 애니메이션 재생 후 disable.

공격도 애니메이션이 진행돼야 판정이 생김.


오늘 할 거:

기획

유닛 이동 방식 개선