📄 readme.txt
字号:
PROGRAM_ATTRIBS_ARB 0x88AC
MAX_PROGRAM_ATTRIBS_ARB 0x88AD
PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE
MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF
MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4
MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5
PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6
PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805
PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806
PROGRAM_TEX_INDIRECTIONS_ARB 0x8807
PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808
PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809
PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A
MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B
MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C
MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D
MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E
MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F
MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810
Accepted by the <pname> parameter of GetProgramStringARB:
PROGRAM_STRING_ARB 0x8628
Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
GetFloatv, and GetDoublev:
PROGRAM_ERROR_POSITION_ARB 0x864B
CURRENT_MATRIX_ARB 0x8641
TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7
CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640
MAX_PROGRAM_MATRICES_ARB 0x862F
MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E
MAX_TEXTURE_COORDS_ARB 0x8871
MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872
Accepted by the <name> parameter of GetString:
PROGRAM_ERROR_STRING_ARB 0x8874
Accepted by the <mode> parameter of MatrixMode:
MATRIX0_ARB 0x88C0
MATRIX1_ARB 0x88C1
MATRIX2_ARB 0x88C2
MATRIX3_ARB 0x88C3
MATRIX4_ARB 0x88C4
MATRIX5_ARB 0x88C5
MATRIX6_ARB 0x88C6
MATRIX7_ARB 0x88C7
MATRIX8_ARB 0x88C8
MATRIX9_ARB 0x88C9
MATRIX10_ARB 0x88CA
MATRIX11_ARB 0x88CB
MATRIX12_ARB 0x88CC
MATRIX13_ARB 0x88CD
MATRIX14_ARB 0x88CE
MATRIX15_ARB 0x88CF
MATRIX16_ARB 0x88D0
MATRIX17_ARB 0x88D1
MATRIX18_ARB 0x88D2
MATRIX19_ARB 0x88D3
MATRIX20_ARB 0x88D4
MATRIX21_ARB 0x88D5
MATRIX22_ARB 0x88D6
MATRIX23_ARB 0x88D7
MATRIX24_ARB 0x88D8
MATRIX25_ARB 0x88D9
MATRIX26_ARB 0x88DA
MATRIX27_ARB 0x88DB
MATRIX28_ARB 0x88DC
MATRIX29_ARB 0x88DD
MATRIX30_ARB 0x88DE
MATRIX31_ARB 0x88DF
Additions to Chapter 2 of the OpenGL 1.3 Specification (OpenGL
Operation)
Modify Section 2.1.1, Floating-Point Computation (p. 6)
(modify first paragraph, p. 6) ... The maximum representable
magnitude of a floating-point number used to represent position,
normal, or texture coordinates must be at least 2^32; the maximum
representable magnitude for colors must be at least 2^10. ...
Modify Section 2.7, Vertex Specification (p. 19)
(modify second paragraph, p. 20) Implementations support more than
one set of texture coordinates. The commands
void MultiTexCoord{1234}{sifd}(enum texture, T coords);
void MultiTexCoord{1234}{sifd}v(enum texture, T coords);
take the coordinate set to be modified as the <texture> parameter.
<texture> is a symbolic constant of the form TEXTUREi, indicating
that texture coordinate set i is to be modified. The constants obey
TEXTUREi = TEXTURE0 + i (i is in the range 0 to k-1, where k is the
implementation-dependent number of texture units defined by
MAX_TEXTURE_COORDS_ARB).
Modify Section 2.8, Vertex Arrays (p. 21)
(modify first paragraph, p. 21) ... The client may specify up to 5
plus the value of MAX_TEXTURE_COORDS_ARB arrays: one each to store
vertex coordinates...
(modify first paragraph, p. 23) The command
void ClientActiveTexture(enum texture);
is used to select the vertex array client state parameters to be
modified by the TexCoordPointer command and the array affected by
EnableClientState and DisableClientState with parameter
TEXTURE_COORD_ARRAY. This command sets the client state variable
CLIENT_ACTIVE_TEXTURE. Each texture coordinate set has a client
state vector which is selected when this command is invoked. This
state vector includes the vertex array state. This call also
selects the texture coordinate set state used for queries of client
state.
(modify first paragraph, p. 28) If the number of supported texture
coordinate sets (the value of MAX_TEXTURE_COORDS_ARB) is k, ...
Modify Section 2.10.2, Matrices (p. 31)
(modify first paragraph, p. 31) The projection matrix and model-view
matrix are set and modified with a variety of commands. The
affected matrix is determined by the current matrix mode. The
current matrix mode is set with
void MatrixMode(enum mode);
which takes one of the pre-defined constants TEXTURE, MODELVIEW,
COLOR, PROJECTION, or MATRIX<i>_ARB as the argument. In the case of
MATRIX<i>_ARB, <i> is an integer between 0 and <n>-1 indicating one
of <n> program matrices where <n> is the value of the implementation
defined constant MAX_PROGRAM_MATRICES_ARB. Such program matrices
are described in section 3.11.7. TEXTURE is described later in
section 2.10.2, and COLOR is described in section 3.6.3. If the
current matrix mode is MODELVIEW, then matrix operations apply to
the model-view matrix; if PROJECTION, then they apply to the
projection matrix.
(modify first paragraph, p. 34) For each texture coordinate set, a
4x4 matrix is applied to the corresponding texture coordinates...
(modify first and second paragraphs, p. 35) The command
void ActiveTexture(enum texture);
specifies the active texture unit selector, ACTIVE_TEXTURE. Each
texture unit contains up to two distinct sub-units: a texture
coordinate processing unit (consisting of a texture matrix stack and
texture coordinate generation state) and a texture image unit
(consisting of all the texture state defined in Section 3.8). In
implementations with a different number of supported texture
coordinate sets and texture image units, some texture units may
consist of only one of the two sub-units.
The active texture unit selector specifies the texture coordinate
set accessed by commands involving texture coordinate processing.
Such commands include those accessing the current matrix stack (if
MATRIX_MODE is TEXTURE), TexGen (section 2.10.4), Enable/Disable (if
any texture coordinate generation enum is selected), as well as
queries of the current texture coordinates and current raster
texture coordinates. If the texture coordinate set number
corresponding to the current value of ACTIVE_TEXTURE is greater than
or equal to the implementation-dependent constant
MAX_TEXTURE_COORDS_ARB, the error INVALID_OPERATION is generated by
any such command.
The active texture unit selector also selects the texture image unit
accessed by commands involving texture image processing (section
3.8). Such commands include all variants of TexEnv, TexParameter,
and TexImage commands, BindTexture, Enable/Disable for any texture
target (e.g., TEXTURE_2D), and queries of all such state. If the
texture image unit number corresponding to the current value of
ACTIVE_TEXTURE is greater than or equal to the implementation-
dependent constant MAX_TEXTURE_IMAGE_UNITS_ARB, the error
INVALID_OPERATION is generated by any such command.
ActiveTexture generates the error INVALID_ENUM if an invalid
<texture> is specified. <texture> is a symbolic constant of the
form TEXTUREi, indicating that texture unit i is to be modified.
The constants obey TEXTUREi = TEXTURE0 + i (i is in the range 0 to
k-1, where k is the larger of the MAX_TEXTURE_COORDS_ARB and
MAX_TEXTURE_IMAGE_UNITS_ARB). For compatibility with old OpenGL
specifications, the implementation-dependent constant
MAX_TEXTURE_UNITS specifies the number of conventional texture units
supported by the implementation. Its value must be no larger than
the minimum of MAX_TEXTURE_COORDS_ARB and
MAX_TEXTURE_IMAGE_UNITS_ARB.
(modify last paragraph, p. 35) The state required to implement
transformations consists of a <n>-value integer indicating the
current matrix mode (where <n> is 4 + the number of supported
texture and program matrices), a stack of at least two 4x4 matrices
for each of COLOR, PROJECTION, and TEXTURE with associated stack
pointers, <n> stacks (where <n> is at least 8) of at least one 4x4
matrix for each MATRIX<i>_ARB with associated stack pointers, and a
stack of at least 32 4x4 matrices with an associated stack pointer
for MODELVIEW. Initially, there is only one matrix on each stack,
and all matrices are set to the identity. The initial matrix mode
is MODELVIEW. The initial value of ACTIVE_TEXTURE is TEXTURE0.
Additions to Chapter 3 of the OpenGL 1.3 Specification (Rasterization)
Modify Chapter 3, Introduction (p. 58)
(modify first paragraph, p. 58) ... Figure 3.1 diagrams the
rasterization process. The color value assigned to a fragment is
initially determined by the rasterization operations (sections 3.3
through 3.7) and modified by either the execution of the texturing,
color sum, and fog operations as defined in sections 3.8, 3.9, and
3.10, or of a fragment program defined in section 3.11. The final
depth value is initially determined by the rasterization operations
and may be modified or replaced by a fragment program.
(modify Figure 3.1)
_ +---------------+ FRAGMENT_PROGRAM_ARB
/|| Point | enable
/ | Rasterization |\ |
/ +---------------+ \ V o-------------+
From / +---------------+ \ |
Primitive ---> | Line |---+++--->o o |
Assembly \ | Rasterization | / || | |
\ +---------------+ / || | |
\ +---------------+/ || +-----+-----+ +----+-----+
\|| Polygon | || | Texturing | | Fragment |
- | Rasterization | / | +-----+-----+ | Program |
+---------------+ / | | +----+-----+
+---------------+ / | +-----+-----+ |
| Pixel |/ | | Color Sum | |
DrawPixels --> | Rectangle | / +-----+-----+ |
| Rasterization | / | V
+---------------+ / +-----+-----+
+---------------+ / | Fog |---> Fragments
Bitmap ----> | Bitmap |/ +-----------+
| Rasterization |
+---------------+
Modify Section 3.3, Points (p. 63)
(modify first and second paragraphs, p. 64) All fragments produced
in rasterizing a non-antialiased point are assigned the same
associated data, which are those of the vertex corresponding to the
point. (delete reference to divide by q)
If antialiasing is enabled, then ... The data associated with each
fragment are otherwise the data associated with the point being
rasterized. (delete reference to divide by q)
Modify Section 3.4.1, Basic Line Segment Rasterization (p. 66)
(modify first paragraph, p. 68) ... (Note that t=0 at p_a and t=1 at
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -