2021年12月3日

摘要: 单帧分配器模型 用于分配一些临时的每帧生成的数据。分配的内存仅在当前帧适用,每帧开始时会将上一帧的缓冲数据清除,无需手动释放。 双帧分配器模型 它的基本特点和单帧分配器相近,区别在于第i+1帧适用第i帧分配的内存。它适用于处理非同步的一些数据,避免当前缓冲区被重写(同时读写) 堆栈分配器模型 堆栈分 阅读全文
posted @ 2021-12-03 16:33 星吊 阅读(122) 评论(0) 推荐(0)
摘要: 三种类型:1 sequential fit(连续的) 通过链表将空闲内存链接起来,称为freelist。 分配内存时,先从freelist中查找是否存在满足要求的内存块,如果不存在,再从未分配内存中获取;当我们找到合适的内存块后,分配合适的内存,并将多余的部分放回freelist。 包括first 阅读全文
posted @ 2021-12-03 16:22 星吊 阅读(247) 评论(0) 推荐(0)
摘要: 内存碎片 程序的内存往往不是紧凑连续排布的,而是存在着许多碎片。我们根据碎片产生的原因把碎片分为内部碎片和外部碎片两种类型: (1) 内部碎片:系统分配的内存大于实际所需的内存(由于对齐机制); (2) 外部碎片:不断分配回收不同大小的内存,由于内存分布散乱,较大内存无法分配; 内部碎片和外部碎片 阅读全文
posted @ 2021-12-03 16:08 星吊 阅读(155) 评论(0) 推荐(0)

2021年11月28日

摘要: 2. 堆与资源 当须要多个缓冲区资源来渲染场景时,对于这些资源,图形程序员必须决定如何建立这些缓冲区资源。在内存堆(ID3D12Heap)中分配GPU资源的方式有几种:app 已提交资源 (Committed Resources) 已放置资源 (Placed Resources) 预留资源 (Res 阅读全文
posted @ 2021-11-28 23:00 星吊 阅读(338) 评论(0) 推荐(0)

2021年11月5日

摘要: 透视投影矩阵之后得到的坐标 注意这里,x即Px,y即Py,z即Pz,就是变换前的坐标,w为1. 透视投影矩阵之后得到的是齐次裁剪空间,但是需要除以Pz才能得到NDC空间坐标,Pz就是坐标变换前的Z值。 在齐次裁剪空间的基础上进行透视除法(perspective division)或称齐次除法(hom 阅读全文
posted @ 2021-11-05 17:37 星吊 阅读(580) 评论(0) 推荐(0)

2020年12月10日

摘要: 1、ASCII ASCII全称(American Standard Code for Information Interchange)美国信息交换标准代码,在计算机内部中8位二进制位组成1个字节(8(比特)bit=1(字节)byte),而ASCII的编码方式是把一个字节中的低7位用来编码, 最高位也 阅读全文
posted @ 2020-12-10 17:25 星吊 阅读(94) 评论(0) 推荐(0)

2016年12月27日

摘要: 在3D渲染中,输入数据是一些primitive信息,包括顶点位置、颜色、 纹理坐标等等。在光栅化阶段,primitive(一般为三角形)被转化成一系列的fragment(或者称为像素),这些fragment接下来要做 ps操作,此时每个fragment都有位置、颜色、纹理坐标这些属性信息,这些属性信 阅读全文
posted @ 2016-12-27 16:03 星吊 阅读(97) 评论(0) 推荐(0)
摘要: 概述 投影变换完成的是如何将三维模型显示到二维视口上,这是一个三维到二维的过程。你可以将投影变换看作是调整照相机的焦距,它模拟了为照相机选择镜头的过程。投影变换是所有变换中最复杂的一个。 视锥体 视锥体是一个三维体,他的位置和摄像机相关,视锥体的形状决定了模型如何从camera space投影到屏幕 阅读全文
posted @ 2016-12-27 15:38 星吊 阅读(126) 评论(0) 推荐(0)

2016年12月23日

摘要: 网上很多的推导过程都是错的,所以写一个。 先平移,再旋转就可以,先平移的原因是,如果先旋转的话,坐标系已经改了,所以先平移。 平移的变换和相机的变换是相反的,所以是: 平移完成后,相机的位置就和原点的位置一样了,用v表示相机坐标下的点,用v'表示此时原点坐标下的点。 v' = v M 因为M是正交矩 阅读全文
posted @ 2016-12-23 16:32 星吊 阅读(606) 评论(0) 推荐(0)

导航