-
Notifications
You must be signed in to change notification settings - Fork 509
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
新渲染系统 #643
新渲染系统 #643
Conversation
MagpieFX 的变化:
|
使用 D3D11 在 GPU 之间共享纹理似乎是不可能的,我只得到这个错误: 通过内存传输纹理在性能上无法接受,因此渲染线程和呈现线程必须使用同一个显卡。(D3D12 有共享堆,D3D11 中没有等价物。) 更新:这个文档明确指出 DXGI 的共享纹理只能在同一个适配器上访问。 |
旧架构允许输出尺寸大于屏幕尺寸,现在不再支持,因为会大幅增加鼠标逻辑的复杂度。我也会删除默认降采样效果选项,现在始终是 Catmull-Rom。Bicubic 将内置,没有效果文件。 |
Bicubic 不再内置了,我计划在未来不再支持用户修改效果文件,并实现一个机制来导入用户效果。 |
现在所有功能都已实现,虽然还有一些 bug,但不影响使用,可以合并后再修复。 |
主要是拖拽窗口时
* refactor: 简化 ScalingRuntime * fix: 修复特定情况下退出时死锁的问题
* feat: 优化对最大化窗口的支持 * feat: 捕捉标题栏时去除边框 * feat: 非最大化的窗口自动裁剪上边框 * perf: 性能优化 * fix: 错误修复 * fix: 修复警告 * fix: 尝试修复 Graphics Capture 的捕获区域 * feat: 适配 Win11 的捕获区域 * fix: 添加检查
* feat: 支持自定义形状窗口,修复对原生标题栏的支持 * fix: 优化鼠标行为 * chore: 删除不必要的调用 * fix: 修复开始和退出缩放时光标位置变化 * chore: 微小调整 * chore: 添加注释
* fix: 修复鼠标移动到叠加层或其他窗口时有时会跳跃的问题 * perf: 性能优化
新的渲染系统很棒,超出了我的预想,感谢参与贡献、测试的你们!很快会有预览版本🥳 |
这个 PR 将重写渲染架构以优化使用重量级效果时的流畅度以及提高可拓展性。
现有架构:
新架构:
渲染线程和呈现线程可以使用不同的显卡。集成显卡负责呈现,独立显卡负责渲染。我相信这可以有效提高性能。其他更改: