Minecraft Skin Viewer API
January 3, 2025 · View on GitHub
基于 skinview3d 的 Minecraft 皮肤渲染 API 服务。
系统要求
-
Node.js >= 14.0.0
-
如果在 Linux 系统上运行,需要安装 Chrome 的依赖库(会在
npm install时自动安装) -
如果自动安装失败,需要手动安装以下依赖:
Debian/Ubuntu:
sudo apt-get update && sudo apt-get install -y \ libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 \ libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 \ libxrandr2 libgbm1 libasound2CentOS/RHEL:
sudo yum install -y \ nss atk at-spi2-atk cups-libs libdrm libxkbcommon \ libXcomposite libXdamage libXfixes libXrandr \ mesa-libgbm alsa-lib
API 端点
GET /render
渲染 Minecraft 皮肤的 3D 视图并返回 PNG 图片。
参数
skin(必需): Minecraft 皮肤的 URLcape(可选): 披风的 URLwidth(可选): 图片宽度,默认为 300height(可选): 图片高度,默认为 400angle(可选): 水平查看角度(度数),默认为 0angleY(可选): 垂直查看角度(度数),默认为 30
示例
使用皮肤 URL:
http://your-domain.com/render?skin=https://example.com/skin.png&width=300&height=400&angle=45&angleY=30
GET /health
健康检查端点,返回服务器状态。
配置选项
服务器通过环境变量进行配置。创建 .env 文件(基于 .env.example)来设置以下选项:
PORT: 服务器端口(默认:3000)RENDER_TIMEOUT: 渲染等待时间,毫秒(默认:10000)DEFAULT_WIDTH: 默认图片宽度(默认:300)DEFAULT_HEIGHT: 默认图片高度(默认:400)
部署说明
- 安装依赖:
npm install
- 构建项目
npm run build
- 配置环境变量:
# .env 文件会在安装时自动从 .env.example 创建
vim .env
- 启动服务器:
npm start
注意事项
- 后续直接npm start 即可
- 确保服务器有足够的内存来运行 Puppeteer
- 建议在生产环境中使用 PM2 或类似工具来管理进程
- 需要稳定的网络连接以访问皮肤资源
致谢
本项目基于 skinview3d 开发,这是一个由 Three.js 驱动的 Minecraft 皮肤查看器。
skinview3d 特性
- 支持 1.8 皮肤
- 支持高清皮肤
- 支持披风
- 支持鞘翅
- 支持细手臂
- 自动模型检测(细/默认)
- 支持 FXAA(快速近似抗锯齿)
许可证
本项目采用 MIT 许可证。详见 LICENSE 文件。