91 lines
4.6 KiB
JavaScript
91 lines
4.6 KiB
JavaScript
const SITE_URL = 'https://spineviewer.yeomai.site/'
|
||
|
||
Page({
|
||
data: {
|
||
stats: [
|
||
{ value: '9', label: '内置运行时版本' },
|
||
{ value: '3.4–4.3', label: '覆盖的 Spine 版本' },
|
||
{ value: '8', label: '界面语言 · 简繁英日韩俄西德' },
|
||
{ value: '400px', label: '缩略图自动生成' },
|
||
],
|
||
fileChips: ['skel', 'skel.bytes', 'json', 'atlas', 'atlas.txt'],
|
||
features: [
|
||
{
|
||
title: '本地运行时',
|
||
desc: '官方运行时全部放在插件本地 lib/ 目录,不依赖 CDN 下载。激活校验需要联网,其余预览过程都在本地完成。',
|
||
},
|
||
{
|
||
title: '跨文件夹自动配对',
|
||
desc: 'Eagle 把每个文件拆成独立 item 文件夹,插件扫描同级目录自动关联骨骼、atlas 与贴图,忽略 -pro / -ess / -pma 等后缀。',
|
||
},
|
||
{
|
||
title: '9 个版本自动识别',
|
||
desc: '从骨骼数据读取版本号并匹配运行时:3.4 / 3.5 / 3.6 / 3.7 / 3.8 / 4.0 / 4.1 / 4.2 / 4.3,带 -beta 的完整版本号也会显示在水印里。',
|
||
},
|
||
{
|
||
title: '画面与皮肤切换',
|
||
desc: '浮动播放列表按需自适应、条目多时独立滚动;切换皮肤后按 setup pose 重建槽位附件,画面立即刷新。',
|
||
},
|
||
{
|
||
title: '完整时间轴',
|
||
desc: '拖动定位、显示时长与帧号、秒刻度,蓝色短线标出骨骼 / 插槽 / 约束的关键帧位置,悬停即可查看。',
|
||
},
|
||
{
|
||
title: '缩略图自动化',
|
||
desc: '导入即渲染首帧缩略图(400×400),右下角带 Spine 官方 badge、左下角标注版本号;资源暂时缺失时先给回退图,补齐后自动重渲。',
|
||
},
|
||
],
|
||
versions: [
|
||
{ ver: '3.4 / 3.5', desc: '使用官方 3.4.02、3.5.51 运行时与匹配的二进制分支,已验证多组官方示例的姿势对比。' },
|
||
{ ver: '3.6 / 3.7', desc: '额外带二进制解析兼容层(移植自官方同版本 SkeletonBinary),支持 3.7 的 IK 压缩 / 拉伸与音频事件。' },
|
||
{ ver: '3.8 – 4.3', desc: '二进制文件完整支持;4.3 等带 -beta 后缀的完整版本号也会显示在缩略图水印中。' },
|
||
],
|
||
steps: [
|
||
'导入整套文件:把 .skel / .json + .atlas + .png 放在同一个文件夹导入 Eagle',
|
||
'自动配对资源:点击任一文件,插件从同级 item 文件夹定位骨骼、atlas 与贴图',
|
||
'识别版本:读取骨骼数据里的版本号,加载匹配的本地运行时',
|
||
'预览与缩略图:实时播放画面,缩略图自动生成,资源补齐后自动重渲并刷新列表',
|
||
],
|
||
install: [
|
||
'在 Eagle 插件社区获取 SpineViewer 插件包,插件页提供下载与安装说明',
|
||
'双击 .eagleplugin 安装;或在 Eagle 插件面板(快捷键 P)右键选择「打包 / 加载插件」',
|
||
'把同一套 Spine 导出文件放进同一个文件夹导入 Eagle,点击任意文件即可预览',
|
||
],
|
||
faqs: [
|
||
{ q: '插件会接管普通图片吗?', a: '不会。只接管 skel、skel.bytes、json、atlas、atlas.txt,普通图片仍由 Eagle 原生预览。' },
|
||
{
|
||
q: '预乘(PMA)设置保存在哪里?',
|
||
a: '存在 Eagle 用户数据目录的 SpineViewer/preview-settings/ 下,按素材库与素材 ID 区分;不会修改 metadata.json、标签或注释。',
|
||
},
|
||
{
|
||
q: '3.6 / 3.7 的二进制解析可靠吗?',
|
||
a: '解析层移植自官方同版本,已验证多套官方示例;文件损坏、截断或版本不匹配会直接报告解析错误,不会用错误姿势渲染。',
|
||
},
|
||
{
|
||
q: '缩略图是怎么生成的?',
|
||
a: '在 Node 里用 @napi-rs/canvas 跨 item 文件夹读取资源渲染首帧,尺寸 400×400,右下角为 Spine 官方 badge,左下角是完整版本号。移除这个依赖只影响缩略图,画面预览不受影响。',
|
||
},
|
||
{
|
||
q: '小程序版和插件是什么关系?',
|
||
a: '小程序版支持 Spine 4.2 导出的文件,用来在手机上快速看一眼效果;3.4–4.3 全版本识别、皮肤切换、时间轴、缩略图这些完整能力都在桌面插件里。',
|
||
},
|
||
],
|
||
},
|
||
|
||
goPreview() {
|
||
wx.switchTab({ url: '/pages/viewer/viewer' })
|
||
},
|
||
|
||
goBuy() {
|
||
wx.switchTab({ url: '/pages/buy/buy' })
|
||
},
|
||
|
||
// 个人主体小程序打不开外部网页,只能把网址给用户自己复制
|
||
copySite() {
|
||
wx.setClipboardData({
|
||
data: SITE_URL,
|
||
success: () => wx.showToast({ title: '网址已复制', icon: 'none' }),
|
||
})
|
||
},
|
||
})
|