잡의 시그니처가 곧 쿼리다
IJobEntity 는 Execute 파라미터를 보고 쿼리를 만듭니다. 그리고 잡의 필드와 파라미터는 각각 1만 개가 공유하는 값과 1만 번 반복되는 대상입니다.
캡슐 하나가 엔티티가 되기까지
SubScene 에 캡슐을 놓으면 커스텀 코드 없이 엔티티가 되어 GPU 인스턴싱으로 그려집니다. 그리고 Baker 는 자기 엔티티만 건드릴 수 있습니다.
C# 을 쓰는데 결과는 네이티브다
Burst 는 IL 을 LLVM 으로 넘겨 네이티브 코드를 뽑습니다. 대신 쓸 수 있는 C# 이 부분집합으로 줄고, 그 제약이 곧 최적화의 조건입니다.
스레드를 직접 만들지 않고 일을 맡긴다
잡 시스템은 워커 스레드를 미리 띄워 두고 일감을 나눠 줍니다. 스레드를 안 만드는 것이 핵심이고, 안전 장치가 나머지 절반입니다.
엔티티는 번호표이고 데이터는 청크에 줄지어 있다
ECS 의 세 조각이 각각 무엇인지, 아키타입과 청크가 왜 필요한지, 쿼리가 엔티티를 하나씩 뒤지지 않는 이유까지.