EDF3(EDF2017) DXSL format - KCreator/Earth-Defence-Force-Documentation GitHub Wiki
This is the format for EDF2017 shader data. Each offset starts at the beginning of the table.
Header:0x18 bytes
| Offset | Size | Description |
|---|---|---|
| 0x00 | 4 | "DXSL" header |
| 0x04 | 4 | Text Data Offset |
| 0x08 | 4 | table A Count |
| 0x0C | 4 | table A Offset |
| 0x10 | 4 | table B Count |
| 0x14 | 4 | table B Offset |
table A:0x0C bytes
| Offset | Size | Description |
|---|---|---|
| 0x00 | 4 | Offset to technique Name (RenderScene,Nolightning...) |
| 0x04 | 4 | Data A Count |
| 0x08 | 4 | Data A Offset |
Data A:0x1C+(0x08)*(Parameter Count) bytes
| Offset | Size | Description |
|---|---|---|
| 0x00 | 4 | Offset to pass Name (In most cases, P0) |
| 0x04 | 4 | parameter Count |
| 0x08 | 4 | parameter Offset |
| 0x0C | 4 | Offset to Vertex Shader function Name (VS_Main()) |
| 0x10 | 4 | Offset to Vertex Shader version Name (vs_2_0) |
| 0x14 | 4 | Offset to Pixel Shader function Name (PS_Main()) |
| 0x18 | 4 | Offset to Pixel Shader version Name (ps_2_0) |
| 0x1C | 4 | parameter 1 Name |
| 0x20 | 4 | parameter 1 Setting value |
| ... | ... | ... |
parameter
| value | parameter Name | parameter Setting value |
|---|---|---|
| 0 | AlphaBlendEnable | 0:False 1:True |
| 1 | SrcBlend | 1:ONE 4:SRCALPHA |
| 2 | DestBlend | 1:ONE 5:INVSRCALPHA |
| 3 | CullMode | 0:None 1:CW |
| 4 | ZWriteEnable | 0:false 1:True |
table B:0x0C bytes
| Offset | Size | Description |
|---|---|---|
| 0x00 | 4 | Unknown |
| 0x04 | 4 | Unknown |
| 0x08 | 4 | Unknown |
Text Data
The shader program code is embedded. If you just want to read it, you can do so with a text editor.