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.