希望根据窗口分辨率切换配置
Expected behavior 预期的功能
这样就不需要每个游戏都手动切换配置。
Alternative behavior (optional) 近似的功能(可选)
类似madvr那样根据分辨率切换配置。 madVR Profile設置: https://lysandria1985.blogspot.com/2014/01/2madvr-profile.html
很实用的功能,设计 UI 比较困难,但值得做。
这个确实好,感觉比快捷键和自动识别都要合适
很实用的功能,设计 UI 比较困难,但值得做。
大佬,您好!这个功能我有个简化的思路,您看看是否有参考价值: 在我的使用magpie过程中,我发现大部分的原始窗口,分辨率在640480~19201080之间,再高分辨率的程序都比较新,内置的缩放基本能够比较清楚的。 以4K显示器为例,即使是最低分辨率的640*480 放大到4K也只需要进行2次2倍的缩放。 因此这个功能简化成,根据原始窗口的分辨率,在2个(多个)配置间自动应用。 界面简化为: 宽度<=1280 并且 高度 <= 720 应用配置1 -->例如进行2次anime4k算法 宽度<=1920并且 高度 <= 1080 应用配置2 -->例如进行1次anime4k算法 如果实在还有更多档位需求,下面允许用户再增加即可,逻辑应该是一样的
@killer8224 谢谢建议,你的方案易于配置,但不太灵活,我希望同一套配置能在不同的分辨率上通用,因此还应支持判断缩放比例。市面上的显示器有很多奇怪的分辨率,而且以后如果要支持窗口化就意味着要支持任意分辨率了。拿 Anime4K 举例:
- 如果目标尺寸是源窗口的 1-2 倍,配置为:Anime4K->Bicubic
- 如果目标尺寸恰好为源窗口的 2 倍,配置为:Anime4K
- 如果目标尺寸是源窗口的 2-4 倍,配置为:Anime4K->Bicubic->Anime4K
- 如果目标尺寸恰好为源窗口的 4 倍,配置为:Anime4K->Anime4K
- 以此类推
每个配置应该有一个激活条件,这个激活条件由多种因素组合而成,如判断分辨率、缩放比例、刷新率等,并支持用“且”和“或”组合。这些通过代码容易实现,但对一般用户不友好。比如 MadVR 的配置界面:
我的理念是把 UI 做的简单易用,没有学习成本。由于这个功能确实复杂,设计 UI 的挑战性很大。
我有个建议,缩放配置和现在一样保持不变,触发条件可以设置成类似“初级模式”“高级模式”的形式,初级模式就还是自己手选配置,高级模式让用户设置缩放情境,自己输入特定语法规则的条件判断语句,然后绑定为true时相应的缩放配置,可以设置多个情境 这样真不懂的也能按现在这样用,或者大不了直接导入配置文件抄作业也行嘛
初步想法是做成树形结构,缩放模式要在单独的页面中配置。默认情境在其他情境都不符合的情况下激活,现在的缩放模式都相当于默认情境。关于激活条件考虑不支持“或”操作,一是用的少,上面的讨论都没有使用“或”,二是可以添加多个情境来代替“或”操作。
- 缩放模式 1
- 默认情境
- 效果配置
- 情境 1
- 激活条件
- 条件 1
- 条件 2
- 效果配置
- 激活条件
- 情境 2
- ...
- 默认情境
初步想法是做成树形结构,缩放模式要在单独的页面中配置。默认情境在其他情境都不符合的情况下激活,现在的缩放模式都相当于默认情境。关于激活条件考虑不支持“或”操作,一是用的少,上面的讨论都没有使用“或”,二是可以添加多个情境来代替“或”操作。
缩放模式 1
默认情境
- 效果配置
情境 1
激活条件
- 条件 1
- 条件 2
效果配置
情境 2
- ...
我觉得或还是有必要的,最常见的使用场景是因为窗口比例和显示器比例不一定一致,需要或来对某一边进行判断
我觉得或还是有必要的,最常见的使用场景是因为窗口比例和显示器比例不一定一致,需要或来对某一边进行判断
这个可以放在条件里,比如支持以下条件:
- 横/纵向缩放比例
- 最大等比缩放比例
- 源窗口宽/高度
- 目标宽/高度
我也考虑过支持多个激活条件,但担心 UI 会过于复杂。结构是:
- 情境 1
- 激活条件 1
- 条件 1
- 条件 2
- 激活条件 2
- 条件 1
- 条件 2
- 效果配置
- 激活条件 1
明白了