UE4 材质编辑器中材质结点的数据结构源码阅读

UE4 的材质编辑器中我们可以创建材质结点然后给它们连线来创建材质

本文将根据源码解析材质结点在内存中的数据结构

Read more  ↩︎

解析游戏开发中环境场景的模块化设计

在游戏工业中的模块化设计是指把可复用、可内联的模块组织起来形成更大的结构或者环境,以此降低工作量,同时还能减少运行时内存消耗

Read more  ↩︎

UE4 材质结点生成 HLSL 代码源码阅读

使用 UE4 的材质编辑器的时候我们可以为材质的颜色、粗糙度、金属度等连接一个常量或者纹理结点,如果要实现复杂效果可能还会用到混合结点,最后就可能看到一个完整的材质其实是由一堆结点和它们之间的连线组成

Read more  ↩︎

渲染管线学习

渲染管线会把内存中的三维模型输出到二维的屏幕上,它具有明显的先后顺序,每一个阶段的输出都会作为下一个阶段的输入。它也可以翻译为渲染流水线

Read more  ↩︎

快排的多线程优化

讲真我从高中到现在就没有手写过一次快排(是 sort 不够好吗)

Read more  ↩︎

乒乓缓存与伪共享

这两个东西都是并行程序设计中必须考虑的问题
他跟多核 CPU 的缓存机制有关

Read more  ↩︎

C++ 右值引用与转移语义简要介绍

在 C++11 之前,值类型变量的传递会导致把它完整的拷贝一份

Read more  ↩︎

Lock-free 数据结构设计

根据名字我们知道它的内部没有使用锁,可以通过原语和一些蛇皮操作来实现

Read more  ↩︎

使用 Mockito 对 SpringBoot 项目单元测试

使用 Mockito 可以用来给模块打桩,实现单元测试

Read more  ↩︎

使用 MockMvc 对 SpringBoot 项目集成测试

对后端进行集成测试的时候,我们一般都希望从发送 HTTP 请求开始对后端进行完整的测试,可能会考虑用 Postman 或者 Postwoman 这类东西,但是直觉告诉我们应该也可以把集成测试写在代码里

Read more  ↩︎