摘要: 这是我阅读General-Purpose Graphics Processor Architecture的一篇笔记,本文对应书中第二章的内容。 阅读全文
posted @ 2023-10-07 11:34 icysky 阅读(151) 评论(0) 推荐(0) 编辑
摘要: DirectX 12、Vulkan等下一代的渲染API在设计上相比OpenGL等上一代API有了很大的不同。下一代渲染API暴露了更多的GPU相关的细节部分,这允许程序员对GPU进行更加细致的控制,但同时也使得API本身变得更加琐碎与难用。这一系列文章用来记录我封装DirectX 12的思路与心得,篇章之间不会有很强的关联性。 阅读全文
posted @ 2023-10-07 11:14 icysky 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 早在C++11就在STL中引入了原子操作支持了。大部分时候,我使用C++11的atomic仅仅是为了原子地操作特定的一个变量,比如`load`、`store`、`fetch_add`等等。然而实际上,C++11的原子操作带着的memory order还能起到memory barrier的作用。本文会从头介绍C++11原子变量的用法,使用的注意事项以及一些原理,原理部分会涉及少量的计算机体系结构的知识,主要与CPU的缓存相关。 阅读全文
posted @ 2023-10-07 11:12 icysky 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 这是我阅读 Ray Tracing Gem 的一篇笔记,《避免自相交的快速可靠的方法》是 Ray Tracing Gem 的第六章。这篇博客文章主要是为了记录和解释原文末尾给出的魔法一般的代码。 阅读全文
posted @ 2023-10-07 11:10 icysky 阅读(62) 评论(0) 推荐(0) 编辑