摘要: 本文未经允许,严禁转载!违者必究! BGFX多线程渲染 1. 多线程基础 1. 并发概念 1. 并发任务简介 在多年以前,在手机、pc端、游戏机等,都是一个单核的CPU。这样,在硬件层面上,处理多个任务的时候,也是把一些任务切分成一些小任务。在某些时刻进行任务的切换,从A任务切换到B任务,在这个过程 阅读全文
posted @ 2022-03-01 14:28 SkySnow(天雪) 阅读(1875) 评论(0) 推荐(4) 编辑
摘要: 1.父类的析构函数为什么要加上virtual关键字。 比如说,父类A,子类B。在A* a = new B()的语句的时候,如果父类析构函数没有virtual,我们在delete指针a的时候,会走父类的析构,而不会掉用子类的析构函数,会造成内存泄漏。 2.父类中的virtual函数,子类重写该函数时, 阅读全文
posted @ 2019-08-08 11:07 SkySnow(天雪) 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 各向异性着色是一种逐像素颜色计算方案。在各向异性着色方案中,镜面光在表面各个方向上并非以均等方式反射。其原因在于:材质在各个方向上包含不同的属性,且毛皮、头发以及拉丝金属均具有此类特征。 传统的镜面反射数学公式,我们一般是采用: S = Ls * Ms *(R * E)SH 而各向异性着色方案,我们 阅读全文
posted @ 2019-03-21 10:46 SkySnow(天雪) 阅读(329) 评论(0) 推荐(0) 编辑
摘要: (一)inline函数(摘自C++ Primer的第三版) 在函数声明或定义中函数返回类型前加上关键字inline即把min()指定为内联。 inline int min(int first, int secend) {/****/}; inline 函数对编译器而言必须是可见的,以便它能够在调用点 阅读全文
posted @ 2017-04-27 17:32 SkySnow(天雪) 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 在人脸检测中会用到YCbCr颜色空间,因此就要进行RGB与YCbCr颜色空间的转换。在下面的公式中RGB和YCbCr各分量的值的范围均为0-255。 RGB转到YCbCr: float y= (color.r * 0.256789 + color.g * 0.504129 + color.b * 0 阅读全文
posted @ 2017-03-21 16:52 SkySnow(天雪) 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 有些时候,我们在屏幕上面绘制一个摄取点,在单屏玩游戏的模式下,我们并不能觉得有什么不妥。但是最近VR的热火朝天,我们带上眼镜看双屏的时候,总觉得这个摄取点看着很不舒服。 这个问题该怎么解决?在这里我首先说一下,渲染的原理,3D场景中的物体经过系列的运算,最终从3D渲染到屏幕上,其是经过了模型坐标系— 阅读全文
posted @ 2017-03-21 16:41 SkySnow(天雪) 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 知道着色器的人都会知道一个东西,那就是着色器分为顶点着色器与片元着色器。在移动端真正渲染到手机屏幕上的无非是一些颜色值,但是一个片元是大于一个像素的,一个片元可能包含多个像素,当然一个片元所包含的像素的多少是与手机屏幕分辨率有关系的。 那么我们该怎么操纵像素,我想对我整个场景渲染出来的一些东西进行像 阅读全文
posted @ 2017-03-21 16:17 SkySnow(天雪) 阅读(388) 评论(0) 推荐(0) 编辑
摘要: operator是C++的关键字,它和运算符一起使用,表示一个运算符函数,理解时应将operator=整体上视为一个函数名。 这是C++扩展运算符功能的方法,虽然样子古怪,但也可以理解:一方面要使运算符的使用方法与其原来一致,另一方面扩展其功能只能通过函数的方式(c++中,“功能”都是由函数实现的) 阅读全文
posted @ 2016-11-18 15:38 SkySnow(天雪) 阅读(1157) 评论(0) 推荐(0) 编辑
摘要: // A simple blur shader, weighted on alphauniform sampler2D texture;void main(){ float radius = 0.01; vec4 accum = vec4(0.0); vec4 normal = vec4(0.0); 阅读全文
posted @ 2016-08-22 23:03 SkySnow(天雪) 阅读(172) 评论(0) 推荐(0) 编辑
摘要: a模型在以b模型为基准点,实现b模型旋转,其a模型还是会在a模型原来相对的一个点上。比如说,a模型在b模型左上方的某个位置,如果b模型绕摸个轴旋转了某个度数,其a模型还是相对与b模型在左上方某个位置。一次类推,可以位移缩放等。 现在就来简单的介绍一下这中情况在Android开发中的实现的具体的策略。 阅读全文
posted @ 2016-08-20 18:54 SkySnow(天雪) 阅读(428) 评论(0) 推荐(1) 编辑
levels of contents