计算机图像学
文章平均质量分 95
团子%
这个作者很懒,什么都没留下…
展开
-
大作业
https://blog.csdn.net/qq_34406005/article/details/84328912https://free3d.com/3d-model/pokeball-4613.html最终项目 最后一个项目两个部分 基本部分: 编译assimp,导入一个球体。添加天空体,使球体表面镜面 先进的部分: 0的影子映射 1影子体积 2最大...原创 2021-04-29 23:18:32 · 66 阅读 · 0 评论 -
计算机图形学——坐标系统
1、概念为了将坐标从一个坐标系变换到另一个坐标系,我们需要用到几个变换矩阵,最重要的几个分别是模型(Model)、观察(View)、投影(Projection)三个矩阵。我们的顶点坐标起始于局部空间(Local Space),在这里它称为局部坐标(Local Coordinate),它在之后会变为世界坐标(World Coordinate),观察坐标(View Coordinate),裁剪坐标...原创 2019-11-11 20:29:49 · 1676 阅读 · 0 评论 -
南邮|计算机图形学——所有着色器汇总
基础知识1、为了设置顶点着色器的输出,我们必须把位置数据赋值给预定义的gl_Position变量,它在幕后是vec4类型的。在main函数的最后,我们将gl_Position设置的值会成为该顶点着色器的输出。由于我们的输入是一个3分量的向量,我们必须把它转换为4分量的。2、片段着色器,它需要一个vec4颜色输出变量,因为片段着色器需要生成一个最终输出的颜色。如果你在片段着色器没有定义输出颜...原创 2019-11-26 20:49:17 · 628 阅读 · 0 评论 -
计算机图形学——模型及基础知识
1、库文件:1、(VC++ 目录)选项卡——包含目录assimp:D:\app\Assimp\assimp\includeglfwD:\360Downloads\glfw-3.3.bin.WIN32\includeglewD:\360Downloads\glew-2.1.0-win32\glew-2.1.0\include2、(VC++ 目录)选项卡——库文件a...原创 2019-11-26 21:09:28 · 721 阅读 · 0 评论 -
南邮|计算机图形学——导入模型、添加天空盒
导入模型1、网格#include <string>#include <fstream>#include <sstream>#include <iostream>#include <vector> using namespace std; // GL Includes#include <GL/glew.h&g...原创 2019-11-26 21:02:54 · 1223 阅读 · 1 评论 -
南邮——计算机图形学——阴影映射
阴影映射阴影映射(Shadow Mapping)背后的思路非常简单:我们以光的位置为视角进行渲染,我们能看到的东西都将被点亮,看不见的一定是在阴影之中了。如果我们从光源的透视图来渲染场景,并把深度值的结果储存到纹理中会怎样?通过这种方式,我们就能对光源的透视图所见的最近的深度值进行采样。最终,深度值就会显示从光源的透视图下见到的第一个片元了。我们管储存在纹理中的所有这些深度值,叫做深度贴图...原创 2019-11-26 21:15:29 · 464 阅读 · 0 评论 -
南邮——计算机图像学——光照、冯氏光照模型
颜色可以数字化的由红色(Red)、绿色(Green)和蓝色(Blue)三个分量组成,它们通常被缩写为RGB。这三个不同的分量组合在一起几乎可以表示存在的任何一种颜色。(一)观察物体(1)物体的片段着色器#version 330 coreout vec4 color;uniform vec3 objectColor;uniform vec3 lightColor;void ...原创 2019-10-17 11:19:47 · 500 阅读 · 0 评论 -
南邮——计算机图像学——会动的立方体(变换)
注意,当矩阵相乘时我们先写位移再写缩放变换的。建议您在组合矩阵时,先进行缩放操作,然后是旋转,最后才是位移,否则它们会(消极地)互相影响。比如,如果你先位移再缩放,位移的向量也会同样被缩放(译注:比如向某方向移动2米,2米也许会被缩放成1米)!(一)矩阵变换1、添加头文件我们需要的GLM的大多数功能都可以从下面这3个头文件中找到:#include <glm/glm.hpp...原创 2019-10-16 22:38:26 · 471 阅读 · 0 评论 -
南邮——计算机图像学——贴纹理
纹理是一个2D图片(甚至也有1D和3D的纹理),它可以用来添加物体的细节;你可以想象纹理是一张绘有砖块的纸,无缝折叠贴合到你的3D的房子上,这样你的房子看起来就像有砖墙外表了。因为我们可以在一张图片上插入非常多的细节,这样就可以让物体非常精细而不用指定额外的顶点。纹理环绕方式纹理坐标的范围通常是从(0, 0)到(1, 1),那如果我们把纹理坐标设置在范围之外会发生什么?OpenGL默认的行...原创 2019-10-16 21:58:58 · 318 阅读 · 0 评论 -
南邮——计算机图像学——画彩色三角形,正方形
在OpenGL中,任何事物都在3D空间中,而屏幕和窗口却是2D像素数组,这导致OpenGL的大部分工作都是关于把3D坐标转变为适应你屏幕的2D像素。3D坐标转为2D坐标的处理过程是由OpenGL的图形渲染管线(Graphics Pipeline,大多译为管线,实际上指的是一堆原始图形数据途经一个输送管道,期间经过各种变化处理最终出现在屏幕的过程)管理的。图形渲染管线可以被划分为两个主要部分:第一部...原创 2019-10-16 21:57:56 · 854 阅读 · 0 评论 -
计算机图形学|南邮——画由键盘鼠、标控制的正方体
要定义一个摄像机,我们需要它在世界空间中的位置、观察的方向、一个指向它右测的向量以及一个指向它上方的向量。细心的读者可能已经注意到我们实际上创建了一个三个单位轴相互垂直的、以摄像机的位置为原点的坐标系。这里涉及到OpenGL的坐标系类型,OpenGL是右手坐标系,而DX是左手坐标系,简单讲讲右手坐标系:在图上画右手坐标系,一条水平的直线表示X轴,从左往右为正方向;一条垂直的直线表示Y轴,...原创 2019-10-15 22:14:23 · 1417 阅读 · 0 评论