BaekRyang
|
e08f34caab
|
feat: Add per-area physics configuration
- 영역별 물리 설정 `physics` 옵션을 추가했습니다.
- `useMouseInteraction` 훅에서 영역별 물리 설정을 적용하도록 수정했습니다.
- `ImageDistortion` 컴포넌트에서 `selectedAreaId` prop을 제거하고, 마우스 인터랙션 시 `interactingAreaIndices`를 활용하도록 변경했습니다.
- 셰이더에서 텍스처 좌표가 범위를 벗어날 때 부드럽게 페이드 아웃되도록 수정했습니다.
|
2025-11-24 14:23:06 +09:00 |
|
BaekRyang
|
e531a7a762
|
feat: Apply cumulative distortion from all overlapping areas
- 모든 겹치는 영역의 왜곡을 누적하여 적용하도록 변경
- 각 영역별 clamp를 제거하고, 모든 왜곡 계산 후 최종적으로 한 번만 clamp
- 불필요한 `found` 변수 및 `break` 문 제거
|
2025-11-05 12:48:36 +09:00 |
|
BaekRyang
|
e66b078dd8
|
build: Update compiled distribution files
- Update CJS and ESM bundles with coordinate system fixes
- Update type definitions (d.ts, d.mts)
- Add editor styles (CSS)
- Update shader files
- Update source maps
|
2025-11-05 11:20:53 +09:00 |
|
BaekRyang
|
e371321fd2
|
feat: Fix image distortion shader and improve loading state
- Fix distortion.frag.glsl to match Flutter original implementation
- Update computeUV function with single Newton-Raphson iteration
- Fix coordinate transformation (normalized to pixel)
- Fix distortion application logic
- Add break after first matching area (Flutter behavior)
- Add image loading state management
- Add imageLoaded state
- Add loading progress callback
- Add loading UI indicator
- Improve error handling
- Add comprehensive debug logging
- ShaderManager: fetch status and shader lengths
- ThreeScene: shader compilation check, render calls
- ImageDistortion: lifecycle and loading status
- Add test/debug shaders for troubleshooting
- test.frag.glsl: Simple pass-through shader
- debug.frag.glsl: Area visualization shader
- Fix infinite loop bug in animationCallback
- Use setState updater function to avoid dependency
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-04 11:51:39 +09:00 |
|
BaekRyang
|
6ddae08d86
|
init dist
|
2025-11-04 10:17:17 +09:00 |
|