개인 자료란 (JE)

  서버 커뮤니티

Profile lanthanide 일반인

lanthanide cb4c2cb879de47a78fea3764ddc3b3bb

Profile

커뮤니티 소통 잡담하기

데이터팩의 성능에 대한 레딧 글

2024.09.28 조회 수 65 추천 수 2

요 며칠 데이터팩을 만지다 보니 성능 최적화를 몇 번 찾아보게 되었는데, 레딧에 좋은 테스트 결과가 있더군요.


영어 자료라 읽기 귀찮으실 분들을 위해 대략적으로 요약하자면 

  1. score는 꽤 빠르다. 특히 predicate 보다는 if score 나  if entity @e[scores=] 이 빠르다.
  2. tag는 더 빠르다.
  3. execute는 살짝 렉이 걸리는 편이다. 줄일 수 있다면 줄이는 편이 좋다.
  4. 하지만 execute는 중간에 실행 조건이 충족되지 않으면 바로 끝나므로 경우에 따라 오히려 빠를 수도 있다.
  5. nbt 수정/검사는 아주 무거운 작업이다. 특히 플레이어가 무겁고, 그나마 storage는 몇 배 빠르다.
  6. execute가 바로 끝나듯이 셀렉터도 바로 끝난다. 예를 들어 @e[tag=asdf,nbt={}] 에서 asdf 태그가 없다면 nbt 검사는 하지도 않는다.
  7. 커맨드 블럭은 function 보다 8배 이상 느리다.

이 정도 되겠습니다. 너무 비약한 것도 있고, 제가 잘못 읽은 게 있을 수도 있으니 원본도 한 번 읽어보시면 좋겠습니다.

https://www.reddit.com/r/MinecraftCommands/comments/w4vjs3/whenever_i_create_datapacks_i_sometimes_do/

그리고 같은 레딧에 성능 최적화 관련 위키 페이지가 있더군요. 저도 아직 다 읽지는 않았으나, 좋은 글인 것 같습니다.

https://www.reddit.com/r/MinecraftCommands/wiki/optimising/

Warning
댓글이 없습니다.

새로운 댓글을 등록해 주세요!