헤엄치는 움직임에 쉬는 틈과 방향 전환을

매 틀 각도를 무작위로 흔들던 것을 나아감/멈춤 두 상태로 바꿨다. 속도가 늘
일정해 쉬는 틈이 없었고, 층이 가로로 길고 세로로 짧아 무작위 방향이 위아래
벽에 계속 부딪히며 튀었다.

- 종류마다 기본 축(물고기·게는 좌우, 해마·해파리는 위아래)에서 조금만 벗어나게
- 나아갈 때마다 목표 각도를 정하고 rotate_toward로 부드럽게 돌아서게
- 속도를 서서히 붙이고 죽여서 멈추고 출발하는 것이 기계처럼 보이지 않게
- 벽 앞에서 튕기는 대신 미리 안쪽으로 돌아서게
- 새우의 튀어 나가는 동작은 짧은 CRUISE + 긴 REST로 흡수

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-02 14:59:26 +09:00
parent 375b340c47
commit 9eaaabd3b3
2 changed files with 152 additions and 67 deletions
+11
View File
@@ -446,3 +446,14 @@ F11이나 메뉴로 창을 화면 전체로 키운다. 그냥 창만 키우면
**앞뒤 단서**: 화면 위쪽(뒷줄)일수록 조금 작고 흐리게 그린다(`_apply_depth`).
3/4 시점에서 깊이를 읽게 해주는 유일한 신호라 없으면 평면처럼 보인다.
### 헤엄치는 리듬
돌아다니는 생물은 두 상태를 오간다 — 한동안 나아가다가(CRUISE) 잠시 멈춘다(REST).
방향은 매 틀 흔들지 않고, 나아갈 때마다 목표 각도를 하나 정해 그쪽으로 부드럽게 돌아선다.
매 틀 각도를 무작위로 흔드는 방식을 먼저 써 봤는데 두 가지가 어색했다. 하나는
속도가 늘 일정해서 쉬는 틈이 없었고, 다른 하나는 층이 가로로 아주 길고 세로로
짧다 보니 무작위 방향이 위아래 벽에 계속 부딪혀 통통 튀는 것처럼 보였다.
그래서 종류마다 기본으로 삼는 축(물고기·게는 좌우, 해마·해파리는 위아래)을 두고
거기서 조금만 벗어나게 했고, 벽 앞에서는 튕기는 대신 미리 안쪽으로 돌아서게 했다.