之前自己的项目一直使用 skinview3d 做 Mincraft 皮肤的预览,依赖 Three.js 且产物比较大。
于是糊了一个更轻量的实现:
仓库地址: https://github.com/daidr/minecraft-skin-renderer
简单的体验 Demo (playground): https://mcskin.daidr.me/playground
文档: https://mcskin.daidr.me
优势
- 完整支持 steve/alex 模型渲染、披风渲染、鞘翅渲染
- 完备的骨骼动画系统(待机、走、跑、飞)
- ESM + 完备的类型支持,支持树摇
- 同时支持 WebGL 和 WebGPU 后端
- 零依赖,3D 预览组件引入后体积仅为 14kB ( gzip )
- 支持用 2d canvas 做一些简单的渲染(头像、三视图等),2d canvas 不依赖浏览器环境,配合 @napi-rs/canvas 可以在 NodeJS 做服务端渲染。
截图
3D

2D
