官术网_书友最值得收藏!

  • OpenGL Development Cookbook
  • Muhammad Mobeen Movania
  • 239字
  • 2021-08-13 17:03:31

Introduction

The OpenGL API has seen various changes since its creation in 1992. With every new version, new features were added and additional functionality was exposed on supporting hardware through extensions. Until OpenGL v2.0 (which was introduced in 2004), the functionality in the graphics pipeline was fixed, that is, there were fixed set of operations hardwired in the graphics hardware and it was impossible to modify the graphics pipeline. With OpenGL v2.0, the shader objects were introduced for the first time. That enabled programmers to modify the graphics pipeline through special programs called shaders, which were written in a special language called OpenGL shading language (GLSL).

After OpenGL v2.0, the next major version was v3.0. This version introduced two profiles for working with OpenGL; the core profile and the compatibility profile. The core profile basically contains all of the non-deprecated functionality whereas the compatibility profile retains deprecated functionality for backwards compatibility. As of 2012, the latest version of OpenGL available is OpenGL v4.3. Beyond OpenGL v3.0, the changes introduced in the application code are not as drastic as compared to those required for moving from OpenGL v2.0 to OpenGL v3.0 and above.

In this chapter, we will introduce the three shader stages accessible in the OpenGL v3.3 core profile, that is, vertex, geometry, and fragment shaders. Note that OpenGL v4.0 introduced two additional shader stages that is tessellation control and tessellation evaluation shaders between the vertex and geometry shader.

主站蜘蛛池模板: 石首市| 黑水县| 峡江县| 清水河县| 土默特右旗| 伊春市| 博乐市| 井研县| 双辽市| 宁强县| 宁陵县| 沁源县| 竹溪县| 措勤县| 扬州市| 镇康县| 扎鲁特旗| 桐柏县| 中阳县| 凤山县| 焉耆| 旬阳县| 大洼县| 广昌县| 盘锦市| 沭阳县| 泉州市| 霍州市| 浮山县| 青龙| 霞浦县| 黑水县| 杭锦旗| 祁门县| 普陀区| 福海县| 封开县| 新巴尔虎左旗| 平顺县| 威远县| 闻喜县|