定向光 定向光模拟的其实就是光源在无限远处时,到达物体表面的所有光的方向可以认为是相互平行的,例如太阳光,此时在光照计算中与光源的位置已无多大关系,只需知道光的方向即可。...
定向光 定向光模拟的其实就是光源在无限远处时,到达物体表面的所有光的方向可以认为是相互平行的,例如太阳光,此时在光照计算中与光源的位置已无多大关系,只需知道光的方向即可。...
漫反射贴图 要想实现一个物体不同部分能有不同的漫反射光照处理,即对物体的漫反射分量有着精确的控制,我们应该需要对这个物体的每一个片段都单独设置其漫反射颜色,那么如何根据片...
周常。学到了一个自己之前没接触到树结构——前缀树;学到了拓扑排序的实现,之前都只是知道其概念,并没有去实现。 LeetCode | 148. 排序链表使用自底向上的归并实...
物体的材质属性 不同物体的材质会影响光照结果,那么在我们上节学的光照模型中,光照是由三种光照合成的,也就是说材质会影响这三种光照效果,所以材质属性也应细分为三个部分: a...
周常,感觉这周做的题比上周难,花的时间较多。 LeetCode | 105. 从前序与中序遍历序列构造二叉树 LeetCode | 114. 二叉树展开为链表 LeetC...
趁着这段还没开始毕设的黄金闲暇时间,沉下心来学点自己想学的东西,例如重拾OpenGL就是不错的决定。在暑假学完基本光照之后,由于准备秋招的原因就放下了OpenGL的学习,...
一个迭代器具有很多特性(根据经验一般是5个),本节主要学的就是迭代器的5个特性是什么,以及如何利用traits机制去提取某迭代器的特性,例如其所指对象的类型(value_...
尽量一周五题,不强求。做题一般自己先尝试想出思路并实现,AC后再做优化,如果苦思冥想着实不得要领就去跟着大佬的思路实现一遍。 LeetCode | 78. 子集 Leet...
由于感觉博客园的技术氛围更为浓郁,所以打算以后的学习总结都改投博客园,但是并不意味着这个号就不再更新了,我会把博客园发的文章的链接都贴在这里。 于我现在的水平而言,我并...
纹理坐标 纹理坐标是指明在纹理图某个位置的坐标,坐标系(xy轴/uv轴/st轴)在图片的左下角,xy的范围都是0到1之间,例如砖墙的纹理坐标图就是: 某个顶点坐标要想...
上一节中有提到着色器中可以定义uniform变量,而查询和设置uniform的变量要用到特定的函数,且需要知道该着色器所在的着色器程序的ID,由于现在我们已经把着色器的创...
上节我们学习了如何实现简单的顶点着色器和片段着色器,其中涉及到了着色器之间简单的输入输出和编写着色器源码的专用语言GLSL。但上节终究学的只是皮毛,这节将深入研究着色器,...
第一个参数是长方体的中点;第二个参数是长方体的半长、半宽、半高;第三个参数是长方体的旋转量;第四个参数是只返回指定物体的碰撞结果。 ReturnsCollider[] C...
本节将对上节学习的内容稍作补充,然后开始复习及拓展训练,以提高熟练度。对于习题的答案并不一定是最优解,练习为主,并不做过多文字上的解释。 索引缓冲对象(Element B...
这节我们打算真正实现黑魂里面的跳跃机制,我先讲述的黑魂是怎么跳的。在黑魂中,它把后跳、翻滚、前跳、跑步做在了同一个按键(PC是Space,PS手柄是○)里,当角色静止不动...
2D坐标与像素是有所区别的。2D坐标准确表示一个点的在2D空间的位置,而像素只是2D坐标的近似值(approximation),因为屏幕分辨率的关系,所以像素并不会准确反...
DescriptionCallback for setting up animation IK (inverse kinematics).OnAnimatorIK() is ...
在上节实现了手柄输入之后,提到过这节将会把两种输入方式的共通点抽象出来,写成一个抽象基类,而两种输入方式成为其的子类。 首先我们可以来找找两种输入方式有什么共通点。在人...
这节中我们来尝试实现手柄输入,其实跟键盘输入是大同小异的,区别就在于键入判断的函数不一样,但我们不打算仅限于此,在实现了手柄输入以后,我还打算把手柄输入和键盘输入共通的地...