Assimp.js
Port of Open Asset Import Library (ASSIMP) to javascript. See https://github.com/assimp/assimp.
Install / Use
/learn @clinthidinger/Assimp.jsREADME
Work in Porgress
Port of Open Asset Import Library (ASSIMP) to javascript with emscripten. See https://github.com/assimp/assimp and http://assimp.sourceforge.net.
Examples:
Build:
Go to https://kripken.github.io/emscripten-site/docs/getting_started/downloads.html to get emscripten.
./emsdk update;
./emsdk install --build=Release latest;
./emsdk activate --build=Release latest;
Posssibly do: source ${YOUR_EMSCRIPTEN_DIR}/emsdk_env.sh
Then do: git submodule update --init --recursive make
Run from repo directory:
python -m SimpleHTTPServer 8000
Then open http://localhost:8000/examples/assimp_to_threejs_to_assimp.html
Rebuilding:
make clean; make
Building a debug build:
make debug
TODO:
Update to latest assimp. Will have to put printf("...\n") statements in Importer::ReadFile() to figure out problem. Most likely need to add a cpp file.
ASSERTIONS=2 causes "RangeError: Maximum call stack size exceeded" This is supposed to fix it, but doesn't seem to work: On Linux and Mac OS X, you can just do NODE_JS = ['node', '--stack_size=8192'] in the Emscripten Compiler Configuration File (.emscripten). On Windows, you will also need --max-stack-size=8192, and also run editbin /stack:33554432 node.exe.
Using "-s SAFE_HEAP=1" will cause a crash on export due to mem alignment issues. They will likely happen in the material export. Look into "-s WASM=1".
For unbound types: Pay attention to ordering of sources in makefile. Also, make sure to include the appropriate headers in embind files.
Related Skills
node-connect
343.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
92.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.3kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
