Difference between revisions of "GPU Textures"

From 3dbrew
Jump to navigation Jump to search
m (Replaced content with "This page is obsolete, see here for GPU register information, including that of textures.")
 
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
This page describes the [[GPU_Commands|GPU commands]] used for textures.
+
This page is obsolete, see [[GPU/Internal_Registers|here]] for GPU register information, including that of textures.
 
 
== Command set 0x0081 ==
 
{| class="wikitable" border="1"
 
!  Command Index
 
!  CommandID
 
!  Parameter
 
!  Description
 
|-
 
| 0
 
| 0x0081
 
|
 
| This is used to set the current texture info used for rendering.
 
|-
 
| 1
 
| 0x008E
 
| u32 color type
 
| This sets the current texture color type.
 
|}
 
 
 
Textures are initially disabled when beginning rendering for each mesh, this command set also enables textures. This command set is used for index0, commands 0x0091 and 0x0099 are used for index1-index2.
 
 
 
=== Texture info parameter structure for command 0x0081 ===
 
{| class="wikitable" border="1"
 
!  Index Word
 
!  Description
 
|-
 
| 0
 
| ?
 
|-
 
| 1
 
| The low u16 is the texture image width, and the high u16 is the texture image height.
 
|-
 
| 2
 
| Texture parameters, initialized by glTexParameter().
 
|-
 
| 3
 
| ?
 
|-
 
| 4
 
| Texture image data physical address >> 3.
 
|-
 
| 5-9
 
| Value zero
 
|}
 
 
 
== Texture info parameter structure for commands 0x0091 and 0x0099 ==
 
{| class="wikitable" border="1"
 
!  Index Word
 
!  Description
 
|-
 
| 4-0
 
| Same as command 0x0081.
 
|-
 
| 5
 
| Color type
 
|}
 
 
 
== Texture parameters ==
 
{| class="wikitable" border="1"
 
!  Bit
 
!  Description
 
!  GL parameter name
 
|-
 
| 0
 
| Normally this is value 0.
 
|
 
|-
 
| 1
 
| 0 = GL_NEAREST, 1 = GL_LINEAR.
 
| GL_TEXTURE_MAG_FILTER
 
|-
 
| 2
 
| 1 = GL_LINEAR, GL_LINEAR_MIPMAP_NEAREST, or GL_LINEAR_MIPMAP_LINEAR. Value zero otherwise.
 
| GL_TEXTURE_MIN_FILTER
 
|-
 
| 3
 
| Unused?
 
| ?
 
|-
 
| 5-4
 
| 2 = texture color type 0xC, 0 otherwise.(Enable/disable texture data compression?) 0 = unknown, 1 = unknown, 3 = same effect as value 2.
 
|
 
|-
 
| 7-6
 
| Unused
 
|-
 
| 11-8
 
| 0 = GL_CLAMP_TO_EDGE, 1=unknown, 2=GL_REPEAT, 3=unknown.
 
| GL_TEXTURE_WRAP_S
 
|-
 
| 15-12
 
| Same values as GL_TEXTURE_WRAP_S.
 
| GL_TEXTURE_WRAP_T
 
|-
 
| 24
 
| 1 = GL_NEAREST_MIPMAP_LINEAR, or GL_LINEAR_MIPMAP_LINEAR. Value zero otherwise.
 
| GL_TEXTURE_MIN_FILTER
 
|-
 
| 27-25
 
| Unused?
 
|-
 
| 30-28
 
| When some flag=1: value1=GL_TEXTURE_2D, value0 when the input parameter is not GL_TEXTURE_2D. When some flag=0: 0=GL_TEXTURE_2D, 1-4=unknown.
 
| ?
 
|-
 
| 31
 
| Unused?
 
| ?
 
|}
 
 
 
== Texture color types ==
 
{| class="wikitable" border="1"
 
!  Value
 
!  Description
 
!  GL Format
 
!  GL Data Type
 
|-
 
| 0x0
 
| RGBA8888
 
| GL_RGBA / DMP-extension constant 0x6752
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x1
 
| BGR888
 
| GL_RGB / DMP-extension constant 0x6754
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x2
 
| RGBA5551
 
| GL_RGBA / DMP-extension constant 0x6752
 
| GL_UNSIGNED_SHORT_5_5_5_1
 
|-
 
| 0x3
 
| BGR565
 
| GL_RGB / DMP-extension constant 0x6754
 
| GL_UNSIGNED_SHORT_5_6_5
 
|-
 
| 0x4
 
| RGBA4444
 
| GL_RGBA / DMP-extension constant 0x6752
 
| GL_UNSIGNED_SHORT_4_4_4_4
 
|-
 
| 0x5
 
| Tiled RGB565
 
| GL_LUMINANCE_ALPHA(?) / DMP-extension constant 0x6758(?)
 
| GL_UNSIGNED_BYTE(?)
 
|-
 
| 0x6
 
| Tiled BGR888
 
| DMP-extension constants 0x6700 / 0x6759
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x7
 
|
 
| GL_LUMINANCE / DMP-extension constant 0x6757
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x8
 
|
 
| GL_ALPHA / DMP-extension constant 0x6756
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x9
 
| ?
 
| GL_LUMINANCE_ALPHA / DMP-extension constant 0x6758
 
| DMP-extension constant 0x6760
 
|-
 
| 0xA
 
| ?
 
| GL_LUMINANCE / DMP-extension constant 0x6757
 
| DMP-extension constant 0x6761
 
|-
 
| 0xB
 
| ?
 
| GL_ALPHA / DMP-extension constant 0x6756
 
| DMP-extension constant 0x6761
 
|-
 
| 0xC
 
| Compression related?
 
| DMP-extension constant 0x675A
 
|
 
|-
 
| 0xD
 
| ?
 
| DMP-extension constant 0x675B
 
|
 
|}
 

Latest revision as of 06:34, 5 December 2015

This page is obsolete, see here for GPU register information, including that of textures.