OpenGL ES 3.1 Android扩展包介绍
OpenGL ES 3.1 Android擴展包介紹
- 5 OpenGL ES 3.1 Android擴展包介紹
- 5.1 概述
- 5.2 幾何著色器
- 5.3 鑲嵌著色器
- 5.4 高級混合模式
- 5.5 ASTC LDR
5 OpenGL ES 3.1 Android擴展包介紹
5.1 概述
AEP是Adreno SDK的一部分,其中包含一組OpenGL ES 3.1擴展,請閱讀本章以快速介紹這些擴展背后的概念以及它們可能為應用帶來的好處。更詳細的信息。
5.2 幾何著色器
幾何著色器是一種新的著色器類型,可以選擇在Fragment Shader階段的緊前面插入渲染管道。
輸入到幾何著色器的幾何可以如下:
- 點
- 線
- 帶有鄰接數據的行
- 三角形
- 帶有鄰接數據的三角形
這些輸入用于生成可以是以下內容的輸出: - 點
- 線帶
- 三角帶
原始幾何體將被丟棄。
幾何著色器可用于分層渲染,其中圖元可柵格化為單個紋理對象中保存的多個單獨圖像。 可以以這種方式使用的渲染目標的示例包括:
- 3D紋理切片
- 2D陣列紋理的圖層
- 立方體貼圖紋理面
幾何著色器可用于調試,例如用于正常數據的可視化。 它們還可以用于廣告牌和散景效果渲染。
有關幾何著色器的更多信息,請參見:
- GL_EXT_geometry_shader擴展規范位于http://www.khronos.org/registry/gles/extensions/EXT/EXT_geometry_shader.txt
- 有關幾何著色器的Khronos Wiki條目,網址為http://www.opengl.org/wiki/Geometry_Shader
5.3 鑲嵌著色器
曲面細分著色器一詞涵蓋了兩個新的著色器階段:曲面細分控制和曲面細分評估。 它們可以選擇在頂點著色器階段之后(和幾何著色器之前)立即插入渲染管線中。
細分可以用于減少需要饋入圖形管線的幾何圖形的數量。 細分過程的輸入是一組稱為面點頂點的頂點。 這些以應用程序定義的方式表示幾何形狀。 曲面細分控制著色器階段負責確定由下一級固定功能曲面細分器執行的曲面細分的粒度。 鑲嵌生成的頂點將構成過程的輸出幾何形狀。 然后,細分評估著色器階段將位置和屬性值分配給這些頂點。 輸入的面片頂點將被丟棄。
細分可用于處理已通過頂點著色器饋入的幾何。
注意: 細分過程中生成的幾何可以進一步由幾何著色器細分。鑲嵌著色器的常見應用包括:
- LoD驅動的地形渲染–特定補丁的細分粒度取決于其與相機的距離
- LoD驅動的網格平滑–應用于補丁的平滑量取決于其緊密程度
- 位移貼圖–動態調整曲面細分過程生成的頂點的位移復雜度
在此處查找有關鑲嵌細分著色器的更多信息,請參見:
- GL_EXT_tessellation_shader擴展規范,網址為http://www.khronos.org/registry/gles/extensions/EXT/EXT_tessellation_shader.txt
- 棋盤格著色器的Khronos Wiki條目,網址為http://www.opengl.org/wiki/Tessellation
5.4 高級混合模式
可以使用許多新的混合模式:
- 色彩燃燒
- 閃避
- 變暗
- 差異
- 排除
- 硬燈
- HSL顏色
- HSL色相
- HSL發光度
- HSL飽和
- 減輕
- 相乘
- 疊加
- 屏幕
- 柔光
與核心OpenGL ES中的混合模式相比,這些新模式提供了許多高級混合方程式,這些方程式可用于執行更復雜的顏色混合操作。
有關更多信息,請參見http://www.khronos.org/registry/gles/extensions/KHR/blend_equation_advanced.txt上的擴展規范。
注意: 有一些重要的限制會影響何時以及如何使用這些新的混合模式。 有關詳細信息,請閱讀擴展規范。5.5 ASTC LDR
ASTC LDR是一種新的紋理壓縮格式。 給定獲得的壓縮比,圖像降級的程度通常非常低。 用戶能夠通過選擇許多不同的塊大小之一來控制質量/大小的權衡。
注意: 該格式支持NPOT紋理。 每個紋理像素最多可容納四個8位分量的數據,并支持線性RGB和sRGB色彩空間。如果使用浮點數據,則不適合使用ASTC LDR,請考慮使用ASTC HDR。
有關更多信息,請參見擴展規范,網址為http://www.khronos.org/registry/gles/extensions/KHR/texture_compression_astc_hdr.txt。
總結
以上是生活随笔為你收集整理的OpenGL ES 3.1 Android扩展包介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux键盘映射默认,Linux 中的
- 下一篇: oracle 触发器代码,Oracle触