OBD:TXMP: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (design; deleted wrong table; moved mipmap and alpha explanation to discussion page)
m (copied stuff from the discussion page...)
Line 11: Line 11:
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 06 | 3        | level 3 }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 06 | 3        | level 3 }}
{{OBDtr2|0x08 | char[128]|FFC8C8| rl_1                    | name of the texture }}
{{OBDtr2|0x08 | char[128]|FFC8C8| rl_1                    | name of the texture }}
{{OBDtr| 0x88 | bitset  |FFFFC8| 00         | 0        | texture options 1; see the [[OBD_Talk:TXMP|discussion page]] for details }}
{{OBDtr| 0x88 | bitset  |FFFFC8| 00 10 00 00 | 0        | no options; possible option flags
{{OBDtr| 0x89 | bitset  |FFFFC8| 10         | 16       | texture options 2; see the [[OBD_Talk:TXMP|discussion page]] for details }}
:0x'''01''' 00 00 00 - has mipmaps
{{OBDtr| 0x8A | bitset  |FFFFC8| 00         | 0        | texture options 3; see the [[OBD_Talk:TXMP|discussion page]] for details }}
:0x'''04''' 00 00 00 - U wrapping disabled
{{OBDtr| 0x8B | bitset  |FFFFC8| 00          | 0        | unused bitset; always zero }}
:0x'''08''' 00 00 00 - V wrapping disabled
:0x'''10''' 00 00 00 - unknown
:0x'''40''' 00 00 00 - play animation back to back (frames 0 to n then n-1 to 0)
:0x00 '''01''' 00 00 - animation related; exact effect not known
:0x00 '''02''' 00 00 - env map texture
:0x00 '''04''' 00 00 - additive alpha blending
:0x00 '''10''' 00 00 - texture data endianess
:0x00 '''40''' 00 00 - disable animation looping?
:0x00 '''80''' 00 00 - 16 bit blue?
:0x00 00 '''01''' 00 - 16 bit alpha?
:0x00 00 '''02''' 00 - 16 bit red?
 
see the [[OBD_Talk:TXMP|discussion page]] also }}
{{OBDtr| 0x8C | int16    |C8FFC8| 80 00      | 128      | width of the image in pixel }}
{{OBDtr| 0x8C | int16    |C8FFC8| 80 00      | 128      | width of the image in pixel }}
{{OBDtr| 0x8E | int16    |C8FFC8| 80 00      | 128      | height of the image in pixel }}
{{OBDtr| 0x8E | int16    |C8FFC8| 80 00      | 128      | height of the image in pixel }}
{{OBDtr| 0x90 | int32    |C8FFFF| 01 00 00 00 | 1        | store type; see the [[OBD_Talk:TXMP|discussion page]] for details }}
{{OBDtr| 0x90 | int32    |C8FFFF| 01 00 00 00 | 1        | texture format RGB555; used texture formats:
:0 - ARGB4444, 16 bits/pixel, 4 bits per channel, alpha channel present (GL_RGBA4 OpenGL texture format)
:1 - RGB555, 16 bits/pixel, 5 bits per channel, no alpha channel (GL_RGB5 OpenGL texture format)
:2 - ARGB5551, 16 bits/pixel, 5 bits per color channel, 1 bit alpha channel (GL_RGB5_A1 OpenGL texture format)
:8 - RGB888, 32 bits/pixel, 8 bits per color channel, no alpha channel (GL_RGB OpenGL texture format)
:9 - S3TC/DXT1, compressed 4 times (GL_COMPRESSED_RGB_S3TC_DXT1_EXT OpenGL texture format) }}
{{OBDtr| 0x94 | link    |FFC8FF| 00 00 00 00 | unused    | link to a [[OBD:TXAN|TXAN]] file; only used if the texture is the first pic of an texture animation }}
{{OBDtr| 0x94 | link    |FFC8FF| 00 00 00 00 | unused    | link to a [[OBD:TXAN|TXAN]] file; only used if the texture is the first pic of an texture animation }}
{{OBDtr| 0x98 | link    |FFC800| 00 00 00 00 | unused    | link to a TXMP file; only used in connection with shade vertex effects }}
{{OBDtr| 0x98 | link    |FFC800| 00 00 00 00 | unused    | link to a TXMP file; only used in connection with shade vertex effects }}

Revision as of 10:11, 15 December 2007

ONI BINARY DATA
TXMB << Other file types >> TxtC
TXMP : Texture Map
switch to XML:TXMP page
Overview @ Oni Stuff
OBD.png


Txmp all.gif


Offset Type Raw Hex Value Description
0x00 res_id 01 1F 00 00 31 00031-rl_1.TXMP
0x04 lev_id 01 00 00 06 3 level 3
0x08 char[128] rl_1 name of the texture
0x88 bitset 00 10 00 00 0 no options; possible option flags
0x01 00 00 00 - has mipmaps
0x04 00 00 00 - U wrapping disabled
0x08 00 00 00 - V wrapping disabled
0x10 00 00 00 - unknown
0x40 00 00 00 - play animation back to back (frames 0 to n then n-1 to 0)
0x00 01 00 00 - animation related; exact effect not known
0x00 02 00 00 - env map texture
0x00 04 00 00 - additive alpha blending
0x00 10 00 00 - texture data endianess
0x00 40 00 00 - disable animation looping?
0x00 80 00 00 - 16 bit blue?
0x00 00 01 00 - 16 bit alpha?
0x00 00 02 00 - 16 bit red?

see the discussion page also

0x8C int16 80 00 128 width of the image in pixel
0x8E int16 80 00 128 height of the image in pixel
0x90 int32 01 00 00 00 1 texture format RGB555; used texture formats:
0 - ARGB4444, 16 bits/pixel, 4 bits per channel, alpha channel present (GL_RGBA4 OpenGL texture format)
1 - RGB555, 16 bits/pixel, 5 bits per channel, no alpha channel (GL_RGB5 OpenGL texture format)
2 - ARGB5551, 16 bits/pixel, 5 bits per color channel, 1 bit alpha channel (GL_RGB5_A1 OpenGL texture format)
8 - RGB888, 32 bits/pixel, 8 bits per color channel, no alpha channel (GL_RGB OpenGL texture format)
9 - S3TC/DXT1, compressed 4 times (GL_COMPRESSED_RGB_S3TC_DXT1_EXT OpenGL texture format)
0x94 link 00 00 00 00 unused link to a TXAN file; only used if the texture is the first pic of an texture animation
0x98 link 00 00 00 00 unused link to a TXMP file; only used in connection with shade vertex effects
0x9C offset 20 00 00 00 00 00 00 20 at this position starts the texture part in the raw file (PC only)
0xA0 offset 00 00 00 00 unused at this position starts the texture part in the sep file (Mac and PC demo only)
0xA4 char[28] AD DE dead unused


Below you can see the pictures for this example. The first picture shows how it's stored in Oni, the second how you see it in the game.


Pixel arrangement
how it's stored   how you'll see it
txmp_ex1.gif   txmp_ex2.gif


ONI BINARY DATA
TXMB << Other file types >> TxtC
TXMP : Texture Map
Generic file