RGBA是代表Red(红色) Green(绿色) Blue(蓝色)和 Alpha(透明度)
透明度0-1,0是透明,可以理解为隐藏,越接近1,越不透明。
完成作业0,首先下载vs2017,安装完毕后,打开公开课上给的vs2012的框架,再打开.sln文件(*.sln(Visual Studio.Solution)通过为环境提供对项目、项目项和解决方案项在磁盘上位置的引用,可将他们组织到解决方案中。比如是生成Debug模式,还是Release模式等----->白话说就是打开文件的索引,正确引导你进入环境,进入工程!)
点击.sln文件之后进入的工程
因为本机下载的vs是2017版本的,公开课上给的框架是2012版本的,所以点击调试后会出现错误,在网上找到方法是:选中工程,然后点击菜单栏中的项目,再点击重定解决方案目标,出现提示升级对话框,之后点击确定即可。正确解决如下图所示:
按照公开课上的文字说明,按F5开始运行程序,出现如图所示:
左边黑框内是一些按键的提示,右边有一个贴有纹理的地面,上面有4个支柱和带有移动光照的茶壶。至于为什么是这些按键,在mytest3.cpp中的keyboard函数中可以了解到,不同的字母会跳转到不同的方法。
按P键可以开始或停止茶壶的动画。,如图所示
i键键可以将茶壶移动到正确的位置,接下来,按o键将截图输出到程序的目录中。将它重命名为“screenshot1.png”来防止它被后续的截图覆盖。
下面将茶壶上的红色光照改成黄色(黄色是通过红色和绿色混合而成,也就是颜色向量中的前两个元素:第三个元素代表蓝色)。对应的RGBA值为(1,1,0,1),相关的颜色和代码在mytest3.cpp中的display函数中,在注释“add lighting effects”的地方。注意,红色光照原来是有点橙色的,它的RGBA值是(1,0.5,0,1)。将光照的颜色从红色改成黄色后,重新编译,运行,然后像之前一样先按i键再按o键来输出截图。把这张截图重命名为“screenshot2.png”。
即完成红色光变为蓝色光,接下来提交两幅图片。
同样道理,改变light_specular1[]的RGBA的值,将改变第一个火焰的颜色,例如const GLfloat light_specular1[] = {1, 1,1, 1};红绿蓝都设为1,颜色会变成白色。
未解决问题:调试的过程中出现一个错误