架构
文章平均质量分 60
VT LI
VTL
展开
-
unity core-prefab
添加一个组件到prefab,需要通过将组件对应的对象存在磁盘种后,再标记为prefab的一个部分。这部分在prefab.cpp中。原创 2022-09-01 22:36:55 · 1552 阅读 · 0 评论 -
unity computeshader的可读写buffer
computeshader中的读写的buffer,在opengl上是用ssbo实现的。KernelState中的inBuffers,outBuffers这些buffer,会走到GfxDeviceGLESSetComputeBuffer,如果索引0x7FFFFF表示GLE中实际上不存在缓冲区,但仍然需要计数器。则用BindShaderStorageBuffer来绑定ssbo,...原创 2022-07-27 16:54:08 · 2041 阅读 · 0 评论 -
unity spritemask实现
spritemask能实现ui上裁剪部分区域或者叫只显示部分区域。这里介绍相关实现原创 2022-07-15 17:59:03 · 1833 阅读 · 0 评论 -
unity texturestreaming
texturestreaming是想通过摄像机可见范围内的对象区分指定的mipmap,然后只流送指定的mipmap给到mesh中。原创 2022-07-15 17:56:16 · 1336 阅读 · 0 评论 -
unity srpbatcher
srpbatcher是使用ubo实现的,如果是不需要更改的信息他不会更新这个对象的ubo的索引。在GraphicsCapsGLES.cpp中初始化时会确定是否使用了es3来确定是否支持srpbatcher。如果支持则在GpuProgramParamsGLES.cpp中填充参数时执行FillParamsBaseGLES。在有使用uniform的情况下更新ubo的绑定对象UpdateUBOBindings。如果有使用srpbatcher则会判断该是否要重新绑定这个ubo的索引。......原创 2022-06-17 16:22:31 · 1134 阅读 · 0 评论 -
ozzanimation-基于sse的动作系统
ozzanimation是利用sse也就是用simd单指令多数据的形式来处理animation的动作变化、转换坐标以及ik等的处理方式。可以比传统的直接矩阵转换快。原创 2022-06-07 22:50:22 · 674 阅读 · 0 评论 -
当代GPU架构技术
当代的GPU架构分别有IMR,TBR,TBDR,Flex Render等。IMRImmediate Mode Rendering,渲染立即开始优点: 省事,pc端基本用这个架构,直接对DRAM(主存储器)上进行读写,不会存在framedata这种缓存机制缺点: 遮蔽处理的部分依然会被渲染处理器,浪费了大量性能和带宽。TBRTile Based Rendering,FrameBuffer划分区块渲染,FrameBuffer几乎全部的访问在渲染这一块都在SRAM(高速缓冲存储器)上解原创 2020-08-07 15:18:04 · 934 阅读 · 0 评论