FPS Arena는 내려받은 에셋이 하나도 없습니다. 맵도 캐릭터도 효과음도 코드로 만듭니다. 그래서 엄폐물이 전부 민무늬 상자였습니다.
블렌더를 붙였습니다. 다만 손으로 조형하지 않습니다. 파이썬 스크립트가 상자를 쌓아 모델 파일로 내보냅니다. 컨테이너 708, 나무 상자 204, 방벽 120, 드럼통 264, 파렛트 132 삼각형. 다 합쳐 75KB입니다.
판정은 그대로 상자입니다
소품은 기존 상자 콜라이더 위에 얹히는 겉모습일 뿐입니다. 메시 콜라이더로 바꾸지 않았습니다.
바꾸면 세 가지가 따라옵니다. 네비메시를 다시 구워야 하고, "얇은 벽 0.55m" 보장이 깨지고, 되감기 히트박스가 무거워집니다. 되감기는 사격 한 번마다 히트박스를 과거로 되돌렸다 복구하는 연산이라, 여기가 무거워지면 교전이 몰릴 때 그대로 드러납니다.
모양이 좋아지자고 판정을 흔들 이유가 없었습니다. 모델 파일이 없으면 게임은 조용히 예전 상자로 돌아갑니다.
정규화가 몸통을 눌렀습니다
나무 상자 모서리가 비스듬히 깎여 나왔습니다.
소품은 1m 정육면체에 맞춰 굽습니다. 그런데 대각 보강대를 몸통보다 길게 뒀더니, 크기를 1m에 맞추는 과정에서 그 삐져나온 조각이 기준이 되어 몸통을 눌러 버렸습니다. 조각 하나가 나머지 전부를 찌그러뜨린 것입니다.
파렛트는 같은 함정을 피하려고 처음부터 1.9 × 0.14 × 1.9 비율로 만듭니다. 정사각으로 만들면 정규화가 널빤지를 뭉갭니다.
파렛트를 맵에 놓을 때도 걸렸습니다. 재질로 이으면 녹슨 재질을 드럼통 테와 공유하는 바람에 테마다 파렛트가 하나씩 생겼습니다. 재질이 아니라 자리로 잇게 고쳤습니다.
실루엣이 생기니 겹침이 보였습니다
민무늬 상자였을 때는 안 보이던 것들이 드러났습니다. 전부 원래 있던 문제입니다.
- 교차로: 배관이 건물 한복판에 묻혀 있었습니다 → 벽면으로
- 교차로: 길목 상자가 건물 안에 있었습니다 → 가운데 통로로
- 격납고: 상자가 ㄱ자 벽 위에 걸터앉아 있었습니다 → 벽 앞으로
- 부두: 컨테이너 끝이 창고를 2m 뚫고 있었습니다 → 줄을 짧게
- 숲: 덤불이 큰 바위 속에 있었습니다 → 바깥으로
- 배: 뒤쪽 크레인이 선교 안에 서 있었습니다 → 앞쪽 한 대만
- 공용 스폰 담이 맵마다 다른 건물에 파묻혀 있었습니다 → 통로 안으로
고치고 끝내면 다음에 또 생깁니다. 그래서 검사를 만들었습니다. 축에 나란한 콜라이더가 세 축 모두 0.6m 넘게 물리면 실패입니다. 바깥벽 모서리는 예외로 뒀습니다 — 거기는 안 만나면 오히려 구멍이 뚫립니다. 여섯 맵 모두 0쌍입니다.
덧붙임 (2026-08-10). 이 "0쌍"은 거짓 초록불이었습니다. 검사가 드럼통을 아예 보지 못하고 있었고, 그 사이 부두에서는 통이 방벽에 박혀 있었습니다. 원인과 고친 내용은 겹침 0쌍은 거짓말이었습니다에 따로 적었습니다.
맵을 44m에서 56m로
손으로 박아 둔 좌표를 같은 비율로 밉니다. 위치만 밀고 크기는 안 건드립니다. 상자까지 같이 키우면 엄폐물이 사람보다 커집니다.
배는 제외했습니다. 갑판 폭이 선체와 맞물려 있어서 좌표만 밀면 배 밖 허공에 서게 됩니다.
넓히면 서로 못 만나는 게 가장 큰 위험이라, 넓히면서 시야 점검으로 계속 쟀습니다. 격납고는 386쌍 중 170쌍, 교차로는 326쌍 중 141쌍이 서로 보입니다. 둘 다 교전 7/7, 얇은 벽 0.
외벽에는 기둥·굽도리·처마를 붙였습니다. 기둥만 실물이고 나머지는 콜라이더가 없는 장식입니다. 얇아야 보기 좋은데, 얇은 콜라이더는 몸이 끼거나 튕기는 원인이 됩니다.
미니맵에 지형을 깔았습니다
레이더 바닥에 맵 평면도를 깝니다. 미니맵용 도형을 따로 그리지 않고 맵이 실제로 세운 콜라이더에서 뽑습니다. 두 벌로 두면 맵을 고칠 때 어긋나서, 없는 벽이 미니맵에만 남습니다. 장식은 안 그립니다. 총알도 안 막는 걸 그리면 미니맵이 거짓말을 하게 됩니다.
여기서도 한 번 걸렸습니다. 바닥이 통째로 그려져서 "지형이 위로 어긋나 보인다"가 됐습니다. 거르는 기준을 상자 높이로 잡았는데 아레나 바닥이 56 × 1 × 56이라 높이 1.0으로 통과해 버렸습니다. 그 사각형은 플레이어가 아니라 맵 중앙에 붙어 있으니 움직일 때마다 어긋나 보였습니다.
기준을 윗면의 높이로 바꿨습니다. 크기로 거르려던 것이 사실은 "이게 엄폐물인가"를 묻는 일이었습니다. 재는 대상을 잘못 고르고 있었던 것입니다.