openjutsu
영상에서 원클릭으로 인물 교체, ComfyUI·MiniMax H3 기반 오픈소스 로컬 힉스필드 겐주츠 대안, FLUX.3 Klein 재조명 지원
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Interactive Chladni pattern lab with modal tuning, live particles, optional audio and high-resolution PNG export.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Sand on a singing plate, full screen. Sound gathers the sand into a Chladni figure, and you get to break it: swipe to scatter the lines, hold to drag a piece like rubber, flick to throw it. It bounces off the edges and finds its way home. Turn the frequency with the wheel, play figures on the keyboard like a piano, or sing a note into the microphone and the field follows. Save a frame as PNG or record a short video.
Open Resona · Download the source
| Gesture | Mouse | Touch |
|---|---|---|
| Break the lines | swipe quickly over the field | a quick stroke right after touching |
| Drag a piece | hold and move | touch, wait a moment, then move |
| Throw | hold and let go mid-motion | the same with a finger |
| Shock wave | double click | double tap |
| Turn the frequency | wheel, trackpad, or the slider under the frequency | two fingers up and down, or the slider |
Keys: A S D F G H J K L play nine figures with their notes, Space pauses (the frame freezes and can be saved), R scatters the sand, Esc closes the panel. Up to eight pieces can fly at once; a ninth lets go of the oldest.
The ribbon at the bottom holds all 48 figures plus Random. When the frequency slider comes to rest, it glides to the nearest resonance so the sand forms clean lines. Settings, behind the button in the top right, open a glass panel:
Sound stays off until you press Sound, and the choice is remembered. Sing a note asks for the microphone only when pressed. Settings live in this browser; there are no accounts, keys or external services.
The number of grains matches the device (200,000 on a computer, 80,000 on a phone). If the field drops below 40 frames per second for three seconds, it uses less sand and says so in the corner.
Node.js 20 or newer; nothing to install.
npm start
Open http://127.0.0.1:4178 in a browser with WebGL2 (a recent Chrome, Safari or Firefox). The server listens on this computer only. On macOS, double-click start.command to start the server and open the page.
Static ES modules, no bundler, no dependencies:
physics.js: Kirchhoff–Love plate, 48 presets, and modeSet, the modal coefficients sent to the GPU.sand.js: the law that moves the sand, one source for both JavaScript and GLSL. engine.js: WebGL2, grains in float textures, background glow, PNG snapshots.pieces.js: flight, bounce and return of thrown pieces. gestures.js: pointer input turned into intents (break, grab, throw, shock, tune).audio.js: all sound in Web Audio, no files. pitch.js and voice.js: the note from the microphone. recorder.js: video. thumbs.js: ribbon thumbnails.palettes.js and settings.js: palettes and saved settings. app.js: the shell that ties it together.The plate fills the screen. Its physics is that of a square plate stretched over the window, which keeps all 48 figures recognisable on any screen shape: on a rectangular plate the two modes of each figure would split apart in frequency.
A rectangular isotropic Kirchhoff–Love plate, simply supported on all four edges. Shape of a single mode:
phi_mn(x,y) = sin(m*pi*x/a) * sin(n*pi*y/b)
D = E*h^3 / (12*(1-nu^2))
f_mn = pi/2 * sqrt(D/(rho*h)) * ((m/a)^2 + (n/b)^2)
Each figure mixes the mode pair (m,n) and (n,m). Manual mode computes the response of 81 modes to a point force at (0.37a, 0.43b), keeps the 16 strongest, and projects them onto the phase of the dominant mode, so the sand settles on nodal lines rather than points. Modal response: F_mn / (omega_mn^2 - omega^2 + i*2*zeta*omega_mn*omega).
Grains move toward the minima of the vibration amplitude. Their transport, collisions, size, scatter and light are an artistic approximation. Free edges and arbitrary plate shapes are not modelled. This is not an engineering calculation; frequencies come from the model and have not been measured on a real plate.
Materials use typical reference values, not the datasheet of a specific alloy. PNG saves what is on screen: 1× and 2× at the window size, 4K with a 3840 px long side.
npm test
node scripts/build.mjs copies every module into public/ for Vercel.
MIT, see LICENSE.