OpenGL 2.0 plans! (Supplement 2)

zhaozj2021-02-11  213

OpenGL 2.0 is planning, see www.opengl.org support OpenGL's comrades, OpenGL will rearward again, provide the most advanced features and the most good programming interface.

OpenGL 2.0 is proposed by 3DLABS

Current major problems: system and image have been significantly changing since 1992, but OpenGL did not keep up. More and more feel that OpenGL (core) is behind the function and performance of advanced hardware today. The complexity of implementation and application has led to too many Extensions today. Develop market products demand.

Target: Enhance to a new height to reflect today and the future display hardware. (Put all the hardware functions as the core icon D3D) shows the picture of the next generation programmable image hardware. (Senior language) is used instead of compilation to graphics, it is reduced to Extension dependence to programmability replace complexity. (Replace Most Extended Functions Defined in a Good Core Function) Keep quite ideal compatibility for existing programs. (The old procedure is not modified, and maintains high efficiency) Provide a simple and clean core to do not need compatibility. (Outdated Function Remove) Treatment of Dynamic Media. (Improve dynamic media such as dynamic media)

New feature:

Standardized Existing Features - PPBuffer Features Remove the core function - Most image subsystems - integrated and standardized WGL, GLX function - a large number of EXTENSION changes to standard function exhibit all hardware capabilities - Make Data exchange performance with image systems Up to the limit - improve parallel computing power programmability - advanced language to graphics hardware and other programmable partial programming - rich function set - hardware unrelated - standardization - especially OpenGL design programmable vertex operation - alternative coordinate transformation, material application , Light - Allow any single top operation programmable pixel operation - replacement material access, material application, fog - Allow any single pixel operation programmable image format - alternative image data fixed tightening and anti-shrinkage operation - Allow Arbitrary Image Type and Format Direct Support MultiPass Algorithm More Scalas Buffer Configuration Offscreen Rendering Rendering All OpenGL objects use consistent framework more concise and efficient Synchronous mechanism application control buffer flip use any color buffer as a material

Pure GL2.0 kernel:

Smooth transition:

= "OpenGL1.3 (2.0 includes 1.3 full function, no need to modify) =" OpenGL2.0 (application can be used to use 2.0 function) = "Pure OpenGL 2.0 (slowly transfer to Pure OpenGL) =" Future streamline API

Important new concept:

- Vertex Processor - Fragment Processor - Pixel Pack Processor - Pixel Unpack Processor Image (SHADING):

And 1.3 Tight Complex - Existing State Machine is greatly increased by the programmable unit allows gradual replacement 1.3 fixed flow function - automatic tracking existing status Based on C language, providing comprehensive vector and matrix type - integrated some renderman Features of a famous high-quality renderer ahead of the blurring process - Most cases, programmers do not need to worry about resource management vertex imaging and pixel imaging use the same language - built-in functions and data identity

VertexProcessor, FragmentProcessor capability:

VertexShader, which is generally similar to DX8, DX9, please refer to MSDN, here you don't have explained.

Tighten, anti-shrinkage operation (Pack / Unpack Processor) capability:

Free Memory Data Format Get free sex eliminates the need for the following Extension - EXT_CMYKA - SGIX_YCRCB - EXT_422_PIXELS - OML_SUBSAMPLE - OML_RESAMPLE - NV_PACKED_DEPTH_STENCIL - and the above EXTENSION variant

Auxiliary data buffer (AuxDataBuffer added, non-original auxbuffer):

Simple generalization concept, enhanced programmable storage floating point data frame buffer features application example - multiple accumulation output (motion blur, etc.) - Intermediate Results - Multi-Spectroscopy - Sweney Style Color / Normal Buffer Sorry, I don't understand this sentence) - Rendering floating point image and read back to the host to implement backend rendering acceleration (for network rendering?)

Shader management:

The program running in the OpenGL process is called "Shader" shader to define a string array shadower to compile as follows - Shaderid = CreateshaderObject (Policy, Priority, Target, Numstrings, Strings); - Success = compileshader (SHADERID) - (still looking for a solution to two one-two-top) Compile error is obtained as follows - Errlog = compileRerrorLog () Specifies the current Silver - BindObject (ShaderID) Delete -DeleteObject (ShaderID) ) Prosecutor's compatibility with vertengochilo and pixel miners - Validshader = CheckshaderBinding () Jinghua language structure:

Modifier-Const - Attribute (vertex data for vertex gels) - UNIFORM (constant provided by API) -Varying (interpolation, vertex, pixel input) - UIFORM and VARYING array type - FLOAT - VEC2, VEC3, VEC4 (floating point vector) -MAT2, MAT3, MAT4 (floating point matrix) -int (16-bit integer, used for cyclic and array subscripts) Expression-constant-variables - quantity, vector , Matrix Operation - , *, / - Built-in Functions - User Functions - Elements Access to Vector and Matrices - Rows or Columns Access Flow Control - IF, IF ELSE - For - While - DO ... While - Break, Continue User Functions - Use reference parameters - can modify parameters Use Output keyword modification - support function overload - may need to define return values ​​to eliminate ambiguity - other similar C language internal function can be used for quantity or vector -sin, Cos, Tan, Asin, etc. - Pow, Log2, EXP2, SQRT, InverseSqrt - Abs, Sign, Floor, CEIL, Fract, MOD, MIN, MAX, CLAMP - MIX, STEP, SMOothtep - Length, Distance, Normalize, DOT, Cross - Element (for vertex) - Texture, LOD, DPDX, DPDY, FWIDTH, KILL, NOISE (only for pixel segmentation)

--to be continued

- Pay tribute to the masters who have worked hard for OpenGL

转载请注明原文地址:https://www.9cbs.com/read-5115.html

New Post(0)