프로세스와 스레드, 그리고 갈아 끼우는 값
스레드를 바꾸는 것과 프로세스를 바꾸는 것은 값이 다릅니다. 무엇을 갈아 끼우는지, 갈아 끼운 뒤에 왜 한동안 느린지, 그래서 워커를 몇 개나 만들어야 하는지 봅니다.
램이 느려서 캐시가 생겼다
CPU 는 한 사이클에 일하는데 램은 수백 사이클 걸립니다. 그 사이를 메우려고 생긴 것이 캐시이고, 캐시가 기대는 것이 지역성입니다. 계층이 몇 단이고 각 단이 얼마인지부터 봅니다.
내비메시는 바닥이 아니라 설 수 있는 자리다
유니티가 내비메시를 구울 때 실제로 하는 일과, 런타임에 NavMeshAgent 가 하는 일입니다. 보켈로 덮고 반지름만큼 물러나는 과정, 폴리곤 통로와 코너, 카빙과 링크가 치르는 값.
통로 안에서 줄을 당긴다
길찾기가 내놓은 계단 경로와 폴리곤 통로를 사람이 걷는 선으로 펴는 방법입니다. 보이는 점끼리 잇는 스트링 풀링(String Pulling)과, 통로 안 최단을 한 번에 뽑는 깔때기 알고리즘(Funnel Algorithm).
지도 한 장을 모두가 읽는다
유닛 수백 마리가 같은 곳으로 갈 때 각자 길을 찾는 대신, 목표에서 거꾸로 채운 지도를 한 장 만들어 모두가 읽는 방법입니다. 흐름 필드(Flow Field)의 세 겹 구조와 손익분기점, 목표가 바뀔 때 치르는 값.