龙云尧个人博客,转载请注明出处。 CSDN地址:http://blog.csdn.net/michael753951/article/details/72810534 个人blog地址:http://yaoyl.cn/nehexue-xi-bi-ji-shi/ 概述 本部分博客将以nehe教程第2课,笔记(三)为蓝本,将Windows中完成的基础实验在Ubuntu中进行实现。 在【Ubuntu环境配置】中我们已经对Ubuntu中的OpenGL环境进行了配置,并且完成了最基础的茶壶demo,接下来我们将进行实验相关的后续开发。 需求分析 因为实验中我们需要终端接收到的数据能够在图形界面中实时显示出来,这里我们使用nehe教程的第二课内 …
阅读更多龙云尧个人博客,转载请注明出处。 CSDN地址:http://blog.csdn.net/michael753951/article/details/71750809 个人blog地址:http://yaoyl.cn/nehexue-xi-bi-ji-jiu/ 前言 本次笔记为nehe课程第11课的学习内容,通过实验,我们可以利用正弦函数绘制一个舞动的旗帜。在本次课程中,我们也将学习OpenGL中glPolygonMode函数对一个模型的正面和反面进行不同模式的绘图。 glPolygonMode 函数介绍 本部分内容请先查看前人整理的博客【OpenGL学习笔记(7)多边形绘制】。请先仔细阅读该博客,理解如何区分模型中的正面反面(依然 …
阅读更多龙云尧个人博客,转载请注明出处。 CSDN地址:http://blog.csdn.net/michael753951/article/details/71702311 个人blog地址:http://yaoyl.cn/nehexue-xi-bi-ji-ba/ 前言 本部分单独讲Lesson10的内容,本次讲述重点将不再是作者在代码中各种方法如何如何调用,比如如何实现旋转,如何绘制图像,如何实现透明,如何实现步进等等,这个在我前面7篇笔记中已经有详细的说明了,本篇笔记将不再重复,如果有什么疑问可以翻我之前的笔记或者上网查询。 本次实验参变量不少,作者通过代码带我们真正的实现了一个3D世界,我们可以在这个3D世界里面自由的走动和观察。( …
阅读更多龙云尧个人博客,转载请注明出处。 CSDN地址:http://blog.csdn.net/michael753951/article/details/71511785 个人blog地址:http://yaoyl.cn/nehexue-xi-bi-ji-qi-2017-05-09-20-59/ 我们在前六个部分已经尝试了nehe教程中1-8可得所有内容,接下来第七部分将实现一个简单的实验,这个实验将涵盖前面所有的内容,以作为一个前期总结。 前期准备 在实验之前,我们需要知道一个OpenGL中的基本概念。OpenGL中glEnable方法的使用。关于这个功能函数的使用以及参数设定,你可以点击【gl.glenable()介绍】以 …
阅读更多龙云尧个人博客,转载请注明出处。 CSDN地址:http://blog.csdn.net/michael753951/article/details/71407260 个人blog地址:http://yaoyl.cn/nehexue-xi-bi-ji-liu-2017-05-08-13-54/ 混合 我们在很多场合都过这样的经历,在设置某些色块的颜色的时候,我们不光要设置它的RGB值,还可能需要设置它的Alpha值。一般理解上,我们都认为这个Alpha值代表了当前色块的透明度。这样只是最外在的理解,其实图像的透明是一个颜色的混合过程,当有两种颜色混叠的时候,这个Alpha是用来控制两种颜色的混色程度的一种值。 颜色的混合公式 …
阅读更多龙云尧个人博客,转载请注明出处。 CSDN地址:http://blog.csdn.net/michael753951/article/details/71316132 个人blog地址:http://yaoyl.cn/nehexue-xi-bi-ji-wu/ 这次我们将尝试Lesson6和Lesson7的内容。这个部分我们将学习怎么给一个模型进行纹理映射(其实就是贴图)。 环境搭建 这次实验因为需要使用OpenGL的glaux.h库头使用位图对构建的图形进行纹理映射。所以我们需要进一步进行环境搭建。(注:环境搭建很麻烦,因为微软的VS环境很乱) 如何布置这个库头可以参考【 VS2008无法打开gl/glaux.h头文件的解决方法】我 …
阅读更多龙云尧个人博客,转载请注明出处。 CSDN地址:http://blog.csdn.net/michael753951/article/details/71316089 个人blog地址:http://yaoyl.cn/nehexue-xi-bi-ji-si/ 图像旋转 接下来我们将学习图像旋转。图像的旋转通过调用glRotatef(Angle,Xvector,Yvector,Zvector)实现。Angle表示旋转角度(注意是角度不是弧度),Xvector表示沿X轴旋转,Yvector表示沿着Y轴旋转,Zvector表示沿着Z轴旋转。注意旋转角度和RGB设置不一样,RGB的范围是0.0f-1.0f,而角度旋转的范围 …
阅读更多第二课和第三课内容为三角形和矩形的颜色渲染内容,通过实例告诉我们如何给实现的样例进行上色。 我们已经知道任何在OpenGL中,任何形状都将最终被分解成矩形和三角形两种形状,所以在这两课中我们将对三角形和矩形的构建和渲染进行学习。 三角形和矩形构造 构建三角形或者矩形的方法在DrawGLScene方法中实现。 绘制图像之前我们需要先将屏幕缓存清理掉,即调用glClear和glLoadIdentity。这个时候屏幕上的定位点将被重置于窗口的正中间。 整个屏幕按照空间直角坐标系的形式进行坐标划分,分为X轴,Y轴和Z轴,其中X轴正方向为右方,Y轴正方向为上方,Z轴正方向为屏幕外侧,原点为你的窗口中央。 开始绘制图形的之前,我们首先需要使 …
阅读更多龙云尧个人博客,转载请注明出处。 CSDN地址:http://blog.csdn.net/michael753951/article/details/70254340 个人blog地址:http://123.207.243.115:81/rfidshi-yan-yi-zong-jie-2/ 因为实验需要,我要使用OpenGL搭建一个仿真驾驶环境。因为之前没有接触过OpenGL的相关知识,淦哥推荐通过NEHE来进行学习,之后会零零散散做一些笔记用来进行记录。学习的博客参见【地址】。 创建新的C++ 因为实验需要,我需要使用C++进行整个项目的编写。实验之前,我们需要先知道怎么用VS搭建一个窗口程序,这里我参考了【这篇博客】。 需要注意 …
阅读更多