![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图形学
文章平均质量分 93
王王王渣渣
这个作者很懒,什么都没留下…
展开
-
贝塞尔曲线(Bezier Curve)
曲线和曲面在生活中存在着各种各样光滑的曲线或曲面,例如汽车的表面,钢珠球等。在建模的时候,我们通常使用很多的小三角形来逼近这样的曲面,因此放大了看,就会发现这些面其实是凹凸不平的。但是实际生活中,例如我身边的杯子,无论怎么看它都是一个光滑的表面。那么我们应该怎么表达这些光滑的曲线或曲面呢?我们先从曲线入手,看看它的几种表达方式。曲线的显示表达学过函数我们知道,画出来的图其实就是一条曲线,如下:二维空间中,曲线的显示表示是以自变量来表达因变量的值,例如在xy空间中,可...原创 2021-04-21 16:29:48 · 16124 阅读 · 7 评论 -
Shader中使用距离函数(Distance Function)绘制二维图形
https://blog.csdn.net/lanchunhui/article/details/50887417https://blog.csdn.net/qq_41368247/article/details/106194092https://blog.csdn.net/xiaowo123456/article/details/89204203https://zhuanlan.zhihu.com/p/345227118https://zhuanlan.zhihu....原创 2021-04-16 17:55:18 · 4727 阅读 · 3 评论 -
图形学基础知识:着色(三)Rendering Pipeline与Shader
管线(Pipeline)什么是管线?管线我们可以理解为流水线,流水线大家都懂,就是工厂里面生产东西的一整套流程。例如饮料厂要生产饮料,需要洗瓶子,倒饮料,加盖,包装等等,这一整套过程就是流水线。那么我们要把一个三维场景渲染成一幅二维的图像,同样需要一个先干嘛再干嘛然后干嘛最后干嘛的过程,这个过程或流水线,我们就称之为管线。实时渲染管线(Real-time Rendering Pipeline)通过前面几篇的学习,我们知道了要把一个三维场景渲染成一幅二维的图像大致分为以下几个步骤:M.原创 2021-04-14 16:17:02 · 1963 阅读 · 0 评论 -
图形学基础知识:着色(二)纹理映射
但是!有一种投影不行,就是透视投影,依旧是上面的三角形的边BC,我们来看看透视投影会发生什么,如下图:很明显我们就可以看出来,此时 D' 不再是 B' 和 C' 的中心点。当然了,数学不能光用眼睛看,我们需要推导为了方便计算,我们设O点为原点,O到投影屏幕的距离为 l (如上图所示),根据相似三角形可以得到:,即:。同理可得,由于D是BC的中心点,根据直线的重心坐标我们可以知道,,带入可得:,而投影后B'C'的中点的y值应该是,可以发现和 并不相等。emmm,好像直接看点D的重...原创 2021-04-11 23:39:13 · 2969 阅读 · 4 评论 -
图形学基础知识:重心坐标(Barycentric Coordinates)
前言在前面的文章中我们经常提到知道某个三角形三个顶点的属性,然后就可以求出三角形内部某一点对应的属性。例如深度缓存的时候,高洛德着色的时候等等,但是我们一直没有说具体应该如何计算,本文就来介绍一下这一部分内容。想要计算三角形内部某一点对应的属性,也就是我们一直说的三角形的插值,就需要用到重心坐标的概念。直线的重心坐标在讲三角形的重心坐标前,我们先来看一看直线上的重心坐标是怎么定义的。在生活中想必大家都看过或挑过担子吧,人们在担子两边挂上重物,然后用肩膀扛起担子。如果担子两边的物体差.原创 2021-04-01 18:13:07 · 17598 阅读 · 1 评论 -
图形学基础知识:着色(一)Blinn-Phong反射模型与着色频率
前言在前面的学习中,我们知道可以把拍摄的物体通过MVP变换和视图变换变到和屏幕一样的大小。然后我们把拍摄的物体看作是一个个小三角形组成的表面,屏幕则是由一个个固定大小的像素组成,这样我们就可以通过光栅化来...原创 2021-03-30 18:30:46 · 1968 阅读 · 1 评论 -
图形学基础知识:走样和反走样,频域和滤波
前言在上一篇的文章中,我们做了光栅化的操作,但是会发现做完后会有很严重的锯齿,因此为了画面效果,我们需要对其进行优化,也就是抗锯齿。这块内容比较难懂,可能自己在文章中也不会总结的很好(emmm,都怪自己当初没好好读书),所以还是建议跟我一样不懂的同学自己看一下原视频:GAMES101-现代计算机图形学入门-闫令琪-P6Sampling Artifacts(瑕疵)in Computer Graphics在上一篇中,我们使用了采样的方法来进行光栅化,摩尔纹(Moire),去掉奇数行和奇.原创 2021-03-09 19:00:06 · 7171 阅读 · 6 评论 -
图形学基础知识:光栅化和采样
在前面的学习中,我们已经可以通过MVP变换,把摄像机观测的物体都压缩成了一个标准立方体,接下来我们要做的是把这个标准立方体绘制到屏幕(Screen)上何为屏幕?一个二维数组,每个元素称之为像素(pixel,picture element的缩写),例如我们常说的屏幕分辨率1920*1080,就是说有这么些个像素。屏幕是一个典型的光栅成像设备。光栅(Raster)在德语中就是屏幕的意思,光栅化(Rasterize,名变动)就是把东西画在屏幕上。像素,最小单位,像素内的颜色可以用rgba来定义,一原创 2021-03-03 17:39:54 · 2432 阅读 · 1 评论 -
图形学知识基础:视图变换和投影变换及其对应矩阵(右手坐标系)
视图变换View/Camera transformation投影变换Projection transformationOrthographic projectionPerspective projection原创 2021-02-24 19:00:40 · 5220 阅读 · 6 评论 -
图形学知识基础:三维变换,旋转(欧拉角旋转与万向锁,绕任意轴旋转,四元数)
三维变换与上一篇文章中的二维变换类似,我们可以使用一个 3*3 的矩阵来表示一个三维的线性变换:并且矩阵的,和即为变化后的值,,和即为变化后的值,,和即为变化后的值。仿射变换的公式为:同样的,我们可以通过引入齐次坐标来表示仿射变换,公式为:例如缩放s倍的矩阵为:旋转变换相比其他变换,旋转变换相对的要复杂一些。...原创 2021-01-29 17:34:06 · 6231 阅读 · 4 评论 -
图形学知识基础:变换与矩阵的关系,齐次坐标
缩放矩阵缩放该对角阵称为缩放矩阵对称切变选择齐次坐标平移变换向量平移不变性两个点的中点原创 2021-01-20 18:30:00 · 3233 阅读 · 1 评论 -
图形学知识基础:矩阵
概念由个数排成的m行n列的数表称为m行n列的矩阵,简称矩阵。记作:这个数称为矩阵A的元素,简称为元,数位于矩阵A的第i行第j列,称为矩阵A的 (i, j) 元。元素是实数的矩阵称为实矩阵,元素是复数的矩阵称为复矩阵。而行数与列数都等于n的矩阵称为n阶矩阵或n阶方阵。基本运算加法...原创 2021-01-15 16:48:35 · 1676 阅读 · 0 评论 -
图形学知识基础:向量
向量指具有大小和方向的量,一般记做:a ,,,同时也可以用数对的形式表示,例如:,向量的矩阵表示: 向量的大小,也就是向量的长度(一般称作为 模),向量a的模记为:,若,则单位向量:即模为1的向量零向量:即模为0的向量,零向量的方向是任意的...原创 2020-08-04 15:36:30 · 2408 阅读 · 0 评论