Color definition.
Members
-
inner _lastTexture
-
TMU memory end address per TMU
-
inner _nextTexture
-
TMU memory start address/next address per TMU
-
inner FX_HEIGHT
-
Properties:
Name Type Description voodoo
number graphics height -
inner FX_WIDTH
-
Properties:
Name Type Description voodoo
number graphics width -
inner GR_ASPECT
-
typedef FxI32 GrAspectRatio_t;
Properties:
Name Type Description LOG2_8x1
number LOG2_4x1
number LOG2_2x1
number LOG2_1x1
number LOG2_1x2
number LOG2_1x4
number LOG2_1x8
number -
inner GR_BLEND
-
typedef FxI32 GrAlphaBlendFnc_t;
Properties:
Name Type Description ZERO
number SRC_ALPHA
number SRC_COLOR
number DST_COLOR
number DST_ALPHA
number ONE
number ONE_MINUS_SRC_ALPHA
number ONE_MINUS_SRC_COLOR
number ONE_MINUS_DST_COLOR
number ONE_MINUS_DST_ALPHA
number RESERVED_8
number RESERVED_9
number RESERVED_A
number RESERVED_B
number RESERVED_C
number RESERVED_D
number RESERVED_E
number ALPHA_SATURATE
number PREFOG_COLOR
number -
inner GR_BUFFER
-
typedef FxI32 GrBuffer_t;
Properties:
Name Type Description FRONTBUFFER
number BACKBUFFER
number AUXBUFFER
number DEPTHBUFFER
number ALPHABUFFER
number TRIPLEBUFFER
number -
inner GR_CMP
-
typedef FxI32 GrCmpFnc_t;
Properties:
Name Type Description NEVER
number LESS
number EQUAL
number LEQUAL
number GREATER
number NOTEQUAL
number GEQUAL
number ALWAYS
number -
inner GR_COLORCOMBINE
-
typedef FxI32 GrColorCombineFnc_t;
Properties:
Name Type Description ZERO
number CCRGB
number ITRGB
number ITRGB_DELTA0
number DECAL_TEXTURE
number TEXTURE_TIMES_CCRGB
number TEXTURE_TIMES_ITRGB
number TEXTURE_TIMES_ITRGB_DELTA0
number TEXTURE_TIMES_ITRGB_ADD_ALPHA
number TEXTURE_TIMES_ALPHA
number TEXTURE_TIMES_ALPHA_ADD_ITRGB
number TEXTURE_ADD_ITRGB
number TEXTURE_SUB_ITRGB
number CCRGB_BLEND_ITRGB_ON_TEXALPHA
number DIFF_SPEC_A
number DIFF_SPEC_B
number ONE
number -
inner GR_COMBINE_FACTOR
-
typedef FxI32 GrCombineFactor_t;
Properties:
Name Type Description ZERO
number NONE
number LOCAL
number OTHER_ALPHA
number LOCAL_ALPHA
number TEXTURE_ALPHA
number TEXTURE_RGB
number DETAIL_FACTOR
number LOD_FRACTION
number ONE
number ONE_MINUS_LOCAL
number ONE_MINUS_OTHER_ALPHA
number ONE_MINUS_LOCAL_ALPHA
number ONE_MINUS_TEXTURE_ALPHA
number ONE_MINUS_DETAIL_FACTOR
number ONE_MINUS_LOD_FRACTION
number -
inner GR_COMBINE_FUNCTION
-
typedef FxI32 GrCombineFunction_t;
Properties:
Name Type Description ZERO
number NONE
number LOCAL
number LOCAL_ALPHA
number SCALE_OTHER
number BLEND_OTHER
number SCALE_OTHER_ADD_LOCAL
number SCALE_OTHER_ADD_LOCAL_ALPHA
number SCALE_OTHER_MINUS_LOCAL
number SCALE_OTHER_MINUS_LOCAL_ADD_LOCAL
number BLEND
number SCALE_OTHER_MINUS_LOCAL_ADD_LOCAL_ALPHA
number SCALE_MINUS_LOCAL_ADD_LOCAL
number BLEND_LOCAL
number SCALE_MINUS_LOCAL_ADD_LOCAL_ALPHA
number -
inner GR_COMBINE_LOCAL
-
typedef FxI32 GrCombineLocal_t;
Properties:
Name Type Description ITERATED
number CONSTANT
number NONE
number DEPTH
number -
inner GR_COMBINE_OTHER
-
typedef FxI32 GrCombineOther_t;
Properties:
Name Type Description ITERATED
number TEXTURE
number CONSTANT
number NONE
number -
inner GR_CULL
-
typedef FxI32 GrCullMode_t;
Properties:
Name Type Description DISABLE
number NEGATIVE
number POSITIVE
number -
inner GR_DEPTHBUFFER
-
typedef FxI32 GrDepthBufferMode_t;
Properties:
Name Type Description DISABLE
number ZBUFFER
number WBUFFER
number ZBUFFER_COMPARE_TO_BIAS
number WBUFFER_COMPARE_TO_BIAS
number -
inner GR_DITHER
-
typedef FxI32 GrDitherMode_t;
Properties:
Name Type Description DISABLE
number D2x2
number D4x4
number -
inner GR_ENABLE
-
typedef FxU32 GrEnableMode_t;
Properties:
Name Type Description AA_ORDERED
number ALLOW_MIPMAP_DITHER
number PASSTHRU
number SHAMELESS_PLUG
number VIDEO_SMOOTHING
number -
inner GR_FOG
-
typedef FxI32 GrFogMode_t;
Properties:
Name Type Description DISABLE
number WITH_TABLE_ON_FOGCOORD_EXT
number WITH_TABLE_ON_Q
number WITH_TABLE_ON_W
number WITH_ITERATED_Z
number MULT2
number ADD2
number -
inner GR_LOD
-
typedef FxI32 GrLOD_t;
Properties:
Name Type Description LOG2_256
number LOG2_128
number LOG2_64
number LOG2_32
number LOG2_16
number LOG2_8
number LOG2_4
number LOG2_2
number LOG2_1
number -
inner GR_MIPMAP
-
typedef FxI32 GrMipMapMode_t;
Properties:
Name Type Description DISABLE
number NEAREST
number NEAREST_DITHER
number -
inner GR_MIPMAPLEVELMASK
-
GR_MIPMAPLEVELMASK
Properties:
Name Type Description EVEN
number ODD
number BOTH
number -
inner GR_ORIGIN
-
typedef FxI32 GrOriginLocation_t;
Properties:
Name Type Description UPPER_LEFT
number LOWER_LEFT
number ANY
number -
inner GR_PARAM
-
Parameters for vertex definition.
Properties:
Name Type Description XY
number ZW
number Q
number EXT
number A
number RGB
number PARG
number ST0
number ST1
number ST2
number Q0
number Q1
number Q2
number -
inner GR_TEXFMT
-
typedef FxI32 GrTextureFormat_t;
Properties:
Name Type Description BIT8
number RGB_332
number YIQ_422
number ALPHA_8
number INTENSITY_8
number ALPHA_INTENSITY_44
number P_8
number RSVD0
number P_8_6666
number P_8_6666_EXT
number RSVD1
number BIT16
number ARGB_8332
number AYIQ_8422
number RGB_565
number ARGB_1555
number ARGB_4444
number ALPHA_INTENSITY_88
number AP_88
number RSVD2
number RSVD4
number -
inner GR_TEXTABLE
-
typedef FxU32 GrTexTable_t;
Properties:
Name Type Description NCC0
number NCC1
number PALETTE
number PALETTE_6666_EXT
number -
inner GR_TEXTURECLAMP
-
typedef FxI32 GrTextureClampMode_t;
Properties:
Name Type Description WRAP
number CLAMP
number MIRROR_EXT
number -
inner GR_TEXTUREFILTER
-
typedef FxI32 GrTextureFilterMode_t;
Properties:
Name Type Description POINT_SAMPLED
number BILINEAR
number -
inner GR_TMU
-
typedef FxI32 GrChipID_t;
Properties:
Name Type Description TMU0
number TMU1
number TMU2
number -
inner GR_VERTEX
-
grDrawVertexArray/grDrawVertexArrayContiguous primitive type
Properties:
Name Type Description POINTS
number LINE_STRIP
number LINES
number POLYGON
number TRIANGLE_STRIP
number TRIANGLE_FAN
number TRIANGLES
number TRIANGLE_STRIP_CONTINUE
number TRIANGLE_FAN_CONTINUE
number -
inner TEXMEM_2MB_EDGE
-
hard edge when assigning texture memory at 2MiB
Methods
-
inner fxAADrawTriangle(a, b, c, b1, b2, b3)
-
draw an anti-aliased triangle
Parameters:
Name Type Description a
Array.<number> a vertex b
Array.<number> a vertex c
Array.<number> a vertex b1
boolean anti alias AB edge b2
boolean anti alias BC edge b3
boolean anti alias CA edge -
inner fxAlphaBlendFunction(rgb_sf, rgb_df, alpha_sf, alpha_df)
-
specify the alpha blending function
Parameters:
Name Type Description rgb_sf
GR_BLEND rgb source blending factor rgb_df
GR_BLEND rgb destination blending factor alpha_sf
GR_BLEND alpha source blending factor alpha_df
GR_BLEND alpha destination blending factor -
inner fxAlphaCombine(func, factor, local, other, invert)
-
configure the alpha combine unit.
Parameters:
Name Type Description func
GR_COMBINE_FUNCTION function factor
GR_COMBINE_FACTOR scaling factor local
GR_COMBINE_LOCAL local alpha other
GR_COMBINE_OTHER other alpha invert
boolean invert generated alpha. -
inner fxAlphaControlsITRGBLighting(enable)
-
enables/disables alpha controlled lighting
Parameters:
Name Type Description enable
boolean enable/disable -
inner fxAlphaTestFunction(func)
-
specify the alpha test function
Parameters:
Name Type Description func
GR_CMP the function -
inner fxAlphaTestReferenceValue(value)
-
specify the alpha test reference value
Parameters:
Name Type Description value
number The new alpha test reference value. -
inner FXBIT(i) → {number}
-
set a bit.
Parameters:
Name Type Description i
number bit to set. Returns:
number - number with given bit set. -
inner fxBufferClear(color, alpha, depth)
-
clear the buffers to the specified values
Parameters:
Name Type Description color
number The color value used for clearing the draw buffer. alpha
number The alpha value used for clearing the alpha buffer depth
number An unsigned value used for clearing the depth buffer -
inner fxBufferSwap(interval)
-
exchange front and back buffers
Parameters:
Name Type Description interval
number The number of vertical retraces to wait before swapping the front and back buffers. -
inner fxChromakeyMode(mode)
-
enable/disable hardware chroma-keying
Parameters:
Name Type Description mode
boolean enable/disable -
inner fxChromakeyValue(val)
-
set the global chroma-key reference value
Parameters:
Name Type Description val
number The new chroma-key reference value. -
inner fxClipWindow(minx, miny, maxx, maxy)
-
set the size and location of the hardware clipping window
Parameters:
Name Type Description minx
number The lower x screen coordinate of the clipping window. miny
number The lower y screen coordinate of the clipping window. maxx
number The upper x screen coordinate of the clipping window. maxy
number The upper y screen coordinate of the clipping window. -
inner fxColorCombine(func, factor, local, other, invert)
-
configure the color combine unit.
Parameters:
Name Type Description func
GR_COMBINE_FUNCTION function factor
GR_COMBINE_FACTOR scaling factor local
GR_COMBINE_LOCAL local alpha other
GR_COMBINE_OTHER other alpha invert
boolean invert generated alpha. -
inner fxColorMask(rgb, alpha)
-
enable/disable writing into the color and alpha buffers
Parameters:
Name Type Description rgb
number color mask alpha
number alpha mask -
inner fxConstantColorValue(color)
-
set the global constant color
Parameters:
Name Type Description color
number The new constant color. -
inner fxCullMode(mode)
-
set the cull mode.
Parameters:
Name Type Description mode
GR_CULL the noew mode. -
inner fxDepthBiasLevel(level)
-
set the depth bias level
Parameters:
Name Type Description level
number th new level. -
inner fxDepthBufferFunction(func)
-
specify the depth buffer comparison function
Parameters:
Name Type Description func
GR_CMP the new function -
inner fxDepthBufferMode(mode)
-
set the depth buffering mode
Parameters:
Name Type Description mode
GR_DEPTHBUFFER the mode -
inner fxDepthMask(enable)
-
enable/disable writing into the depth buffer
Parameters:
Name Type Description enable
boolean enable/disable -
inner fxDepthRange(near, far)
-
specify viewport depth range
Parameters:
Name Type Description near
number min range far
number max range -
inner fxDisable(val)
-
enable Glide operating modes
Parameters:
Name Type Description val
GR_ENABLE one of GR_ENABLE. -
inner fxDisableAllEffects()
-
disable all special effects in the graphics subsystem
-
inner fxDitherMode(mode)
-
set dither mode.
Parameters:
Name Type Description mode
GR_DITHER the new dither mode. -
inner fxDrawLine(v1, v2)
-
draw a one-pixel-wide arbitrarily oriented line
Parameters:
Name Type Description v1
Array.<number> a vertex. v2
Array.<number> a vertex. -
inner fxDrawPoint(v1)
-
draw a point
Parameters:
Name Type Description v1
Array.<number> a vertex. -
inner fxDrawTriangle(v1, v2, v3)
-
draw a triangle
Parameters:
Name Type Description v1
Array.<number> a vertex. v2
Array.<number> a vertex. v3
Array.<number> a vertex. -
inner fxDrawVertexArray(mode, vertices)
-
draw a list of by-vertex vertices
Parameters:
Name Type Description mode
GR_VERTEX vertex type vertices
Array.<Array.<number>> array of vertices. -
inner FxEmptyVertex() → {Array.<number>}
-
create empty vertex.
Returns:
Array.<number> - an empty vertex. -
inner fxEnable(val)
-
enable Glide operating modes
Parameters:
Name Type Description val
GR_ENABLE one of GR_ENABLE. -
inner fxFinish()
-
force completion of all outstanding graphics commands.
-
inner fxFlush()
-
flush the graphics FIFO
-
inner fxFogColorValue(color)
-
set the global fog color
Parameters:
Name Type Description color
number the new fog color -
inner fxFogGenerateExp(density) → {Array.<number>}
-
generate an exponential fog table
Parameters:
Name Type Description density
number The fog density, typically between 0.0 and 1.0. Returns:
Array.<number> - a fog table. -
inner fxFogGenerateExp2(density) → {Array.<number>}
-
generate an exponential squared fog table
Parameters:
Name Type Description density
* The fog density, typically between 0.0 and 1.0. Returns:
Array.<number> - a fog table. -
inner fxFogGenerateLinear(near, far) → {Array.<number>}
-
generate a linear fog table
Parameters:
Name Type Description near
number The eye-space w coordinate where minimum fog exists. far
number The eye-space w coordinate where maximum fog exists. Returns:
Array.<number> - a fog table. -
inner fxFogMode(mode)
-
enable/disable per-pixel fog blending operations
Parameters:
Name Type Description mode
GR_FOG the new fog mode. -
inner fxFogTable(table)
-
download a fog table
Parameters:
Name Type Description table
Array.<number> a new table with at least fxGetFogTableEntries() entries -
inner fxFogTableIndexToW(i)
-
convert a fog table index to a floating point eye-space w value
Parameters:
Name Type Description i
number The fog table index, between 0 and GR_FOG_TABLE_SIZE. -
inner fxGammaCorrectionRGB(r, g, b)
-
set up gamma correction tables
Parameters:
Name Type Description r
number g
* b
* -
inner fxGetBitsDepth() → {number}
-
Returns:
number - The number of bits of depth (z or w) in the frame buffer. -
inner fxGetFogTableEntries() → {number}
-
Returns:
number - The number of entries in the hardware fog table. -
inner fxGetGammaTableEntries() → {number}
-
Returns:
number - The number of entries in the hardware gamma table. Returns FXFALSE if it is not possible to manipulate gamma (e.g. on a Macronix card, or in windowed mode). -
inner fxGetMaxTextureAspectRatio() → {number}
-
Returns:
number - The logarithm base 2 of the maximum aspect ratio supported for power-of-two, mipmap-able textures (e.g. Voodoo Graphics returns 3). -
inner fxGetMaxTextureSize() → {number}
-
Returns:
number - The width of the largest texture supported on this configuration (e.g. Voodoo Graphics returns 256). -
inner fxGetMemoryFb() → {number}
-
Returns:
number - The total number of bytes per Pixelfx chip if a non-UMA configuration is used, else 0. In non-UMA configurations, the total FB memory is GR_MEMORY_FB * GR_NUM_FB. -
inner fxGetMemoryTMU() → {number}
-
Returns:
number - The total number of bytes per Texelfx chip if a non-UMA configuration is used, else FXFALSE. In non-UMA configurations, the total usable texture memory is GR_MEMORY_TMU * GR_NUM_TMU. -
inner fxGetMemoryUma() → {number}
-
Returns:
number - The total number of bytes if a UMA configuration, else 0. -
inner fxGetNumBoards() → {number}
-
Returns:
number - The number of installed boards supported by Glide. -
inner fxGetNumFb() → {number}
-
Returns:
number - The number of Pixelfx chips present. This number will always be 1 except for SLI configurations. -
inner fxGetNumPendingBufferSwaps() → {number}
-
Returns:
number - The number of buffer swaps pending. -
inner fxGetNumTmu() → {number}
-
Returns:
number - The number of Texelfx chips per Pixelfx chip. For integrated chips, the number of TMUs will be returned. -
inner fxGetRevisionFb() → {number}
-
Returns:
number - The revision of the Pixelfx chip(s). -
inner fxGetRevisionTmu() → {number}
-
Returns:
number - The revision of the Texelfx chip(s). -
inner fxGetVertexSize() → {number}
-
Returns:
number - the size of the currently active vertex layout in 'number of entries'. -
inner fxGetWDepthMinMax() → {Array.<number>}
-
Returns:
Array.<number> - The minimum and maximum allowable w buffer values. -
inner fxGetZDepthMinMax() → {Array.<number>}
-
Returns:
Array.<number> - The minimum and maximum allowable z buffer values. -
inner fxInit()
-
init 3dfx glide. the following parameters are used: GR_RESOLUTION_640x480, GR_REFRESH_60Hz, GR_COLORFORMAT_ARGB, GR_ORIGIN_UPPER_LEFT, GR_WINDOW_COORDS
-
inner fxIsBusy() → {number}
-
Returns:
number - Returns FXFALSE if idle, FXTRUE if busy. -
inner fxLfbConstantAlpha(val)
-
Alpha value to use for direct framebuffer access.
Parameters:
Name Type Description val
number the constant alpha value. -
inner fxLfbConstantDepth(val)
-
Depth value to use for direct framebuffer access.
Parameters:
Name Type Description val
number the constant depth value. -
inner fxOrigin(origin)
-
establishes a y origin
Parameters:
Name Type Description origin
GR_ORIGIN set y origin. -
inner fxRenderBuffer(buffer)
-
selects the current color buffer for drawing and clearing
Parameters:
Name Type Description buffer
GR_BUFFER Selects the current color buffer. Valid values are GR_BUFFER_FRONTBUFFER and GR_BUFFER_BACKBUFFER. -
inner fxResetVertexLayout()
-
Reset grVertexLayout parameter offset to zero, and all parameter modes to GR_PARAM_DISABLE.
-
inner FxRGB2Vertex(v, idx, rgb)
-
split up RGB value and store in vertex.
Parameters:
Name Type Description v
Array.<number> the vertex to store in. idx
number start index of RGB values. rgb
number the RGB value. -
inner fxShutdown()
-
shut down the Glide library
-
inner fxTexCalcMemRequired(smallLod, largeLod, aspect, format) → {number}
-
return the texture memory consumed by a texture.
Parameters:
Name Type Description smallLod
GR_LOD smallest level of detail largeLod
GR_LOD larges level of detail aspect
GR_ASPECT texture aspect ratio format
GR_TEXFMT texture format Returns:
number - number of bytes required -
inner fxTexClampMode(tmu, sMode, tMode)
-
set the texture map clamping/wrapping mode
Parameters:
Name Type Description tmu
GR_TMU the TMU. sMode
GR_TEXTURECLAMP The new mode for the s direction tMode
GR_TEXTURECLAMP The new mode for the t direction -
inner fxTexCombine(tmu, rgb_func, rgb_factor, alpha_func, alpha_factor, rgb_invert, alpha_invert)
-
configure a texture combine unit
Parameters:
Name Type Description tmu
GR_TMU the TMU. rgb_func
GR_COMBINE_FUNCTION Specifies the function used in texture color generation rgb_factor
GR_COMBINE_FACTOR Specifies the scaling factor f used in texture color generation alpha_func
GR_COMBINE_FUNCTION Specifies the function used in texture alpha generation alpha_factor
GR_COMBINE_FACTOR Specifies the scaling factor f used in texture alpha generation rgb_invert
boolean Specifies whether the generated texture color should be bitwise inverted as a final step. alpha_invert
boolean Specifies whether the generated texture alpha should be bitwise inverted as a final step. -
inner fxTexDetailControl(tmu, lodBias, detailScale, detailMax)
-
set the detail texturing controls
Parameters:
Name Type Description tmu
GR_TMU the TMU. lodBias
number Controls where the blending between the two textures begins. This value is an LOD bias value in the range [–32.. +31]. detailScale
number Controls the steepness of the blend. Values are in the range [0..7] are valid. The scale is computed as 2^detailScale. detailMax
number Controls the maximum blending that occurs. Values in the range [0.0..1.0] are valid. -
inner fxTexFilterMode(tmu, minFilter, magFilter)
-
specify the texture minification and magnification filters
Parameters:
Name Type Description tmu
GR_TMU the TMU. minFilter
GR_TEXTUREFILTER The minification filter magFilter
GR_TEXTUREFILTER The magnification filter -
inner fxTexLodBiasValue(tmu, bias)
-
set the LOD bias value
Parameters:
Name Type Description tmu
GR_TMU the TMU. bias
number The new LOD bias value, a signed floating point value in the range [-8..7.75]. -
inner fxTexMaxAddress(tmu)
-
return the highest start address for texture downloads
Parameters:
Name Type Description tmu
GR_TMU the TMU. -
inner FxTexMemGetStartAddress(tmu, info) → {number}
-
try to find the next available memory for texture.
Parameters:
Name Type Description tmu
GR_TMU the TMU where this texture shall be used. info
TexInfo the texture. Returns:
number - a start address or null. -
inner FxTexMemInit(tmu)
-
(re)initialize simple texture memory management for given TMU.
Parameters:
Name Type Description tmu
GR_TMU the tmu to initialize. -
inner fxTexMinAddress(tmu)
-
return the lowest start address for texture downloads
Parameters:
Name Type Description tmu
GR_TMU the TMU. -
inner fxTexMipMapMode(tmu, mode, lodBlend)
-
set the mipmapping mode
Parameters:
Name Type Description tmu
GR_TMU the TMU. mode
GR_MIPMAP The new mipmapping mode lodBlend
boolean enables/disables LOD blending -
inner fxTexNCCTable(table)
-
select an NCC table
Parameters:
Name Type Description table
GR_TEXTABLE NCC table to use for decompressing compressed textures. Valid values are GR_TEXTABLE_NCC0 and GR_TEXTABLE_NCC1. -
inner fxVertexLayout(layout)
-
specify the format of by-vertex arrays
Parameters:
Name Type Description layout
Array.<GR_PARAM> list of layout parameters. -
inner fxViewport(x, y, width, height)
-
define a viewport
Parameters:
Name Type Description x
number The origin of the viewport, relative to the screen origin y
number The origin of the viewport, relative to the screen origin width
number The width and height of the viewport. height
number The width and height of the viewport.