摘要:
四种情况:1. 创建一个类指针时,调用其构造函数;删除当前指针时,自动调用其析构函数。2. 创建子类对象指针时,首先调用其父类的构造函数,然后调用子类的构造函数;删除当前指针时先调用子类的析构函数,然后调用父类的析构函数。3. 一个父类指针指向子类地址时,创建指针时先调用父类的构造函数,然后调用子类 阅读全文
摘要:
最近几天在GitHub上看到一个关于Shader开发的开源项目thebookofshaders,其中一个贡献者是Patricio Gonzalez Vivo,这个开源项目囊括了《The book of shaders》这本书(http://thebookofshaders.com),同时包括中文,英 阅读全文
摘要:
近期看同事写的代码,看的过程中很是吃力。原因是代码中用了几种设计模式,而我对常用的几种设计模式不熟悉,所以导致看别人调来调去的代码很费劲。正好这几天工作不是特别忙,抓紧时间恶补下相关知识(我看的是《大话设计模式》这本书)。 今天介绍的是策略模式,分为如下四个部分分析。 一、什么是策略模式 策略模式定 阅读全文
摘要:
来自:http://blog.sina.com.cn/s/blog_48f587a80100k630.html C++中的struct是对C中struct进行了扩展,它不单是一个包含不同数据类型的数据结构了,它还有其他很多的功能,例如: 1. 声明变量和方法 2. 继承 3. 实现多态 struct 阅读全文
摘要:
一、UML简述 类是面向对象系统中最重要的构造块。类图显示了一组类、接口、协作以及他们之间的关系,通过类图,我们能够很好的掌握类与类之间的关系。 首先给出一幅UML类图,此图来源于《大话设计模式》,其中讲的很好,感兴趣的可以去查看。然后细细查看图中的每个符号、每个元素,思考之间的关系。 二、UML类 阅读全文
摘要:
饱和度saturation,是指色彩的鲜艳程度,也称色彩的纯度。饱和度取决于该色中含色成分和消色成分(灰色)的比例。含色成分越大,饱和度越大;消色成分越大,饱和度越小。纯的颜色都是高度饱和的,如鲜红,鲜绿。混杂上白色,灰色或其他色调的颜色,是不饱和的颜色,如绛紫,粉红,黄褐等。完全不饱和的颜色根本没 阅读全文
摘要:
核心代码: 其中exposure的取值范围为[-10,10] https://github.com/BradLarson/GPUImage 阅读全文
摘要:
对比度指的是一幅图像中明暗区域最亮的白和最暗的黑之间不同亮度层级的测量,差异范围越大代表对比越大,图像越鲜亮,差异范围越小代表对比越小,图像越灰。 GPUImage中实现了对比度调整的Filter,其核心代码如下(fragment): 其中contrast的取值范围为[0,4]。 阅读全文
摘要:
亮度brightness其实是对RGB的调整,RGB值越大,效果越亮;反之则越暗。 GPUImage中提供了对图像亮度调整的Filter,其核心代码如下(fragment): 其中brightness的取值范围为[-1,1] 阅读全文
摘要:
CocoaPods的使用 前面讲过CocoaPods的安装,接下来以GPUImage为例,讲解CocoaPods的使用。具体步骤如下: 1.新建项目,名称为GPUImageExample1,文件目录如下图所示。 2.从终端进入当前GPUImageExample1文件夹、.xcodeproj文件以及t 阅读全文