自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 【(一)OpenGL入门】6.齐次坐标

将坐标变换为标准化设备坐标,接着再转化为屏幕坐标的过程通常是分步进行的,物体的顶点在最终转化为屏幕坐标之前还会被变换到多个坐标系统,变换到多个过渡坐标系统的优点是在一些特定的坐标系中,运算和操作会变得相对容易。因为透视的原理,近大远小,比如我们站在一座高楼的门口,我们只能看见门,我们站到几十米之外将目睹整个大楼的外观,裁剪就是根据透视的原理裁减掉我们视野之外的图像。我们知道了五种坐标系空间的名字,而下面的流程图直观地告诉了我们图形的坐标最终呈现在屏幕上是如何变化的。最后的顶点应该被赋值到顶点着色器中的。

2024-09-01 00:06:07 854

原创 【(一)OpenGL入门】5.变换

以上是沿着某个坐标轴进行旋转,对于3D空间中的旋转,一个更好的模型是沿着任意的一个轴,比如单位向量$(0.662, 0.2, 0.7222)$旋转,而不是对一系列旋转矩阵进行复合(先向某个轴旋转再向某个轴旋转),会出现万向节锁死的问题。矩阵可以通过(i, j)进行索引,i是行,j是列,这就是上面的矩阵叫做2×3矩阵的原因(3列2行,也叫做矩阵的维度(Dimension))。其实上面的公式推导并不难,我们来解释下沿z轴旋转的等式左边的表达式是怎么得到的,沿其它两个轴的原理和它都是一样的。

2024-08-04 23:35:23 928

原创 vscode+plantuml环境搭建

1.本地安装配置java。2.本地安装配置graphviz。3.安装vscode插件。

2024-04-23 00:03:58 1574 1

原创 【(一)OpenGL入门】4.纹理

我们之前只画了一个三角形,而更加复杂的物体是更多的三角形组成的,并且我们通过为每个顶点添加颜色来增加物体的细节。如果我们想让物体更加真实,就得有足够多的顶点,且指定足够多的颜色,这样会产生很多额外开销,因为每个模型需要很多顶点,而每个顶点又需要颜色属性。为了方便且减少开销,我们更习惯使用纹理来绘制更多的模型,纹理就像一张2D的贴图,把它贴在图像或模型上来增加物体的细节。这样物体细节取决于设计师的美工,而程序员则不必指定更多的顶点。

2024-04-07 22:53:00 1162

原创 如何在windows下使用vscode连接linux虚拟机进行代码开发

解决上述所有问题后,我们现在已经可以在windows上的vscode中连接linux的samba服务器编辑代码,并可以在vscode终端上连接linux的ssh服务器进入linux系统终端进行代码编译。但是发现在vscode终端命令行编译出现了问题,回到虚拟机编译也不行,而且在vscode中编辑的代码在虚拟机那边看起来是空的。3.windows上想连接linux的ssh可能还需要在windows上安装一个插件,自行去安装,我没有安装这个插件也能访问。1.我们需要提前搭建好的linux虚拟机。

2024-03-31 12:04:44 3629 1

原创 【(一)OpenGL入门】3.着色器

着色器是运行在gpu核上的小程序。这些小程序针对渲染管线中的每个特定步骤运行。从本质上说,着色器只不过是将输入转换为输出的程序。着色器也是非常孤立的程序,他们唯一的交流是通过输入和输出。它是使用一种为计算机图形学量身定制的GLSL语言写成的,GLSL有两种容器类型,向量vector和矩阵matrix。向量允许一些有趣和灵活的分量选择方式,叫重组(swizzling)。//添加offset// 设置uniform值//获取时间//在着色器程序里找到ourColor。

2024-02-15 22:03:33 1113 2

原创 【(一)OpenGL入门】2.画一个三角形

如图,因为我们定义的顶点坐标vertices只有顶点属性,所以采用VAO1的形式,只有一个属性,相应的VBO1中每一个元素就是一个顶点vertex,保存其x,y,z值。由几次运行结果可知,最后呈现在窗口的画面是否是正方形和输入的标准设备坐标无关,而和glviewport后的屏幕坐标有关,片段着色器处理后的像素点的形状也是这么来的。我们可以先不着急编写着色器,使用系统自带的着色器画一个三角形出来,旨在使用上面学习的知识,先避开着色器部分,更快的用opengl画出一个三角形。从顶点着色器输出的数据输入到。

2023-12-15 00:37:37 1140

原创 【(一)OpenGL入门】1.vs2022环境搭建及Hello窗口

安装编译glad,glad作用是为了把函数指针和显卡驱动里面的函数建立联系,因为各显卡厂商对于OpenGL标准的理解不同,写出来的驱动也不同。将glfw-3.3.8/include/GLFW/下的.h文件和glfw-3.3.8/build/src/Debug下的.lib文件分别拷贝到我们创建的include和lib目录下。文件到你的工程中,修改这两处头文件,具体得根据你的include目录,如果你的include目录下还有文件夹,那就得用人家源码的写法,我的.h直接复制到include目录中所以这样改。

2023-05-28 21:13:26 3538 4

原创 ubuntu18.04中vim插件ctags和taglist安装配置及使用

ubuntu18.04中vim插件ctags和taglist安装配置及使用

2022-09-01 15:39:44 1657

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除