C++ Core Guidelines 是现代 C++(目前是 C++17)的一套核心指导方针,考虑了未来的增强与 ISO 技术规格。
CMake 项目结构最佳实践
CMake 是一种比较灵活的构建工具,正因如此导致很多 CMake 项目的结构混乱不堪,甚至包括国外某知名大厂的高 star 项目,本文将介绍一种目前广泛使用的比较合理的 CMake 项目结构
Vulkan 画三角形第十三章:创建命令缓冲区
命令在 Vulkan 中,比如绘图操作和内存传递,并不能直接经过函数调用来执行。我们必须要把所有需要执行的操作记录到命令缓冲区对象中。这样做的优势在于配置绘图命令的复杂工作能够提前且多线程进行。这之后,我们只需要在主循环中通知 Vulkan 执行这些命令
Vulkan 画三角形第十二章:创建帧缓冲区
在之前的文章中已经讨论了很多帧缓冲区相关的东西,并且我们已经配置了渲染路径,渲染路径基于一个单独的与交换链图像具有相同格式的帧缓冲区,但我们实际上还没有创建它
Vulkan 画三角形第十章:着色器模块
与早期 API 不同,Vulkan 中的着色器代码必须要以字节码的格式指定,而不是像 GLSL、HLSL 这样人类可读的语法。这种字节码格式是 SPIR-V,它可以用于 Vulkan 和 OpenCL。它是一个用来写图形与计算着色器的格式,但是现在我们只关心可用于 Vulkan 图形流水线的着色器