Assassins Creed:Texture Map

From TBotR Wiki

Introduction

Texture Maps are image files used by the game. They consist of a proprietary header and the image information stored using DDS compression. If you strip away the proprietary header and create your own DDS header for the image information, you will be able to view the image using anything capable of viewing DDS images.
PC Texture Map files are read little-endian.

The following game abbreviations are used throughout this page:

AC1 -- Assassin's Creed
AC2 -- Assassin's Creed II
ACB -- Assassin's Creed: Brotherhood
ACRe -- Assassin's Creed: Revelations
AC3 -- Assassin's Creed III
AC3SP -- Assassin's Creed III (Single Player)
AC3MP -- Assassin's Creed III (Multi-Player)
ACL -- Assassin's Creed: Liberation
AC4 -- Assassin's Creed IV: Black Flag
AC4SP -- Assassin's Creed IV: Black Flag (Single Player)
AC4MP -- Assassin's Creed IV: Black Flag (Multi-Player)
ACU -- Assassin's Creed: Unity
ACRo -- Assassin's Creed: Rogue

Structure

AC1, AC2, ACB, ACRe, AC3MP, ACRo AC3SP, ACL, AC4, ACU
Header
Image Data
Footer
Header
Image Data

Header

The Header contains all the information you need to create your own DDS header.

AC1 AC2 ACB, ACRe, AC3MP AC3SP
Offset Type Description
0 INT32 File ID
4 INT32 Resource Type
8 INT32 Image Width
12 INT32 Image Height
16 INT32 Unknown
20 INT32 DXT Type
Value Description
1 DXT1
2 DXT1
3 DXT1
4 DXT3
5 DXT5
12 DXT5
24 INT32[2] Unknown
32 INT32 Number of Mip-Maps
36 INT32[9] Unknown
72 BYTE[3] Unknown
75 INT32 Unknown ID
79 INT32 Raw Image Data Size
Offset Type Description
0 BYTE Unknown
1 INT32 File ID
5 INT32 Resource Type
9 INT32 Image Width
13 INT32 Image Height
17 INT32 Unknown
21 INT32 DXT Type
Value Description
1 DXT1
2 DXT1
3 DXT1
4 DXT3
5 DXT5
12 DXT5
25 INT32[2] Unknown
33 INT32 Number of Mip-Maps
37 INT32[10] Unknown
77 INT32 Unknown ID
81 INT32 Raw Image Data Size
Offset Type Description
0 BYTE Unknown
1 INT32 File ID
5 INT32 Resource Type
9 INT32 Image Width
13 INT32 Image Height
17 INT32 Unknown
21 INT32 DXT Type
Value Description
1 DXT1
2 DXT1
3 DXT1
4 DXT3
5 DXT5
12 DXT5
25 INT32[2] Unknown
33 INT32 Number of Mip-Maps
37 INT32[11] Unknown
81 INT32 Unknown ID
85 INT32 Raw Image Data Size
Offset Type Description
0 BYTE Unknown
1 INT64 File ID
9 INT32 Resource Type
13 INT32 Image Width
17 INT32 Image Height
21 INT32 Unknown
25 INT32 DXT Type
Value Description
1 DXT1
2 DXT1
3 DXT1
4 DXT3
5 DXT5
12 DXT5
29 INT32[2] Unknown
37 INT32 Number of Mip-Maps
41 INT32[13] Unknown
93 INT32 Unknown ID
97 INT32[2] Unknown
105 INT32 Image Width
109 INT32 Image Height
113 INT32 Unknown
117 INT32 Number of Mip-Maps
121 INT32 DXT Type
125 INT32[8] Unknown
157 BYTE Unknown
158 INT32 Raw Image Data Size
ACL, AC4SP AC4MP ACU ACRo
Offset Type Description
0 BYTE Unknown
1 INT64 File ID
9 INT32 Resource Type
13 INT32 Image Width
17 INT32 Image Height
21 INT32 Unknown
25 INT32 DXT Type
Value Description
1 DXT1
2 DXT1
3 DXT1
4 DXT3
5 DXT5
12 DXT5
29 INT32[2] Unknown
37 INT32 Number of Mip-Maps
41 INT32[12] Unknown
89 INT32 Unknown ID
93 INT32[2] Unknown
101 INT32 Image Width
105 INT32 Image Height
109 INT32 Unknown
113 INT32 Number of Mip-Maps
117 INT32 DXT Type
121 INT32[8] Unknown
153 BYTE Unknown
154 INT32 Raw Image Data Size
Offset Type Description
0 BYTE Unknown
1 INT32 File ID
5 INT32 Resource Type
9 INT32 Image Width
13 INT32 Image Height
17 INT32 Unknown
21 INT32 DXT Type
Value Description
1 DXT1
2 DXT1
3 DXT1
4 DXT3
5 DXT5
12 DXT5
25 INT32[2] Unknown
33 INT32 Number of Mip-Maps
37 INT32[11] Unknown
81 INT32 Unknown ID
85 INT32[2] Unknown
93 INT32 Image Width
97 INT32 Image Height
101 INT32 Unknown
105 INT32 Number of Mip-Maps
109 INT32 DXT Type
113 INT32[8] Unknown
145 BYTE Unknown
146 INT32 Raw Image Data Size
Offset Type Description
0 BYTE Unknown
1 INT64 File ID
9 INT32 Resource Type
13 INT32 Image Width
17 INT32 Image Height
21 INT32 Unknown
25 INT32 DXT Type
Value Description
1 DXT1
2 DXT1
3 DXT1
4 DXT3
5 DXT5
12 DXT5
29 INT32[2] Unknown
37 INT32 Number of Mip-Maps
41 INT32[8] Unknown
73 INT32 Unknown ID
77 INT32[2] Unknown
85 INT32 Image Width
89 INT32 Image Height
93 INT32 Unknown
97 INT32 Number of Mip-Maps
101 INT32 DXT Type
105 INT32[5] Unknown
125 INT32 Raw Image Data Size
Offset Type Description
0 BYTE Unknown
1 INT64 File ID
9 INT32 Resource Type
13 INT32 Image Width
17 INT32 Image Height
21 INT32 Unknown
25 INT32 DXT Type
Value Description
1 DXT1
2 DXT1
3 DXT1
4 DXT3
5 DXT5
12 DXT5
29 INT32[5] Unknown
49 INT32 Unknown ID
53 FLOAT[8] Unknown
85 BYTE Unknown
86 INT32[12] Unknown
134 BYTE Unknown
135 INT32 Unknown ID
139 INT32[2] Unknown
147 INT32 Image Width
151 INT32 Image Height
155 INT32 Unknown
159 INT32 Number of Mip-Maps
163 INT32 DXT Type
167 INT32[10] Unknown
207 BYTE Unknown
208 INT32 Unknown ID
212 FLOAT[8] Unknown
244 BYTE Unknown
245 INT32 Raw Image Data Size

Image Data

Simply the raw image data required to create the image.

AC1, AC2, ACB, ACRe, AC3, ACL, AC4, ACU, ACRo
Offset Type Description
0 BYTE[n] Raw Image Data - n = Raw Image Data Size

Footer

This section generally repeats information found in the Header. Starting with Assassin's Creed III, for the single player version some of the information contained in the footer has been incorporated into the Header. Assassin's Creed: Rogue returns to using a Footer, however, it's extremely truncated.

AC1, AC2, ACB, ACRe, AC3MP ACRo
Offset Type Description
0 INT32[2] Unknown
8 INT32 Image Width
12 INT32 Image Height
16 INT32 Unknown
20 INT32 Number of Mip-Maps
24 INT32 DXT Type
28 INT32[8] Unknown
60 BYTE Unknown
Offset Type Description
0 INT64 File ID
Personal tools