2.9 물리 파라미터 튜닝 절차
그림 2-4. 실측, 단일 파라미터 변경, 반복 실험, 오차 평가를 분리한 튜닝 루프.
2.9.1 관찰량부터 정의한다
파라미터를 바꾸기 전에 비교할 관찰량(observable)을 정한다.
| 현상 | 관찰량 예 | 우선 점검 파라미터 |
|---|---|---|
| 낙하 | 충돌 시각, 최대 반동 높이, 정착 시간 | scale, gravity, restitution, timestep |
| 미끄러짐 | 임계 경사각, 정지 거리 | friction pair, combine mode |
| 넘어짐 | 임계 외력, 각속도 | COM, inertia, contact geometry |
| 파지 | slip rate, 필요한 finger force | finger/object friction, pad geometry, mass |
| 고속 관통 | penetration count, 최소 거리 | timestep, collider thickness, CCD |
2.9.2 한 번에 하나씩 바꾼다
재현 가능한 초기 상태와 random seed를 고정한 뒤 한 파라미터만 바꾼다. grid search를 하더라도 실험 ID와 전체 configuration을 저장한다. 손으로 GUI 값을 바꾼 뒤 기억에 의존하지 않는다.
2.9.3 권장 체크리스트
- Stage 단위와 geometry scale을 확인한다.
- collision proxy를 시각화해 gap/penetration을 확인한다.
- mass와 COM을 실측값에 맞춘다.
- inertia를 계산하거나 CAD 값으로 입력한다.
- restitution을 낙하 실험으로 맞춘다.
- friction을 tilt/pull 실험으로 맞춘다.
- physics timestep과 solver 설정을 조정한다.
- 필요 body에만 CCD를 적용한다.
- 여러 초기 pose와 속도에서 검증한다.
- 평균뿐 아니라 실패율과 worst case를 기록한다.