subtexload(3G) subtexload(3G)
subtexload - load part or all of a texture defined with TX_FASTDEFINE
void subtexload(long target, long id, float s0, float s1, float t0, float t1, long numwords, unsigned long * texture, unsigned long flags)
target is the texture target to which the texture we are loading is
bound. Currently this must be TX_TEXTURE_0.
id is the id of the texture we are loading.
s0 is the starting S coordinate of the subtexture to load.
s1 is the ending S coordinate of the subtexture to load.
t0 is the starting T coordinate of the subtexture to load.
t1 is the ending T coordinate of the subtexture to load.
nt is number of words in the subtexture array.
texture is the long word aligned array of texels to load.
flags is a special modifier used for performance-critical, common
cases such as loading a 64x64 1 component 12bit subtexture with
one texel per 16bit word.
subtexload loads some or all of a texture that is currently allocated
space in texture memory. The transfer uses the pixmode and scale and
bias settings in effect at the time of the texdef2d if
TX_EXTERNAL_FORMAT, TX_PIXMODE was specified in the properties.
The values s0,s1,t0,t1 are mapped to texel values by
start_s_texel = s0*texture_width;
start_t_texel = t0*texture_height;
end_s_texel = s1*texture_width - 1;
end_t_texel = t1*texture_height - 1;
s0,s1,t0,t1 should fall on texels that are a multiple of 32, i.e. for a
texture that is 256x128, s0,s1 can be
0,.125,.25..375,.5,.625,.750,.875,1.0, while t0,t1 can be
0.,.25,.50.,75.,1.0. Results are undefined for any other values.
If 1 is passed for flags, the data will be transferred as formatted 16bit
texels to the graphics system with minimal interpretation, i.e., no scale
and bias and no pixmode transformations. A significant gain in transfer
speed may be achieved for RealityEngine systems. Only data that is 64
texels on a side may be sent. A common use of this is to send 64x64 tiles
of 12 bit intensity data stored in the low bits of a 16bit datum.
Page 1
subtexload(3G) subtexload(3G)
If 2 is passed for flags, 8bit/component ABGR data will be transferred to
the graphics system with minimal interpretation, i.e., no scale and bias
and no pixmode transformations. A significant gain in transfer speed may
be achieved for RealityEngine systems. Only data that is 128 texels on a
side may be sent. A common use of this is to send 128x128 tiles of 32bit
ABGR data.
texdef2d,fbsubtexload
subtexload is supported only on RealityEngine systems with release 5.0.1
or greater.
PPPPaaaaggggeeee 2222 [ Back ]
|