Difference between revisions of "GPU Textures"
Jump to navigation
Jump to search
(Identify commands by their ID, not by some random header they are used with.) |
|||
Line 143: | Line 143: | ||
|- | |- | ||
| 0x5 | | 0x5 | ||
− | | | + | | Tiled RGB565 |
− | | GL_LUMINANCE_ALPHA / DMP-extension constant 0x6758 | + | | GL_LUMINANCE_ALPHA(?) / DMP-extension constant 0x6758(?) |
− | | GL_UNSIGNED_BYTE | + | | GL_UNSIGNED_BYTE(?) |
|- | |- | ||
| 0x6 | | 0x6 |
Revision as of 03:09, 15 November 2014
This page describes the GPU commands used for textures.
Command set 0x0081
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
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
Index Word | Description |
---|---|
4-0 | Same as command 0x0081. |
5 | Color type |
Texture parameters
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
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 | ? | 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 |