learnOpenGl

1,入门

1.1.hello_window :创建一个800x600 的window;

1.2.hello_window_clear:利用glClearColor()/glclear() 设置窗口颜色;

2.1.hello_triangle:画一个三角形;
2.2.1hello_triangle_indexed  :用EBO 画一个三角形;

2.3.hello_triangle_exercise1:画两个三角形表示一个矩形

2.4.hello_triangle_exercise2分别用两个VAO/VBO画两个三角形表示一个矩形
2.5.hello_triangle_exercise3分别用两个VAO/VBO两个片段着色器 画两个三角型;一个三角形为橙色,一个三角形为黄色;

 3.1.shaders_uniform用Uniform 指定片段着色器输出颜色;

  3.2.shaders_interpolation用layout 方式将定点颜色数据传至着色器, 画个一个五彩颜色的三角形.  

3.3.shaders_class为了方便调用,新建sharder 类;
3.4.shaders_exercise1将三角型顶点朝下;
3.5.shaders_exercise2给三角形位置加个偏移;
3.6.shaders_exercise3将顶点着色器的位置当成片段着色器颜色输出;

4.1.textures加载一张纹理图片;

4.2.textures_combined将纹理贴在箱子上;
4.3.textures_exercise1将箱子上的纹理左右反向;

4.4.textures_exercise2设置纹理坐标为0-2, 设置纹理绘制为repeat, 生成4个笑脸;

4.5.textures_exercise3设置纹理坐标位于顶点坐标中间位置;
4.6.textures_exercise4设置纹理合成透明值;

5.1.transformations纹理旋转

5.2.transformations_exercise1旋转+平移

 5.2.transformations_exercise2旋转+平移+缩放

6.1.coordinate_systemsmodel + view + projection 坐标系统

6.2.coordinate_systems_depth立方体贴图,将一个箱子六个面都贴上纹理;

6.3.coordinate_systems_multiple画十个立方体贴图;

6.4.coordinate_systems_exercise3画十个立方体贴图,第三的倍数个时进行旋转;

7.2.camera_keyboard_dt画出立方体贴图,通过按键可浏览不同贴图的位置;

7.3.camera_mouse_zoom画出立方体贴图,通过鼠标可浏览不同角度位置并可缩放;

7.4.camera_class定义camera 类,可从不同角度浏览立方体位置;

7.5.camera_exercise1通过按键可改变浏览位置;
7.6.camera_exercise2自定义lootAt 矩阵

2,光照:

1.colors
2.1.basic_lighting_diffuse基础光照+漫反射

2.1.basic_lighting_diffuse
2.2.basic_lighting_specular基础光照+漫反射+镜面光照

2.3.basic_lighting_exercise1改变光源的位置
 2.4.basic_lighting_exercise2
2.5.basic_lighting_exercise3

3.1.materials :不同材料对光的反射不同。
3.2.materials_exercise1
4.1.lighting_maps_diffuse_map
4.2.lighting_maps_specular_map
4.3.lighting_maps_exercise2
4.4.lighting_maps_exercise4
5.1.light_casters_directional
5.2.light_casters_point
5.3.light_casters_spot
5.4.light_casters_spot_soft
6.multiple_lights

6.multiple_lights_exercise1

3,模型:

1.model_loading

4,高级操作:


 1.1.depth_testing :深度测试
1.2.depth_testing_view : 指定当目标像素小于当前像素, 绘制目标像素;
2.stencil_testing : 模板测试
3.1.blending_discard : 将多个纹理进行blending
3.2.blending_sort : 根据透明值进行blending
4.face_culling_exercise1
5.1.framebuffers : 将纹理绑定至framebuffer
5.2.framebuffers_exercise1 :  将纹理绑定至framebuffer
6.1.cubemaps_skybox : 天空盒
6.2.cubemaps_environment_mapping : 立方体贴图
8.advanced_glsl_ubo :uniform buffer object 多个着色器之间共享变量
9.1.geometry_shader_houses : 通过画三角形画出一个房子
9.2.geometry_shader_exploding
9.3.geometry_shader_normals
10.1.instancing_quads :画多个重复的实例,glDrawArrayInstanced();
10.2.asteroids : 绘制小行星
10.3.asteroids_instanced
11.1.anti_aliasing_msaa:抗锯齿
11.2.anti_aliasing_offscreen

5 高级光照:


1.advanced_lighting
2.gamma_correction
3.1.1.shadow_mapping_depth
3.1.2.shadow_mapping_base
3.1.3.shadow_mapping
3.2.1.point_shadows
3.2.2.point_shadows_soft
3.3.csm
4.normal_mapping
5.1.parallax_mapping
5.2.steep_parallax_mapping
5.3.parallax_occlusion_mapping
6.hdr
7.bloom
8.1.deferred_shading
8.2.deferred_shading_volumes
9.ssao


6,pbr:


 1.1.lighting
  1.2.lighting_textured
 2.1.1.ibl_irradiance_conversion
2.1.2.ibl_irradiance
2.2.1.ibl_specular
2.2.2.ibl_specular_textured

 7, in practice:


1.debugging
 2.text_rendering
3.2d_game

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值