2016年5月23日

跨平台渲染框架尝试 - constant buffer的管理

摘要: 1. Preface Constant buffer是我们在编写shader的时候,打交道最多的一种buffer resource了。constant表明了constant buffer中的数据,在一次draw call的执行过程中都是不变的;而在不同的draw call之间,我们可以修改其中的数据 阅读全文

posted @ 2016-05-23 01:26 IndignantAngel 阅读(1814) 评论(0) 推荐(0) 编辑

2015年12月9日

使用BOOST.SPIRIT.X3的RULE和ACTION进行复杂的语法制导过程

摘要: Preface 上一篇简述了boost.spirit.x3的基本使用方法。在四个简单的示例中,展示了如何使用x3组织构造一个语法产生式,与源码串匹配并生成一个综合属性。这些简单的示例中通过组合x3库中的基本语法单元,创建了一些复杂语法单元,也就是非终结符。但这些示例中的语法单元完成的事情还不够,... 阅读全文

posted @ 2015-12-09 16:52 IndignantAngel 阅读(1653) 评论(0) 推荐(1) 编辑

2015年12月8日

在msvc中使用Boost.Spirit.X3

摘要: Preface“Examples of designs that meet most of the criteria for "goodness" (easy to understand, flexible, efficient) are a recursive-descent parser, wh... 阅读全文

posted @ 2015-12-08 14:59 IndignantAngel 阅读(1614) 评论(0) 推荐(0) 编辑

2015年10月19日

跨平台渲染框架尝试 - GPU Buffer的管理(1)

摘要: buffer资源下面来谈谈buffer的管理。buffer资源从广义上就是C语言的数组。如下图所示。图 buffer的广义模型在渲染管线中,无论是opengl还是dx或者其他的渲染api,都会提供下列的buffer类型。vertex buffer,index buffer,constant buff... 阅读全文

posted @ 2015-10-19 21:43 IndignantAngel 阅读(2193) 评论(0) 推荐(0) 编辑

2015年9月24日

跨平台渲染框架尝试 - Texture管理

摘要: 纹理是渲染器重要的资源,也是比较简单的资源。本文将详细讨论纹理资源的管理。在资源管理概述中提到,资源就是一堆内存和CPU与GPU的访问权限。纹理管理在资源管理之上,要负责如何使用者一堆内存构造纹理对象,并告诉渲染器如何使用平台相关的纹理对象。下面,我们开始详细论述。1. 纹理资源首先纹理资源是GPU... 阅读全文

posted @ 2015-09-24 23:47 IndignantAngel 阅读(697) 评论(0) 推荐(0) 编辑

在现代渲染API下,封装跨平台渲染框架的尝试 - 资源管理

摘要: 小生资历浅薄,不讨论该主题的重要性与未来的意义,只是个人兴趣爱好平日对这个问题思考了很多,总觉得要写点东西记录下来。框架还没有定型,只是记录自己设计的过程。系统要跨平台,首先得将平台相关的实现与平台无关的实现分离。鄙文就对资源管理的平台先关与平台无关的分离做一些浅薄的论述。Texture和Buffe... 阅读全文

posted @ 2015-09-24 19:17 IndignantAngel 阅读(1526) 评论(0) 推荐(0) 编辑

2015年3月2日

CppCon - Modern Template Metaprogramming 杂记

摘要: 2014年底才看到github和channel9上有CppCon2014的视频和资料,顿时激动不已。最近小生也一直在研习CppCon2014中令人兴奋的内容。这篇鄙文就是小生学习了《Modern Template Metaprogramming》之后,有对Unevaluated Operand... 阅读全文

posted @ 2015-03-02 12:32 IndignantAngel 阅读(329) 评论(0) 推荐(0) 编辑

导航