Niagara(二):Sprite粒子渲染 代码基于UE 5.6 在正式进入标准emitter之前,还是先把粒子的渲染给理清,这里以sprite为例。 MeshBatch创建 前文提到,GPU Sim的simulate在GetDataBuffer中分配了gpu buffer,调用栈如下 1234567FNiagaraStatelessComputeManager::GetDataBufferFNiagaraRendererS 2026-09-19 源码阅读 #UE #Niagara
Niagara(一):lightweight emitter (Stateless) 代码基于UE 5.6 背景 在Niagara中,可以右键创建lightweight emitter。相比标准emitter,这种emitter采用了stateless的模型,即粒子的模拟不依赖上一帧粒子的状态,不需要读上一帧粒子属性buffer,从而实现了更小的开销。但同样地,这也引入了局限性,由于没有状态,粒子属性只能和时间相关,大大限制了粒子的表达力。这里分析一下它的源码实现。 2026-09-18 源码阅读 #UE #Niagara
Piccolo源码解读(二)——反射实现 之前我们对源码的项目结构有了简单的了解,这篇文章我们来看看Piccolo里是怎么实现反射的 2023-09-24 源码阅读 #源码阅读 #Piccolo #游戏引擎
Piccolo源码解读(一)——项目结构 这篇文章基于的Piccolo版本的commit号为214542257eeda28b09495fe38910d42fa2ba48b4 2023-08-11 源码阅读 #源码阅读 #Piccolo #游戏引擎 #cmake
UE中如何优雅地在GUI界面禁用游戏输入 最近软工的大程需要在UE中制作GUI,我之前并没有使用过,所以基本上都是现查现用,但在搜索过程中发现网上并没有GUI打开期间禁用游戏输入的比较优雅的方案(也可能是我没找到),最后在实践中发现一种比较好的解决方案。 2023-05-29 杂谈 #UE #UMG #GUI