Show HN: Emotive Engine - 하나의 패턴이 작동한다는 것을 증명하기 위해 8개의 요소 셰이더를 작성했습니다.
hackernews
|
|
💼 비즈니스
#ai 마스코트
#canvas
#shader
#tip
#webgl
#애니메이션
원문 출처: hackernews · Genesis Park에서 요약 및 분석
요약
약 6개월의 작업을 거쳐 개발된 오픈 소스 캐릭터 애니메이션 엔진 '이모티브 엔진'이 공개되었습니다. 이 엔진은 불, 물, 얼음 등 8가지 원소를 위한 개별 셰이더 시스템과 161개의 제스처를 포함하여 Canvas 2D와 WebGL 3D에서 마스코트를 렌더링할 수 있습니다. 제작자는 아키텍처의 반복 가능성을 입증하기 위해 각 원소에 GLSL 프래그먼트 셰이더와 GPU 인스턴싱 기술을 적용했으며, 개발자는 npm을 통해 해당 라이브러리를 설치해 활용할 수 있습니다.
본문
Expressive AI mascots for modern interfaces Real-time character animation engine with Canvas 2D and WebGL 3D rendering. 8 elemental shader systems. 160+ elemental gestures. One replicable pattern. npm install @joshtol/emotive-engine import { EmotiveMascot3D } from '@joshtol/emotive-engine/3d'; const mascot = new EmotiveMascot3D({ coreGeometry: 'crystal', assetBasePath: '/assets', // self-hosted assets (see below) }); mascot.init(document.getElementById('container')); mascot.start(); mascot.setEmotion('joy'); mascot.express('bounce'); mascot.morphTo('heart'); mascot.feel('happy, bouncing'); // Natural language control 3D mode requires Three.js: npm install three import { EmotiveMascot } from '@joshtol/emotive-engine'; const mascot = new EmotiveMascot(); await mascot.init(document.getElementById('container')); mascot.start(); mascot.feel('happy, bouncing'); 2D mode has no dependencies and requires no external assets. | | Shared: 15 emotions · 180+ gestures · Natural language feel() API · TypeScript definitions · Unified API | Crystal Soul Subsurface scattering shader | Moon Phases 8 phases with tidal lock | Solar Eclipse Corona and diamond ring | | Blood Moon Eclipse Rayleigh scattering simulation | | Hello World | Basic Usage | Breathing App | | Event Handling | Rhythm Sync | The npm package ships JavaScript only. GLB models, textures, and HDRI maps must be self-hosted (~24 MB). They live in assets/ in this repository. new EmotiveMascot3D({ assetBasePath: '/assets', // wherever you host the assets folder }); | Hosting Option | assetBasePath | |---|---| Copy to public/ | '/assets' | | CDN / S3 | 'https://cdn.example.com/emotive-engine/assets' | | GitHub Pages | 'https://joshtol.github.io/emotive-engine/assets' | / ├── models/Elements/ # GLB models for elemental effects ├── textures/ # Crystal, Moon, Sun textures └── hdri/ # Environment maps (optional) { "imports": { "three": "https://unpkg.com/[email protected]/build/three.module.min.js" } } import { EmotiveMascot3D } from 'https://unpkg.com/@joshtol/emotive-engine/dist/emotive-mascot-3d.js'; | Doc | Description | |---|---| | API Reference | All methods, configuration options, emotions, gestures, geometries | | LLM Integration | Natural language feel() API, system prompt examples | | Gestures | Full gesture catalog (180+ base + 160+ elemental) | | Quick Reference | Cheat sheet for emotions, undertones, and common patterns | | Architecture | Internal design and rendering pipeline | git clone https://github.com/joshtol/emotive-engine.git cd emotive-engine npm install && npm run build && npm run local # → http://localhost:3001 MIT — see LICENSE.md
Genesis Park 편집팀이 AI를 활용하여 작성한 분석입니다. 원문은 출처 링크를 통해 확인할 수 있습니다.
공유