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

SAO Utils 开发进度
当前版本 Experimental 1 迭代 5 下载页面
目标平台 32/64位 Windows(Vista, 7, 8, 8.1, , 10)
当前体积 100MB (Programs:80M + Fonts:10M + Images + Sounds)
开发进度
100%
2022-05-01
SAO Utils 开发日志
原型 alpha beta exp v1.0
m1 m2 a1 a2 b1 e1 e2
2022-05-01 1.SAO Utils 2 Steam 封测进行中
2.更新 SAO Utils 2 – SAO风格启动菜单开发日志<七期>
2021-11-04 1.更新 B 站 SAO Utils 2 开发日志专栏
2020-03-13 1.更新开发笔记
2020-01-03 1.更新开发笔记
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 脚本支持,玩家不仅可以对应用图片进行魔改,甚至可以通过简单的脚本代码(类似 JavaScript),制作属于自己的启动器主题、桌面挂件以及图标等插件。
  • 重新设计一些基础的界面操作,加入睿智模式,尝试解决掉不会用的玩家

虽然每次重构都要面临重写大量代码(数万到数十万行),但是每次重构都能接触新技术,使用新的设计框架,还不用再维护自己以前留下来的黑历史代码,个人还是十分享受这个过程的。
实时开发进度及计划见:Github Projects

与 Steam 创意工坊高度整合

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

新的插件框架

插件信息文件

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

兼容旧插件

若插件并没有使用 NERvGear 任何私有 API(如 RangerCD 写的几个插件),则为插件添加 package.json 文件后,即可在新版本上运行。

细分插件类别

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

统一桌面挂件框架

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

统一配置框架

  • 统一插件配置界面
  • 统一插件配置接口
  • 旧配置迁移(XML -> JSON)

统一日志管理框架

  • 统一日志记录 API
  • 统一日志查看界面
  • 崩溃日志自动转存

启动器改进

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

插件改进

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

其他改进

  • 导航式简易教程
  • 导入 Rainmeter 皮肤(备考)

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

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

开发笔记

2021-11-04: 博客考虑迁移到其他静态框架,更新日志暂时移动到 B 站 SAO Utils 2 开发日志专栏

2020-03-13: 新的动作、挂件及背景拾取

HP 计量条挂件


已在 Exp 版亮相的 HP-Bar 加入了一些新功能:

  • 新增 ALO 挂件主题可选;
  • ALO 主题下 HP 和 MP 支持分别绑定不同的数据;
  • 所有项目支持自定义项目图标;
  • 由于挂件框架变动,桌面可以同时摆放多个 SAO 或 ALO 风格挂件。

HUD 状态栏挂件

  • 由于新功能的变化,过去的 GGO 挂件将会更名为 HUD 状态栏挂件:
  • 自定义项目背景(自带矩形和六边形样式);
  • 自定义项目单元尺寸(0.5 ~ 9);
  • 自定义项目颜色;
  • 自定义项目布局,可以通过调整行距和布局对齐,现在只需要 1 个挂件即可实现特殊形状的项目组合摆放;
  • 新增「数据源图片」视图类型,可以配合一些返回 URL 的数据源显示图片(专辑封面等);
  • 新的交互编辑模式方便大批量项目编辑。

动作拾取

  • 统一挂件和菜单项目动作拾取,可在设置动作前先测试执行;
  • 新增「挂件动作」,可以控制挂件显示/隐藏;
  • 新增「其他动作」,目前包含显示/隐藏启动器等便捷动作;


与「脚本数值」类似,新增一个比较硬核的动作类型「脚本动作」:

  • 同时执行多个动作;
  • 自定义简单或复杂的执行逻辑;
  • 在多个动作、甚至和数据源间共享/持久化数据;
  • 自带一个「同时执行」和「逐个执行」的脚本例子。

背景拾取

  • HUD 状态栏等挂件可以通过该对话框选择背景图;
  • 支持 *.9.ext 九宫格图片格式。

2020-01-03: 新的挂件操作,数据、图标及图片拾取

统一挂件操作设计

  • 现在所有挂件都提供一个基本操作外框,可以选自动隐藏、总是显示、总是隐藏,拖动边沿可以改变挂件大小;
  • 挂件的一些基本控制,如尺寸、置顶及点击穿透等可通过自带的菜单操作,挂件制作者完全不用操心这些属性的控制或配置;
  • 新增挂件选项:透明度,可选在桌面或是在启动器显示,点击不获取焦点等;
  • 挂件可以分为「素材挂件」和「脚本挂件」,其中:
  • 素材挂件支持大部分JPG, PNG, GIF 等格式图片、部分格式音频、视频及网页;
  • 脚本挂件由第三方开发者提供,主要使用 QML 脚本开发。

数据拾取

  • 更加友好的数值预览界面,如果数值是路径或 URL 甚至可以图片模式预览;
  • 选项化「更新参数」和「动作参数」,调整参数不用输一长串神奇代码了;
  • 新增内置「GPU 数据」,无需第三方软件即可查看 GPU 负载及温度等信息;
  • 新增「WMI 数据」,提供更丰富的系统数据接口。


增加了一个比较硬核的数据源「脚本数值」,可以满足一些更加边缘的数值需求:

  • 自定义数值输出格式;
  • 组合多个数值输出;
  • 在多个数据源间共享/持久化数据;
  • 根据输入数值显示不同的图标等。

图片及图标拾取


新的图标拾取界面主要优化了图标的分类,方便拾取第三方提供的图标,支持选择 exe 应用程序作为图标。


新的图片拾取界面增加了预览功能。

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

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

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

好在经微博的大佬推荐 VC-LTL 这个项目,不仅完全移除了对 UCRT 的依赖,还大大降低了 MSVC 运行时库的体积;
不仅如此,你甚至可以使用任意的 Platform Tool, 任意的 Windows SDK 编译自己的项目。(此条五毛,括号内删除

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

SAO Utils Steam 版已在更新 0.9.2 中搭载之前提到的新通用界面设计的创意工坊。

之所以创意工坊实现的优先级比重构还要高,主要有以下考虑:

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

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

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

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

创意工坊部分界面

首选项部分界面

2018-04-21: 0.5.0 更新说明

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

  • HP-Bar

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

  • GGO 挂件

    • 新增「折线图」项目类型
    • 「折线图」及「直方图」新增 “动态数据范围” 选项
    • 允许为项目设置任意单元格大小
    • 允许为项目设置任意颜色​
  • 桌面图片挂件
    • 添加 GIF 动画图片缩放支持

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

当前发布的 Exp 1 为下一版本的预览使用,欢迎踊跃下载测试并反馈问题。

    • Danno
    • 2019/06/24 6:44下午

    sbeam版的用户,
    有时运行完游戏(ow,怪猎,ff14)会出现双键下滑呼出启动菜单,但是菜单选项无法响应的情况,点击空白处也无法响应(即无法退出)。
    启动任务管理器后,点击空白处可响应退出菜单界面。

    • zizhou
    • 2019/06/11 9:55下午

    请问开发大佬sao utils在全屏运行其他软件的时候会不会自动暂停运行(给我的感觉是不会,因为还可以呼出菜单),内存占用还是有些高,不知道能不能出这个选择自动判断开关的功能。

  1. QT萌新超想看源码~~~写个书签管理器都手忙脚乱的 XD 心塞塞

    网址主页装修中…预览页: http://violet-ve.com/blog

    • amaha
    • 2019/05/22 1:55下午

    Exp 1 Update 2 (0.5.2)
    从睡眠状态重启后,呼出菜单只有声音,不显示界面,每次都要退出程序再启动
    之前用beta版的时候没这个问题,我是直接覆盖安装新版的,不知是不是有什么残留的影响还是其他Bug?

      • amaha
      • 2019/05/22 9:18下午

      经多次尝试后发现,是GGO桌面挂件引起的,使用折线图显示CPU数据的时候就会这样,其他数据没测不知道会不会,基本都是不显示界面,有时显示出界面也是卡在那几乎不动,这时内存和CPU的占用率并没有发生高占用情况,应该不是性能问题,平时使用正常,而且这种情况只有在电脑从睡眠状态中唤醒的情况下才会出现,也有可能是只有我电脑才是这样,毕竟这系统已经被我捣鼓了很多东西了,哈哈

    • ginsan
    • 2019/05/07 12:06上午

    貌似RangerCD写的音乐播放器支持,在更新exp1后就不能显示专辑封面了

    • Oreki
    • 2019/05/03 2:41下午

    希望能有Mac版的

    • 雪色夜樱
    • 2019/05/02 11:02下午

    这款开机还有刀剑神域第一季的linkstart吗?

    • farwe2
    • 2019/04/23 12:41上午

    如果有两个显示屏的话,能分屏显示吗

    • 启动器只能在鼠标所在的屏幕上显示,挂件可以在任意显示器上显示。

    • liubai
    • 2019/04/09 11:53上午

    我是在beta版本出现了个bug…
    然后exp版启动目录出错…(已在steam入了正版充值信仰…orz)

    打开目录时图标背景便不见了,就如果我桌布是白色的,那么图标直接和桌布融为一体消失不见的分层问题?
    然后右边多了个黑色的方形。。
    上线看看有木有新版本可以直接解决
    然后就看到了exp版,下载了使用
    直接immortal project…

    • 显示问题基本都是驱动 bug 造成而不是软件。
      建议更新显卡驱动到最新稳定版本,重置驱动设置,并把 SAO Utils.exe 添加到独显运行。
      还是不行的话试试用“标准”模式而不是“分层”

    • liubai
    • 2019/04/09 11:43上午

    我想问一下怎么把旧的彻底删除…
    刚安装了exp版,一打开目录就变紫色了…
    爬了一点文,貌似是插件冲突会出现这情况?

    • Oriya
    • 2019/04/07 6:24下午

    Steam上下载的貌似版本低一点,无法更改字体 颜色 ,我要怎么更新到新版本?

    • 等稍后 Steam 版更新发布就可以了

    • Liszt
    • 2019/03/28 5:24上午

    有没有办法从外部调用文件计算数据,然后将结果显示在ggo widget中

    我想要的是计算日期的差值然后将计算结果显示出来

    或者有没有其他的解决办法

    多谢

    • Liszt
    • 2019/03/24 4:27上午

    请教一下大佬
    本人文科生但对计算机方面的比较感兴趣,所以我下了个Qt Creator想要乱搞(手动滑稽)
    我打开WidgetObject.qml的时候第二行有一个import NERvGear 1.0 as NVG
    但是旁边显示QML module not found (NERvGear)似乎是少了什么模块
    请问可以安装这个模块吗?或者安装之后会不会就有什么可视化界面

    (完全是满足好奇心,有劳大佬指教了)

    • 项目文件 *.pro 要加上 SAO Utils 提供的 QML 导入目录:

      QML_IMPORT_PATH += "SAO Utils/Qt/qml"

    • Roamer
    • 2019/03/20 8:49下午

    emmmm加油啊

    • wdjsama
    • 2019/03/18 5:33下午

    我就是问一下,之前win7的时候开机进入桌面立马就会载入启动画面。升级win10之后进入桌面要等5秒左右才会启动,这个是什么问题?ps:软件在SSD里。

  1. 暂无 Trackback



return top