Commit graph

31 commits

Author SHA1 Message Date
刘旭
335c60e435 refactor: 简化纹理创建 2022-03-09 13:56:23 +08:00
刘旭
8aab238150 fix: 部分 B8G8R8A8_UNORM 改为 R8G8B8A8_UNORM,因为前者在一些硬件上不支持 UAV 2022-03-09 12:49:03 +08:00
Xu Liu
7f54296a75 [WIP] 实现 MagpieFX v2 2022-02-20 21:46:18 +08:00
刘旭
4b25e5c43d refactor: 将 App::GetInstance 重命名为 App::Get 2022-02-18 15:59:20 +08:00
刘旭
73f41de149 refactor: 重构日志机制 2022-02-18 15:45:43 +08:00
刘旭
04541584d2 feat: 实现计算着色器版本的FSR
不再支持 D3D 功能级别 10
2022-02-15 11:51:29 +08:00
刘旭
afc60e59f6 refactor: 将禁用窗口大小调整和窗口圆角的职能移到 FrameSourceBase 中以简化 App::Run 2022-02-14 09:37:43 +08:00
Xu Liu
4562a3a35b refactor: 添加 DeviceResources 管理底层 D3D 资源
进一步降低编译单元间的耦合度
2022-02-14 00:05:54 +08:00
Xu Liu
0ed6c2fb3b refactor: 从 FrameSource 获取源窗口大小 2022-02-13 19:52:39 +08:00
Xu Liu
76a2193b41 refactor: 使用 winrt::com_ptr 替代 WRL::ComPtr 2022-02-13 19:38:33 +08:00
Xu Liu
989a09cf86 refactor: 减少编译单元间的依赖 2022-02-13 17:51:53 +08:00
Xu Liu
ed6f644384 feat: 实现自定义裁剪功能 2022-01-18 18:58:25 +08:00
Xu Liu
8c826b0aff fix: 优化 D3D 调试层的创建 2022-01-10 19:28:41 +08:00
Xu Liu
5445069638 perf: 使用 std::atomic 而不是 win32 event 进行线程同步 2022-01-09 19:30:04 +08:00
Xu Liu
488a4bf126 refactor: 优化 Desktop Duplication 2022-01-09 17:06:28 +08:00
Xu Liu
b704fd8e30 fix: 优化 Desktop Duplication 的流畅度
在单独的线程中用单独的 D3D Device 接受屏幕帧,就像 https://github.com/microsoft/Windows-classic-samples/tree/main/Samples/DXGIDesktopDuplication 中所做的。涉及 D3D Device 间的纹理同步因此较为复杂,但可以有效提高流畅度
2022-01-09 14:31:40 +08:00
Xu Liu
1e293ca685 fix: 优化 Desktop Duplication 的流畅度 2022-01-08 15:49:35 +08:00
Xu Liu
7c825edbdf fix: 修复Desktop Duplication卡顿问题 2022-01-03 18:31:24 +08:00
Xu Liu
12e4473f29 perf: Desktop Duplication 每次获取帧时允许1毫秒等待
可以稍微(安慰性)降低 CPU 占用
2022-01-01 16:55:59 +08:00
Xu Liu
d68a2e0622 feat: 实现多屏幕支持 2021-12-19 17:47:57 +08:00
刘旭
4e8c41ce50 feat: GraphicsCapture 失败时回落到屏幕捕获 2021-12-13 14:33:17 +08:00
刘旭
01729d37f6 feat: 增加源窗口过大的报错 2021-12-13 09:12:29 +08:00
Xu Liu
3d87d7d152 feat: DesktopDuplication 在窗口跨越屏幕时自动将它移到屏幕中央 2021-12-12 22:12:58 +08:00
Xu Liu
3404e510eb refactor: FrameSource 初始化完成后再计算源窗口边框
因为 FrameSource 初始化过程中可能改变源窗口位置
2021-12-12 21:19:28 +08:00
Xu Liu
cac22293fc perf: 优化 DesktopDuplication 捕获方式的性能 2021-12-12 20:17:02 +08:00
Xu Liu
c783250cdf feat: 系统不支持时隐藏 Graphics Capture 和/或 Desktop Duplication 捕获方式
梅开二度
2021-12-09 20:28:18 +08:00
Xu Liu
8a153d4787 perf: 优化 Desktop Duplication 的性能 2021-12-08 20:49:24 +08:00
Xu Liu
4b6e591dab perf: 优化 Desktop Duplication 性能 2021-12-07 21:42:54 +08:00
Xu Liu
91e86798a9 perf: 提高 Desktop Duplication 的性能 2021-12-07 18:51:39 +08:00
刘旭
7232b67fe5 feat: 实现 Desktop Duplication 捕获方式 2021-12-07 14:25:05 +08:00
刘旭
56a8b03c3a feat: 保存图形适配器供 Desktop Duplication 使用 2021-12-07 13:05:46 +08:00