
openGL
文章平均质量分 72
openGL&&计算机图形学
Lampard杰
/*2017年4月6日*/ 我开始了我的coding之路,希望毕业之后回看这里,能达到理想的目标。
/*2020年3月11日*/ 我正式参与工作,在君海成为一个游戏开发者。希望自己保持初心,keep learning,keep coding。
/*2021年3月25日*/ 人生第一次跳槽去到了网易游戏,希望尽快适应这个环境,尽快成为技术更棒的人。
展开
-
【openGL2021版】链接FBX模型库
【openGL2021版】链接FBX模型库 大家好,我是Lampard猿奋 欢迎来到船新的openGL基础系列的博客,今天主要实现的是链接FBX模型第三方库(一)demo回顾 上周我已经实现了粒子系统,可以看到场景中已经存在着像萤火虫一样的闪光了(二)什么是FBX模型 一直接触3d开发的大佬们肯定对这个模型已经很熟悉了。但是对于我这个常年和2d游戏打交道的小白来说,第一次...原创 2021-11-21 23:41:44 · 1108 阅读 · 0 评论 -
【openGL2021版】粒子系统(全)
【openGL2021版】粒子系统(全) 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要实现的是粒子系统(一)上周demo回顾 上周实现了屏幕的截图以及实现把截图保存到本地目录的功能,原理主要是利用了把显存的数据传送回内存中,然后根据像素信息重新创造一个纹理并保存(二)什么是粒子系统粒子系统表示三维计算机图形学中模拟一些特定的模糊现象的技术...原创 2021-10-09 14:58:44 · 4783 阅读 · 0 评论 -
【openGL2021版】粒子系统(上)
【openGL2021版】粒子系统 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要实现的是粒子系统(一)上周demo回顾 上周实现了屏幕的截图以及实现把截图保存到本地目录的功能,原理主要是利用了把显存的数据传送回内存中,然后根据像素信息重新创造一个纹理并保存(二)什么是粒子系统粒子系统表示三维计算机图形学中模拟一些特定的模糊现象的技...原创 2021-09-26 00:52:48 · 635 阅读 · 0 评论 -
【openGL2021版】屏幕截图并保存
【openGL2021版】屏幕截图并保存 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要实现的是屏幕截图并保存(1)上周demo回顾 上周已经给这个demo加一个地板并实现倒影的效果,这个礼拜主要是实现一下屏幕的截图功能以及实现把截图保存到本地目录(2)CaptureScreen 在两个月之前我已经使用cocos引擎写过一次截图的...原创 2021-09-13 13:22:00 · 2260 阅读 · 6 评论 -
【openGL2021版】创建地板图层
【openGL2021版】创建地板图层 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要实现的是创建地板图层(1)上周demo回顾 上周已经实现了封装2d的纹理类,给demo加了一个小Logo。接下来要给这个项目加一个地板并实现倒影的效果(2)创建地板图层 同样创建一个类来定义这个地板图层,这个地板类中有Init方法,其主要内...原创 2021-09-01 21:05:19 · 1177 阅读 · 0 评论 -
【openGL2021版】创建UI纹理类
【openGL2021版】创建UI纹理类 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要实现的是创建2D的UI纹理类(1)上周demo回顾 上周我们已经实现了FPS式的摄像机控制,键盘的“WSAD”可以控制摄像头的前后左右移动,鼠标右键可以控制摄像头旋转,并且给demo加了天空盒背景 整个demo看起来就有点像样了,可是一款游戏肯定是有许...原创 2021-08-31 00:19:20 · 501 阅读 · 2 评论 -
【openGL2021版】天空盒
【openGL2021版】天空盒 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要实现的是天空盒(1)什么是天空盒 上周我们已经实现了FPS式的摄像机控制,键盘的“WSAD”可以控制摄像头的前后左右移动,鼠标右键可以控制摄像头旋转 接下来就是要丰富一下蓝蓝的背景,给背景加上一个天空盒。那什么是天空盒呢?在实时渲染中,如果要绘制...原创 2021-08-21 23:15:36 · 2735 阅读 · 1 评论 -
【openGL2021版】实现FPS的摄像机控制
【openGL2021版】实现FPS的摄像机控制 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要是实现FPS式的摄像机控制(1)实现视角左右旋转 上一篇博客我们已经实现了通过“WASD”对摄像机的前后左右位置进行移动。把摄像机想象成我们的人,那么它除了可以移动之外当然还可以通过转动头部视线来看到不同的东西,我们首先实现实现的左右移动(1)实现视线变换的方法 我们...原创 2021-08-16 13:05:53 · 693 阅读 · 0 评论 -
【openGL2021版】摄像机
【openGL2021版】摄像机 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要是学习摄像机的概念(1)什么是openGL摄像机(1)openGL摄像机概念 其实我们讨论的是以摄像机的视角作为场景原点时场景中所有的顶点坐标,也就是观察矩阵把所有的世界坐标变换为相对于摄像机位置与方向的观察坐标(2)如何创建一个摄像机 ...原创 2021-08-08 16:56:20 · 500 阅读 · 0 评论 -
【openGL2021版】阶段展示
【openGL2021版】阶段展示 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天主要是展示这一个多月来的学习成果(1)镜面光斑 上周我们学习了obj模型,制作了正方体和球体,然后还给我们制作的模型贴上了皮肤 之前为了显示方便,我们关掉了光照系统,现在在立体图形的情况下,我们重新打开看看有什么不同 可以看到我们的光是从上往...原创 2021-07-29 20:05:01 · 283 阅读 · 0 评论 -
【openGL2021版】obj模型
【openGL2021版】obj格式文件 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天学习的是obj模型(一)要做什么 上周我们给制作的图形(三角形,矩形)贴上了皮肤,学习到了法线,光照,纹理坐标等知识。然后又解读了obj格式的文件 因此本周我们只需要解码这个obj文件,然后利用openGL给我们接口,去批量的生成绘制的点,就很方便的画出我们想要的图形了...原创 2021-07-26 16:16:32 · 1210 阅读 · 0 评论 -
【openGL2021版】obj格式文件
【openGL2021版】obj格式文件 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天学习的是obj格式文件(一)什么是obj格式文件 obj文件是3D模型文件格式。由Alias|Wavefront公司为3D建模和动画软件"Advanced Visualizer"开发的一种标准,适合用于3D软件模型之间的互导,也可以通过Maya读写,下图是百科给它的定义: 上周我...原创 2021-07-22 18:25:30 · 1072 阅读 · 0 评论 -
【openGL2021版】纹理贴图
【openGL2021版】纹理贴图 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天学习的是纹理贴图(一)回顾 上周我们学习了openGL的固定管线光照,制作了一个“躺着的”三角形(顶点的Z轴坐标不同),并给三个点设置了不同的法线方向以至呈现不同的颜色 代码: 效果图: 今天就是要为这个三角形贴上纹理图片,给它换一个皮肤...原创 2021-07-19 21:23:49 · 1117 阅读 · 1 评论 -
【openGL2021版】固定管线光照
【openGL2021版】固定管线光照 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天记录的是固定管线的光照(一)设置光照环境(1)构造一个“平躺”的三角形 通过设置三个点的Z轴的大小不一样可以实现这个效果,因为Z轴代表的是像素距离摄像头的一个远近距离,因此当他们Z轴不一致的时候,从上往下看就会出现一个平躺着的三角形,否则从上往下看就是一条线 构造三角形的代码&am...原创 2021-07-12 20:30:04 · 846 阅读 · 1 评论 -
【openGL2021版】矩阵
【openGL2021版】矩阵 大家好,我是Lampard猿奋~ 欢迎来到船新的openGL基础系列的博客,今天记录的是矩阵(一)移动旋转缩放(1)glLoadIdentity单位矩阵 之前我们在每一帧绘画之前,都会执行一个glLoadIdentity()方法,这个方法是对矩阵进行一次重置,清空成单位矩阵。所以每一次绘制的时候,都能得到同样的画面 (百度百科对glLoadIdentity的解释)...原创 2021-07-04 22:16:42 · 336 阅读 · 2 评论 -
【openGL2021版】三角&四边形
【openGL2021版】点&线原创 2021-06-20 15:45:54 · 497 阅读 · 0 评论 -
【openGL2021版】点&线
【openGL2021版】点&线大家好,我是Lampard猿奋 欢迎来到川船新的openGL基础系列的博客,今天讲的是搭建openGL的建立window窗口原创 2021-06-19 18:00:22 · 524 阅读 · 0 评论 -
【openGL2021版】建立window窗口
【openGL2021版】之建立window窗口 大家好,我是Lampard猿奋 欢迎来到川船新的openGL基础系列的博客,今天讲的是搭建openGL的建立window窗口(一)说在前面 有关注我的小伙伴应该知道,历经一年时间我经历人生第一次换工作。旧公司很好无论从技术成长性还是行业的大局观都让我获益匪浅。但项目的失败导致团队的士气低下,这让我想换一个工作环境,离开舒适圈重拾当初入职时的...原创 2021-06-19 16:17:19 · 514 阅读 · 0 评论 -
【openGL基础系列】之条形图
【openGL基础系列】之条形图 大家好,我是Lampard~~欢迎来到openGL基础系列的博客 今天讲的是如何在openGL中实现条形图和折线图 前言:之前我们学习了矩形,线段,点等等的openGL知识,今天我们综合实践一下,如何实现一个条形图 一. 实现条形图 我们现在是实现一个月份相关的条形图: (1)首先我们定义投影模式,背景颜色以及窗口的大小void ...原创 2020-07-22 23:04:42 · 473 阅读 · 0 评论 -
【openGL基础系列】之画一个正方体玩玩吧
【openGL基础系列】之画一个正方体玩玩吧 大家好,我是Lampard~~欢迎来到openGL基础系列的博客 今天讲的是如何在openGL中画一个正方体 前言:大家都知道,一个正方体包括六个面 ,十二条线。所以我们创造一个正方体的时候既可以使用线的组合,也可以用面的组合来表示。为了让我们更加直观的看到这个正方体,我还在博客上参考了别人的算法,让整个正方体转起来。话不多说我们来看看代码和成品图吧: 1. 构建...原创 2020-06-13 17:49:15 · 3994 阅读 · 0 评论 -
【openGL基础系列】之三角形,四边形的着色
【openGL基础系列】之三角形,四边形的着色 大家好,我是Lampard~~欢迎来到openGL基础系列的博客 今天讲的是openGL中对三角形,四边形进行着色 前言:在介绍四边形着色之前首先要提醒一下~openGL中对着色的四边形是默认以逆时针进行画边,然后再把形成的图形进行颜色填充,所以!如果描点的顺序不对的话,会形成不一样的图形。 1. 对三角形进行着色 GL_TRIANGLES 对三角形...原创 2020-06-03 18:10:02 · 1250 阅读 · 0 评论 -
【openGL基础系列】之直线,折线,封闭折线
【openGL基础系列】之直线,折线,封闭折线 大家好,我是Lampard~~欢迎来到openGL基础系列的博客 今天讲的是搭建openGL的显示出三种不同的线 1. 点glVertex* 俗话有云点线面,在讲解线之前首先和大家介绍一下openGL中点的实现函数:glVertex*,函数名我们不作探究,那么这个*是什么鬼呢? 其实*代表的是这个函数后需要接参数:i是整数,s是短整数,f是浮点数等等。举个例子如果我们...原创 2020-06-01 10:18:48 · 1941 阅读 · 0 评论 -
【openGL基础系列】之环境搭建&整一条直线
【Git基础系列】之环境搭建&整一条直线 大家好,我是Lampard~~欢迎来到openGL基础系列的博客 今天讲的是搭建openGL的开发环境和制造显示出一条直线 1.搭建环境 openGL的环境搭建很简单: (1) 首先下载一个VS,2015,2017,2019都可以,哪个顺手用哪个 (2)创建一个win32控制台的空项目 (3)安装Nug...原创 2020-05-30 16:25:22 · 494 阅读 · 0 评论