分享
 
 
 

OpenGL 2.0 筹划中!(增补2)

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

OpenGL 2.0 版正在筹划中,详情见www.opengl.org

支持OpenGL的同志们敬请期待,OpenGL将再次将D3D甩在后面,提供最先进的功能和最有好的编程接口。

OpenGL 2.0由3Dlabs提议

当前主要问题:

系统和图像构筑自1992年来有了重大改变,但OpenGL没有跟上。

越来越感觉到OpenGL(核心)落后于今天先进硬件的功能和性能。

实现和应用的复杂性,导致了今天太多extension。

开发市场产品的需求。

目标:

提升到一个新的高度,以反映今天和不久的将来的显示硬件。(将由核心象D3D一样提供全部硬件功能)

展示下一代可编程图像硬件的图景。(将使用高级语言而不是汇编对显卡编程)

减小对extension的依赖,以可编程性取代复杂性。(由定义良好的核心功能取代大部分扩展功能)

对已有程序保持相当理想的兼容性。(老程序不经修改正常运行,并保持高效)

对不需要兼容性的场合,提供简洁干净的核心。(过时的函数剔除)

处理对动态媒体的需要。(提高动态材质等动态媒体的功能和效率)

新特性:

+标准化已有功能

-PBuffer功能提到核心功能

-包含大部分图象子系统

-集成并标准化WGL,GLX的功能

-大量Extension变为标准功能

+展现全部硬件能力

-使与图像系统的数据交换性能达到极限

-提高并行计算能力

+可编程性

-高级语言对显卡硬件及其他可编程部分编程

-丰富的功能集

-硬件无关

-标准化

-特别为OpenGL设计

+可编程顶点操作

-替代坐标变换,材质应用,光照

-允许任意单顶点操作

+可编程象素操作

-替代材质访问,材质应用,雾

-允许任意单象素操作

+可编程图象格式

-替代图象数据固定的紧缩和反紧缩操作

-允许任意图象类型和格式

+直接支持多通(MultiPass)算法

+更具伸缩性的帧缓冲配置

+离屏(OffScreen)渲染

+由应用程序控制材质存储

+所有OpenGL对象使用一致的框架

+更简洁高效的同步机制

+应用程序控制缓冲区翻转

+使用任意颜色缓冲当作材质

纯GL2.0内核:

平滑过渡:

=》OpenGL1.3 (2.0包含1.3全部功能,不需修改)

=》OpenGL2.0 (应用程序可逐步使用2.0功能)

=》Pure OpenGL 2.0 (慢慢逐渐转移到Pure OpenGL)

=》今后的流线型API

重要新概念:

- Vertex Processor (顶点操作)

- Fragment Processor (象素操作)

- Pixel Pack Processor (象素紧缩操作)

- Pixel Unpack Processor (象素反紧缩操作)

影像化(Shading)语言:

+与1.3紧密集成

-现有状态机被可编程单元大大增大

+允许逐渐替代1.3固定流程的功能

-自动追踪已有状态

+基于C语言,提供全面的矢量和矩阵类型

-集成了一些RenderMan(一个有名的高质量渲染器)的特性

+虚化流程资源

-大部分情况下程序员不需操心资源管理

+顶点影像化和象素影像化使用相同的语言

-内置的函数和数据标识

顶点,象素操作(VertexProcessor,FragmentProcessor)能力:

大体类似DX8,DX9的VertexShader,PixelShader,可参见MSDN,在此不赘述。

紧缩,反紧缩操作(Pack/Unpack Processor)能力:

+随意的内存图数据格式

+通过可编程性获得自由性

+消除对下列Extension的需要

- EXT_cmyka

- SGIX_ycrcb

- EXT_422_pixels

- OML_subsample

- OML_resample

- NV_packed_depth_stencil

- 以及以上Extension的变体

辅助数据缓冲区(AuxDataBuffer 新增,非原来的AuxBuffer):

+简单泛化的概念,增强可编程性

+储存浮点数据

+具有帧缓冲的特性

+应用举例

-多次积累输出(运动模糊等)

-中间结果

-多光谱处理

-Sweeney style color/normal buffer (Sorry,此句我不懂)

-可渲染浮点图象再读回主机以实现后端渲染加速(用于网络渲染?)

影化器(Shader)管理:

+运行于OpenGL处理机的程序叫做“影化器”(Shader)

+影化器定义为一个字符串数组

+影化器用如下方法编译

- shaderID = CreateShaderObject(policy, priority, target, numStrings, strings);

- success = CompileShader(shaderID)

- (仍在寻找将上面两条合一的方案)

+编译错误如下方法取得

- errlog = CompilerErrorLog()

+指定当前影化器

- BindObject(shaderID)

+删除

-DeleteObject(shaderID)

+检察顶点影化器和象素影化器的兼容性

-ValidShader = CheckShaderBinding()

影化语言结构:

+修饰符

-const

- attribute (给顶点影化器的顶点数据)

-uniform (API提供的常量)

-varying (插值量,顶点影化输出,象素影化输入)

-uniform 和 varying 数组

+类型

-float

- vec2,vec3,vec4(浮点矢量)

-mat2, mat3, mat4(浮点矩阵)

-int(16位整型,用于循环和数组下标)

+表达式

-常量

-变量

-数量、矢量、矩阵操作

-+,-,*,/

-内置函数

-用户函数

-对矢量和矩阵的元素访问

-对矩阵的行或列访问

+流控制

-if, if else

- for

- while

- do...while

- break, continue

+用户函数

-使用引用参数

-可修改参数用output关键字修饰

-支持函数重载

-可能需要定义返回值以消除歧义

-其他类似C语言

+内定函数可用于数量或矢量

-sin, cos, tan, asin, 等

- pow, log2, exp2, sqrt, inversesqrt

- abs, sign, floor, ceil, fract, mod, min, max, clamp

- mix, step, smoothstep

- length, distance, normalize, dot, cross

- element (仅用于顶点影化)

- texture, lod, dPdx, dPdy, fwidth, kill, noise (仅用于象素段影化)

——待续

——向为OpenGL辛勤工作的大师们致敬

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有