Skip to content

Commit eb536dc

Browse files
committed
Update VulkanTriangleDynamicRendering for image layout transfer and check use synchronization2 feature
1 parent 26bdc3a commit eb536dc

3 files changed

Lines changed: 315 additions & 75 deletions

File tree

README.md

Lines changed: 49 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -34,113 +34,119 @@
3434
3535
### 日志
3636
37+
> **2026/8/24**
38+
>
39+
> * 更新 `VulkanTriangleDynamicRendering` 绘制三角形。增加 `image layout` 还未同步转换。
40+
>
41+
> * 更新 `VulkanTriangleDynamicRendering` 绘制三角形。增加 `synchronization2` 特性检查和激活。
42+
3743
> **2026/8/21**
3844
>
39-
> >更新 `VulkanTriangleDynamicRendering` 检查动态渲染依赖扩展和特性并激活。
45+
>* 更新 `VulkanTriangleDynamicRendering` 检查动态渲染依赖扩展和特性并激活。
4046
>
41-
> >更新 `VulkanTriangleDynamicRendering` 加载动态渲染函数。
47+
>* 更新 `VulkanTriangleDynamicRendering` 加载动态渲染函数。
4248
>
43-
> >更新 `VulkanTriangleDynamicRendering` 绘制三角形。(`image view layout` 还未同步转换)
49+
>* 更新 `VulkanTriangleDynamicRendering` 绘制三角形。(`image view layout` 还未同步转换)
4450
>
4551
4652
> **2026/8/20**
4753
>
48-
> >增加 `VulkanTriangleDynamicRendering` 计划使用动态渲染( `DynamicRendering` )绘制三角形。
54+
>* 增加 `VulkanTriangleDynamicRendering` 计划使用动态渲染( `DynamicRendering` )绘制三角形。
4955
>
5056
5157
> **2026/8/19**
5258
>
53-
> >优化调用顺序,增加 `void ResizeSurface(uint32_t width, uint32_t height)` 成员函数。
59+
>* 优化调用顺序,增加 `void ResizeSurface(uint32_t width, uint32_t height)` 成员函数。
5460
>
55-
> >移除 `void CreateSurface(void *window, uint32_t width, uint32_t height)` 成员函数。
61+
>* 移除 `void CreateSurface(void *window, uint32_t width, uint32_t height)` 成员函数。
5662
>
5763
5864
> **2026/5/29**
5965
>
60-
> >研究尝试适配 `鸿蒙 6`
66+
>* 研究尝试适配 `鸿蒙 6`
6167
>
62-
> >更新 `Vulkan` 头文件版本到 `1.4.352`
68+
>* 更新 `Vulkan` 头文件版本到 `1.4.352`
6369
>
64-
> >更新 `VulkanTriangle.h/cpp` 适配 `Open/HarmonyOS`
70+
>* 更新 `VulkanTriangle.h/cpp` 适配 `Open/HarmonyOS`
6571
>
66-
> >更新 `napi_init_10/19/20.cpp` 适配 `VulkanTriangle`
72+
>* 更新 `napi_init_10/19/20.cpp` 适配 `VulkanTriangle`
6773
6874
> **2026/5/26**
6975
>
70-
> >尝试重构三角渲染。
76+
>* 尝试重构三角渲染。
7177
>
72-
> >重构使用 `VulkanTriangle.h/cpp` 进行三角渲染。
78+
>* 重构使用 `VulkanTriangle.h/cpp` 进行三角渲染。
7379
7480
> **2026/5/25**
7581
>
76-
> >研究尝试适配 `鸿蒙 5`
82+
>* 研究尝试适配 `鸿蒙 5`
7783
7884
> **2026/5/22**
7985
>
80-
> >研究尝试适配 `鸿蒙 4`
86+
>* 研究尝试适配 `鸿蒙 4`
8187
8288
> **2026/5/22**
8389
>
84-
> >适配窗口大小为零或最小化的情况。
90+
>* 适配窗口大小为零或最小化的情况。
8591
8692
> **2026/4/30**
8793
>
88-
> >增加对 `Push Constants` 使用,使得三角形大小随时间变化。
89-
> >
90-
> >更新 `triangle.vert` 使用 `Push Constants` 改变三角形大小。
94+
>* 增加对 `Push Constants` 使用,使得三角形大小随时间变化。
9195
>
92-
> >适配 `Linux` 窗口大小发生变化。
96+
>* 更新 `triangle.vert` 使用 `Push Constants` 改变三角形大小。
97+
>
98+
>* 适配 `Linux` 窗口大小发生变化。
9399
94100
> **2025/8/14**
95101
>
96-
> >移除 `CMakeLists.txt` 中的 `target_link_directories` 的使用。冗余。
97-
> >
98-
> >`README.md` 增加 `Linux` 环境下的配置说明。
102+
>* 移除 `CMakeLists.txt` 中的 `target_link_directories` 的使用。冗余。
103+
>
104+
>* `README.md` 增加 `Linux` 环境下的配置说明。
99105
100106
> **2024/11/25**
101107
>
102-
> >动态适配 `Swapchain` 纹素的格式和空间,而不是单独选配某些格式。
103-
> >**TODO: 当所有的 Swapchain 格式都不支持 Color Attachment 时,考虑找到支持拷贝的格式,并使用拷贝显示渲染结果**
108+
>* 动态适配 `Swapchain` 纹素的格式和空间,而不是单独选配某些格式。
109+
>* **TODO: 当所有的 Swapchain 格式都不支持 Color Attachment 时,考虑找到支持拷贝的格式,并使用拷贝显示渲染结果**
104110
105111
> **2024/11/22**
106112
>
107-
> >增加动态适配 `Swapchain` 纹素的格式和空间,而不是写死。
108-
> >**Note:需要判断 `Surface` 打头第一个格式是否支持 `COLOR_ATTACHMENT`**
113+
>* 增加动态适配 `Swapchain` 纹素的格式和空间,而不是写死。
114+
>* **Note:需要判断 `Surface` 打头第一个格式是否支持 `COLOR_ATTACHMENT`**
109115
110116
> **2024/11/18**
111117
>
112-
> >尝试适配 `Swapchain` 大小改变。
118+
>* 尝试适配 `Swapchain` 大小改变。
113119
>
114-
> >优化代码结构
120+
>*优化代码结构
115121
116122
> **2024/11/15**
117123
>
118-
> >`MacOS` 系统成功编译。
124+
>* `MacOS` 系统成功编译。
119125
120126
> **2024/11/14**
121127
>
122-
> >动态判断加载 `Layer``Extension`
128+
>* 动态判断加载 `Layer``Extension`
123129
>
124-
> >适配了一版 `苹果` 系统,还未进行测试,不知是否可行。
130+
>* 适配了一版 `苹果` 系统,还未进行测试,不知是否可行。
125131
126132
> **2024/11/13**
127133
>
128134
> 成功适配 `Deepin V23`
129135
>
130-
> >安装如下
131-
> >
132-
> > ``` console
133-
> > libx11-dev
134-
> > libxrandr-dev
135-
> > libxinerama-dev
136-
> > libxcursor-dev
137-
> > libxi-dev
138-
> > freeglut3-dev
139-
> > ```
136+
>* 安装如下
137+
>
138+
>``` console
139+
>libx11-dev
140+
>libxrandr-dev
141+
>libxinerama-dev
142+
>libxcursor-dev
143+
>libxi-dev
144+
>freeglut3-dev
145+
>```
140146
>
141-
> > `VK_LAYER_KHRONOS_validation` 验证层找不到,非必须,目前暂时注释掉,`修改意见:` 增加 `vkEnumerateInstanceLayerProperties(...)` 的使用。
147+
>* `VK_LAYER_KHRONOS_validation` 验证层找不到,非必须,目前暂时注释掉,`修改意见:` 增加 `vkEnumerateInstanceLayerProperties(...)` 的使用。
142148
>
143-
> > `vkGetPhysicalDeviceSurfaceCapabilitiesKHR(...)` 获取到的 `VkSurfaceCapabilitiesKHR::minImageCount` 不为 `0``VkSurfaceCapabilitiesKHR::maxImageCount``0`
149+
>* `vkGetPhysicalDeviceSurfaceCapabilitiesKHR(...)` 获取到的 `VkSurfaceCapabilitiesKHR::minImageCount` 不为 `0` 而 `VkSurfaceCapabilitiesKHR::maxImageCount` 为 `0`。
144150
>>
145151
>> ![test](./doc/surface_max_min_image.png)
146152
>>

0 commit comments

Comments
 (0)