摘要: BlockAllocator 的内存管理情况可以用下图表示 整体思路是,先分配一大块内存 Chunk,然后将 Chunk 分割成小块 Block。由于 Block 是链表的一个结点,所以可以通过链表的形式把未使用的 Block 连接起来,并保存到 pFreeLists 中。当我们向 BlockAll 阅读全文
posted @ 2017-07-02 22:15 为了邮箱5 阅读(619) 评论(0) 推荐(0) 编辑
摘要: 假如要渲染一个纯色矩形在窗口上,应该怎么做? 先确定顶点的格式,一个顶点应该包含位置信息 vec3 以及颜色信息 vec4,所以顶点的结构体定义可以这样: 然后填充矩形四个顶点是数据信息: 分配一块内存,将内存类型转换为 Vertex,最后设置数据。上面只是用了4个顶点,显然还要设置索引数据: 有了 阅读全文
posted @ 2017-07-02 20:47 为了邮箱5 阅读(894) 评论(0) 推荐(0) 编辑
摘要: Pass,渲染通路,一个渲染通路指的是一次像素处理和一次顶点处理,也就是指的是一次绘制。简单来说就是顶点数据在渲染管线中走一遍最后绘制。 渲染粒子系统的粒子时,需要开启 OpenGL 的混合模式,并使两个颜色相加。如果同一时间进行多张图片的绘制,并且这些图片的渲染并不需要开启混合模式。这时渲染的最终 阅读全文
posted @ 2017-07-02 16:08 为了邮箱5 阅读(1016) 评论(0) 推荐(0) 编辑
摘要: Shader 只是进行一些简单的封装,主要功能: 1、编译着色程序 2、绑定 Uniform 数据 3、根据着色程序的顶点属性传递顶点数据到 GPU 着色程序的编译 Simple2D 只支持顶点着色器和片段着色器,暂不支持其他着色器。 OpenGL 绘制方式 使用openGL图形库绘制,都需要通过o 阅读全文
posted @ 2017-07-02 11:58 为了邮箱5 阅读(1111) 评论(0) 推荐(0) 编辑