- EasingFunction에서 step 옵션을 제거하고 독립적인 snapSteps 속성으로 분리 - AnimationLoop에 snapSteps 기반의 움직임 양자화 로직 구현 - 에디터 파라미터 패널에 움직임 단계 조절 슬라이더 추가 - 기본 설정값에 SNAP_STEPS 추가 및 패키지 버전 업데이트 (1.2.10)
45 lines
1.1 KiB
TypeScript
45 lines
1.1 KiB
TypeScript
/**
|
||
* 셰이더 관련 설정
|
||
*/
|
||
export const SHADER_CONFIG = {
|
||
/** 최대 영역 개수 */
|
||
MAX_AREAS: 8,
|
||
/** 최대 포인트 개수 (8영역 × 4포인트) */
|
||
MAX_POINTS: 32,
|
||
/** 최대 드래그 벡터 개수 */
|
||
MAX_DRAG_VECTORS: 8,
|
||
/** 최대 강도 배열 크기 */
|
||
MAX_STRENGTHS: 8,
|
||
/** 최대 렌즈 효과 배열 크기 */
|
||
MAX_LENS_EFFECTS: 8,
|
||
} as const;
|
||
|
||
/**
|
||
* 애니메이션 관련 설정
|
||
*/
|
||
export const ANIMATION_CONFIG = {
|
||
/** 목표 FPS */
|
||
TARGET_FPS: 60,
|
||
/** 델타 타임 (약 16.67ms) */
|
||
DELTA_TIME: 1 / 60,
|
||
} as const;
|
||
|
||
/**
|
||
* 기본 영역 설정값
|
||
*/
|
||
export const DEFAULT_AREA = {
|
||
/** 기본 왜곡 강도 */
|
||
DISTORTION_STRENGTH: 0.5,
|
||
/** 기본 애니메이션 지속 시간 (초) */
|
||
DURATION: 2.0,
|
||
/** 기본 이징 함수 */
|
||
EASING: 'easeInOut' as const,
|
||
/** 기본 벡터 A */
|
||
VECTOR_A: { x: 0.1, y: 0.1 },
|
||
/** 기본 벡터 B */
|
||
VECTOR_B: { x: -0.1, y: -0.1 },
|
||
/** 기본 렌즈 효과 강도 */
|
||
LENS_STRENGTH: 0,
|
||
/** 기본 스텝 양자화 단계 수 (0=없음) */
|
||
SNAP_STEPS: 0,
|
||
} as const; |