OpenGL_4.0_Shading_Language_Cookbook 读书笔记(2)

OpenGL 4.0 Shading Language Cookbook 读书笔记(二)

                                                        ----- 随书代码第二章运行工程

                   这本书只有英文版,所以只有硬着头皮看,但是看的很慢,终于看到第二章了,里面第二章的代码也照抄了一遍。发现里面的代码质量很高,因为用到了很多作者写的工具类,非常丰富,而且基本都是封装成了类,使用起来很方便。下面是书中常用的类和函数

  1. GLUtils             负责打印openGL版本信息
  2. gl_core_4_4    各种openGL API 回调函数,比如:_ptrc_glBlendFunc  _ptrc_glClearDepth _ptrc_glDepthFunc等等
  3. VBOTorus        绘制花环
  4. VBOTeapot      绘制茶壶
  5. VBOMesh       绘制网格
  6. VBOPlane      绘制地板
  7. GLSLProgram 复制shader着色器的加载、编译、链接

           本章主要内容

    1.  shader实现单个光源的光照模型

              (1)ADS(ambient, diffuse, specular)环境光,漫反射,镜面高光  

              (2)在shader中实现自定义函数调用

              (3)实现双面(前面front、背面back)着色

             (4)实现平面着色(flat shading)

             (5)使用Subroutines选择着色器功能

             (6)Discarding fragments to create a perforated look 丢弃碎片,已实现穿孔效果

2.   效果如下:

        (1)环境光

                     

       (2)ADS (环境光,漫反射,镜面高光 )也称作Phong shading model,三种光混合效果

                      

             (3)实现双面着色

                     

 

              (4)实现平面着色

                         

             (5)使用Subroutines选择着色器功能

         

             (6)Discarding fragments to create a perforated look 丢弃碎片,已实现穿孔效果

                  

  代码

      最关键的代码部分

这个工程使用上面的所有工程      

注意红色线框部分,

 

要实现这6中功能,需要在“调试“   命令参数中加入:ads diffuse discard flat subroutine twoside

并且上图中的一行代码   string recipe = argv[1];         //把 1  改成  1~6  就分别实现了下面的6种效果

代码下载地址:https://download.csdn.net/download/aoxuestudy/13131542

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值