SAO Utils – SAO风格启动菜单开发日志<六期>

SAO Utils 开发进度
当前版本 Experimental 1 迭代 5 下载页面
目标平台 32/64位 Windows(Vista, 7, 8, 8.1, , 10)
当前体积 100MB (Programs:80M + Fonts:10M + Images + Sounds)
开发进度
10%
2018-06-30
SAO Utils 开发日志
原型 alpha beta exp v1.0
m1 m2 a1 a2 b1 e1 e2
2019-05-03 1.Exp 1 Update 2 (0.5.2) 更新发布
2019-04-30 1.Github 开发进度管理Bug 反馈平台 上线
2.更新模块及目录结构设计
2018-09-11 1.更新模块及目录结构设计
2018-09-09 1.Exp 1 Update 1 (0.5.1) 更新发布
2018-06-30 1.更新通用界面设计及插件信息文件标准
2018-04-21 1.更新开发笔记及开发计划
2018-01-04 1.Exp 1 (0.5.0) 实验性版本发布

投票

你希望 SAO Utils 下个版本的开发代号是?

View Results

Loading ... Loading ...

开发计划 V0.1.1 | 2018-09-29

第三次圣杯战争完全重构

SAO Utils 各版本开发详情
Alpha Beta Exp
基本框架 wxWidgets 2.9 wxWidgets 3.0 Qt 5.12.2
图形 API GDI GDI + Direct3D 9 GDI + OpenGL 2.0
开发语言 C/C++ C/C++ C/C++/QML
运行时库 TDM-GCC MSVC 2005 MSVC 2019 + VC-LTL
VR 支持 - 内建立体渲染 OpenVR
系统支持 ≥ Windows 2000 ≥ Windows Vista

从 原型 – Alpha – Beta – Exp,本次开发的版本为 SAO Utils 的第三次完全重构(重写)。 开展本次重构计划,除了是为了统一清理一些遗留已久的 Bug 外,主要目的还是为了拓展可定制性以及提高易用性:

  • 通过加入 QML 脚本支持,玩家不仅可以对应用?#35745;?#36827;行魔?#27169;?#29978;?#37327;?#20197;通过简单的脚本代码(类似 JavaScript),制作属于自己的启动器主题、桌面挂件以及图标等插件。
  • 重新设计一些基础的界面操作,加入睿智模?#21073;?#23581;试解决掉不会用的玩家

虽然每次重构都要面临重写大量代码(数万到数十万行),但是每次重构都能接触新技术,使用新的设计框架,?#20849;?#29992;再维护自己以前留下来的黑历史代码,个人还是十分享受这个过程的。

与 Steam 创意工坊高?#26085;?#21512;

  • 从创意工坊浏览和安装插件
  • 制作各种插件分享到创意工坊

新的插件框架

插件信息文件

新的插件必须提供一份插件信息文件(package.json),插件标识将使用 Java 的包命名格?#21073;?#22914; “com.gpbeta.plugin.example”。

兼容旧插件

若插件并没有使用 NERvGear 任何?#25509;?API(如 RangerCD 写的几个插件),则为插件添加 package.json 文件后,即可在新版本上运?#23567;?/p>

细分插件类别

  • 模块插件
    • 编译代码模块 (C/C++)
    • 脚本代码模块 (JavaScript/QML)
  • 资源插件
    • ?#35745;?#36164;源
      • 挂件?#35745;?/li>
      • 开机画面?#35745;?/li>
    • 图标资源
    • 音效资源
    • 字体资源
    • 主题资源
    • 背景资源
    • 动画资源
      • 开机动画
    • 数据源资源
    • 数据视图资源
    • 着色器资源
      • 启动器特效着色器

统一桌面挂件框架

  • 独立的挂件浏览器(添加/编辑/删除挂件)
  • 统一的挂件操作(移动/大小/置顶/透明)
  • 支持附着启动器/桌面模式切换

统一?#28210;?#26694;架

  • 统一插件?#28210;?#30028;面
  • 统一插件?#28210;?#25509;口
  • 旧?#28210;们?#31227;(XML -> JSON)

统一日志管理框架

  • 统一日志记录 API
  • 统一日志查看界面
  • ?#35272;?#26085;志自动转存

启动器改进

  • 提高分层模式下的性能
  • 独立启动器菜单编辑界面

插件改进

  • Mail Box
    • 支持 IMAP 协议
    • 实现邮件管理

其他改进

  • ?#24049;?#24335;简易教程
  • 导入 Rainmeter 皮肤(备考)

模块及目录划分 V0.1.3 | 2019-04-30

插件 package.json 设计 V0.1.1 | 2018-06-30

{
    // 插件包名称, 命名规范同 Java, 可使用 "-" 分割单词
    "name": "com.gpbeta.plugin.example",
 
    // 版本号, 格式支持同 npm
    "version": "2.0.1",
 
    // 可选, 插件作者信息对象
    "author": {
        "name": "Joshua GPBeta",
        "email": "[email protected]",
        "url": "http://www.cyovj.club/"
    },
 
    // 插件名称
    // 字符串 或 多语言字符串对象
    // 若无匹配语言则优先显示英语 (en)
    "title": {
        "en": "Plug-in Example",
        "zh_CN": "SAO Utils 插件示例"
    },
 
    // 可选, 插件描述, 类型同 "title"
    "description": "not localized",
 
    // 可选, 项目主页, 默认为创意工坊物品页
    "homepage": "http://sao.gpbeta.com/",
 
    // 可选, 运行环境版本要求, 格式支持同 npm
    // 不满足运行条件时, 插件不会被加载, 也不会在插件列表中显示
    // 当前?#35759;?#20041;的环境标识:
    "engines": {
        // 若插件链接了 Qt 的运行时库, 则需要声明本运行环境
        // 相同主要及?#25105;?#29256;本号的 Qt 环境是 ABI 兼容的
        "qt": "5.11",
        // 若插件的 QML 脚本导入了 Qt Quick 模块, 则需要声明本运行环境
        // 相同主要版本号的 Qt Quick 模块向前兼容
        "qt.quick": "^2.7",
        // 若插件必须要在 NERvGear 某个版本上运行, 则需要声明本运行环境
        "nvg": "0.9.1",
        // 若插件使用了任何 NERvGear 接口, 则需要声明本运行环境
        // 相同主要版本号的 NERvGear 接口向前兼容
        "nvg.api": "1"
    },
 
    // 可选, 插件或其他版本?#35272;? 格式支持同 npm
    // 不满足?#35272;?#26465;件时, 插件不会被加载, 除非用户强制启用
    "dependencies": {
        "com.rangercd.plugin.example": "*"
    },
 
    // 可选, 模块类型, 当前支持 "bin" 和 "qml"
    "module": "qml",
 
    // 可选, 模块入口文件
    // 当 "module" 为 "bin" 时, 默认加载 "module[32,64].dll"
    // 当 "module" 为 "qml" 时, 默认加载 "module.qml"
    "main": "module.qml",
 
    // 可选, 导出路径列表
    "exports": [
        {
            // 导出类型, 目前仅支持 "qml" 类型
            "type": "qml",
            // 导出路径, 目录需包含 qmldir 文件
            "path": "Exports/qml"
        }
    ],
 
    // 可选, 资源列表
    // 当前?#35759;?#20041;的资源类型:
    // animation/startup: 适用于应用启动时播放的动画资源
    // audio: 音效(集)资源
    // background: 背景资源
    // preset/launcher: 启动器菜单预置资源
    // preset/sound: 音效预置资源
    // preset/widget: 挂件预置资源
    // data: 数据资源
    // icon: 图标(集)资源
    // image/widget: 适用于挂件使用的?#35745;?集)资源
    // image/splash: 适用于开机画面使用的?#35745;?集)资源
    // launcher: 启动器主题资源
    // shader/launcher: 适用于启动器的着色器资源
    // widget: 桌面挂件挂件资源
    "resources": [
        {
            // 资源分类, 使用 "/" 分割子类型
            "catalog": "launcher",
            // 资源标识
            "name": "com.gpbeta.plugin.example.launcher",
            // 启动器主题名称, 类型同根节点 "title"
            "title": "Launcher Example",
            // 主题预览图, 推荐 16:9 ?#35745;?/span>
            "preview": "Themes/example/preview.png",
            // 启动器主题脚本
            "main": "Themes/example/main.qml"
        }, {
            "catalog": "widget",
            // ...
            // 全尺寸带透明通道挂件预览图
            "preview": "Widgets/example/preview.png",
            // 挂件脚本
            "main": "Widgets/example/main.qml"
        }, {
            "catalog": "background",
            // ...
            // 背景脚本
            "main": "Backgrounds/example/main.qml"
        },, {
            "catalog": "icon", // 同 "audio", "image"
            // ...
            // 图标集预览图, 推荐 16:9 ?#35745;?/span>
            "preview": "Images/icon/preview.png",
            // 图标集路径, 文件命名需要按照一定规则
            "main": "Images/icon"
        }, {
            "catalog": "shader/launcher",
            // ...
            // 着色器代码路径对象
            "main": {
                "vertex": "Shaders/launcher.vsh",
                "fragment": "Shaders/launcher.fsh"
            }
        }
    ],
 
    // 可选, 授权协议, 同 npm
    "license": "GPGPLv1",
 
    // 可选, 代码仓库信息, 同 npm
    "repository": {
        "type" : "git",
        "url" : "https://github.com/NERvGear/NERvHub.git"
    },
 
    // 可选, 出问题找谁背锅好呢?
    "bugs": {
        "url": "http://nvg.gpbeta.com/trac/",
        "email": "[email protected]"
    }
}

开发笔记

2018-09-09: Exp 1 Update 1 (0.5.1) 发布

本次更新主要修正了一些积累的 Bug,大幅降低了内存使用以及重新编译整个工程。

那?#27425;?#20160;么要重新编译呢——因为 Qt 升级到 5.11 了。
官方还把 MSVC 2013 的支持砍掉了,如果想使用最新版 Qt 并且保持 Vista 以上全平台支持的话,程序就必须带上 UCRT 那整整 40 个该死的 DLL……ORZ

好在经微博的大?#22411;?#33616; VC-LTL 这个项目,不仅完全移除了对 UCRT 的?#35272;擔?#36824;大大降低了 MSVC 运行时库的体积;
不仅如此,你甚?#37327;?#20197;使用?#25105;?#30340; Platform Tool, ?#25105;?#30340; Windows SDK 编译自己的项目。(此条五毛,括号内删除

2018-09-01: 实现完整功能的创意工坊

SAO Utils Steam 版已在更新 0.9.2 ?#20889;?#36733;之前提到的新通用界面设计的创意工坊。

之所?#28304;?#24847;工坊实现的优先级比重构还要高,主要有以下考虑:

  • 测试及评估 QML 在目前主流平台的可用率
  • 新版创意工坊可以直接在重构后的版本中复用
  • 增加 Steam 创意工坊上的物?#20998;?#31867;

2018-06-30: 新的通用界面设计

为了提高通用操作界面的美观性和易用性,决定对这些非主题化的界面重新设计和实现。

通用界面将会基于 Material Design 设计,适当加入 SAO 序列之争的风格元素。

创意工坊部分界面

首选项部分界面

2018-04-21: 0.5.0 更新说明

本次更新主要加上 QML 脚本运行环境,并重构了几个桌面挂件,以后会把所有挂件及主题也全部改用 QML 实现,方便魔?#24149;?#32773;第三方开发。

  • HP-Bar

    HP-Bar 计量条挂件加入动画数?#24403;?#21270;效果。当然,出于性能和偏好需求,动画效果是可以自由启用/关闭的。

  • GGO 挂件

    • 新增「折线图」项目类型
    • 「折线图」及「直方图」新增 “动态数据范围” 选项
    • 允许为项目设置?#25105;?#21333;元格大小
    • 允许为项目设置?#25105;?#39068;色?
  • 桌面?#35745;?#25346;件
    • 添加 GIF 动画?#35745;?#32553;放支持

2018-04-01: Exp 1 实验性版本发布

当前发布的 Exp 1 为下?#35805;?#26412;的预览使用,欢迎踊跃下载测试并反馈问题。

    • 亦人の季節
    • 2019/12/02 1:51下午

    GPBeta :
    会的(●’?’●)

    会(gu)的(gu)

    • 无名
    • 2019/12/01 11:05上午

    话说,非steam版exp1的下载链接?
    准备过年时在steam上入正,仅仅是资金限制得说

      • 亦人の季節
      • 2019/12/02 1:50下午

      在这里http://sao.gpbeta.com/exp/

    • 君的笑颜
    • 2019/11/20 2:11上午

    希望?#35745;?#25346;件可以加入一些功能,?#28909;?#40736;标点住拖动出现?#35745;?#25671;摆的动作或者带阻尼回到原位的动作=。=

    • 凉糁
    • 2019/11/11 10:24下午

    大大,steam上面还会更新吗?(? ω ?)

    • 2019/10/16 4:35下午

    说实话,我17年就开始看到作者在研发了,努力到现在!我一直看着

    • Zaphier
    • 2019/10/12 6:23上午

    请?#23460;?#19979;Exp 1 Update 2(0.5.2)更新后
    音乐播放器支持扩?#20849;?#33021;显示专辑封面后续能修复么
    强行装了0.3.0版本扩展也不能显示
    我?#23548;?#22238;Beta 1 Update 2(0.3.2)后才又恢复了

    Exp 1的说明看到有说可能要添加package.json文件才能正常使用旧插件,?#36824;?#19981;知道怎么编辑orz

    • 应该跟版本无关,先尝试把音乐播放器扩展和 foo_cad 升级到最新版。

    • Kirito
    • 2019/10/07 4:13下午

    Steam上的不更新了吗?

    • 真实之音
    • 2019/10/04 7:05下午

    gp大大,请问会对Linux平台,或mac平台的补充,匹配吗?现在我系统是deepin,不知道怎么才能用上呢,

    • 没有计划![?#26102;痌
      个人精力根本不可能跨平台维护,目前 Linux 上使用可以试试 Wine

    • 普通人
    • 2019/09/21 5:25上午

    天气插件拼音重复地区无法显示正确地址 用说明中的CHXX地址查找到宿州的CH0002:1 但是不能显示

    • ?#35748;?#22825;开
    • 2019/09/13 2:55下午

    软件打开时出现NERvGear已停止怎么办

    • Provance
    • 2019/09/10 10:31下午

    你好,想请?#23460;?#19979;那个天气显示挂件经常不会进行更新,点进去设置是又会加载出数据,不知道如何解决?

    • Teoko
    • 2019/08/29 1:36下午

    某一天突然就开机不自启了是什么情况,而且例外里开了全屏模式下禁用手?#24179;?#26524;在桌面上无法呼出菜单在游戏里呼出了菜单怎么办。

    • 虛城
    • 2019/07/26 11:45上午

    發現 Mail Box 插件?#28210;?#36664;入是正確的, 系統總是顯示 Cannot login to SMTP server, inalid user name or password. 但我按了 OK 之後可收到信件, 只是不能發送. 防火牆和防毒都關閉了情況沒有改善.

    • lmxox
    • 2019/07/15 12:25上午

    1.音乐播放器如何读取foobar2000的数据
    2.steam版什么时候更新exp版本,好像要那个大小自定义的GGO单元格

1 4 5 6
  1. 暂无 Trackback

?

return top

星尘官网
河南22选5开奖结果走势图 澳洲幸运5官网开奖历史 极速赛车稳赚免费计划 在yy赚钱是真的吗 微信牛牛挂一般多少钱 东京时时彩一天多少期 河南11选5大小走势图 悠洋棋牌官方网站 上古世纪一个人赚钱方法 游戏开心农场2下载 黄金pk计划软件手机版 社区团购团长赚钱案例 天天捕鱼电玩版话费 七乐彩走势图带连线 pk10计划精准在线计划 红黑梅方外挂辅助工具下载