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.")
 
(19 intermediate revisions by 6 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 0x809F0081 ==
 
{| class="wikitable" border="1"
 
!  Command Index
 
!  CommandID
 
!  Parameter
 
!  Description
 
|-
 
| 0
 
| 0x809F0081
 
|
 
| This is used to set the current texture info used for rendering.
 
|-
 
| 1
 
| 0x000F008E
 
| u32 color type
 
| This sets the current texture color type.
 
|}
 
 
 
Textures are initially disabled when beginning rendering for each mesh, this command set enables textures.
 
 
 
=== Texture info parameter structure for CmdID 0x809F0081 ===
 
{| 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 data physical address >> 3. This is normally located in VRAM.
 
|-
 
| 5-9
 
| ?
 
|}
 
 
 
==== 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?
 
| ?
 
|-
 
| 7-4
 
| 2 = texture color type 0xC, 0 otherwise.(Enable/disable texture data compression?)
 
|
 
|-
 
| 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 type parameter values for CmdID 0x000F008E ===
 
{| class="wikitable" border="1"
 
!  Value
 
!  Description
 
!  GL Format
 
!  GL Data Type
 
|-
 
| 0x0
 
| RGBA8888
 
| GL_RGBA
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x1
 
| BGR888
 
| GL_RGB
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x2
 
| RGBA5551
 
| GL_RGBA
 
| GL_UNSIGNED_SHORT_5_5_5_1
 
|-
 
| 0x3
 
| RGB565
 
| GL_RGB
 
| GL_UNSIGNED_SHORT_5_6_5
 
|-
 
| 0x4
 
| RGBA4444
 
| GL_RGBA
 
| GL_UNSIGNED_SHORT_4_4_4_4
 
|-
 
| 0x5
 
|
 
| GL_LUMINANCE_ALPHA
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x6
 
| ?
 
| ?
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x7
 
|
 
| GL_LUMINANCE
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x8
 
|
 
| GL_ALPHA
 
| GL_UNSIGNED_BYTE
 
|-
 
| 0x9
 
| ?
 
| GL_LUMINANCE_ALPHA
 
| ?
 
|-
 
| 0xA
 
| ?
 
| GL_LUMINANCE
 
|
 
|-
 
| 0xB
 
| ?
 
| GL_ALPHA
 
|
 
|-
 
| 0xC
 
| Compression related?
 
| ?
 
|
 
|-
 
| 0xD
 
| ?
 
| ?
 
|
 
|}
 

Latest revision as of 06:34, 5 December 2015

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