Ticket #56 (closed task: fixed)

Opened 8 years ago

Last modified 6 years ago

D3D11 bytecode to GLSL compiler

Reported by: gongminmin Owned by: gongminmin
Priority: minor Milestone: 4.5.0
Component: Tools Version:
Keywords: Cc:

Description (last modified by gongminmin) (diff)

The shader in KlayGE is mostly written in D3D11 HLSL or Cg. But the Cg to GLSL compiler is not good enough for every shader. So the best solution is generate GLSL from D3D11 bytecode. It's similar to  Mojoshader, but handles SM4 and SM5.

Change History

Changed 8 years ago by gongminmin

  • description modified (diff)

Changed 8 years ago by gongminmin

Steps:
1. D3D11 disasm.
2. VS/PS bytecode to GLSL.
3. GS/HS/DS to GLSL.
4. fxml JIT.
5. (Optional) CS to OpenCL.

Changed 8 years ago by gongminmin

fxml JIT should be a independent function (ticket #90). So the steps become:

  1. D3D11 disasm.
  2. VS bytecode to GLSL.
  3. PS bytecode to GLSL.
  4. GS bytecode to GLSL.
  5. HS and DS bytecode to GLSL.

Changed 6 years ago by gongminmin

  • priority changed from major to minor
  • milestone set to 4.4.0

Changed 6 years ago by gongminmin

  • milestone changed from 4.4.0 to 4.5.0

Changed 6 years ago by gongminmin

  • status changed from new to accepted

Initial code is added in changeset 09e35e6bdb498d203df2b986addb7b625763816b.

Changed 6 years ago by gongminmin

Changed 6 years ago by gongminmin

  • status changed from accepted to closed
  • resolution set to fixed

4) in changeset 08eec07a21b436c740d6c7b1ad706412c089ac52. 5) is deferral to next version.

Changed 6 years ago by gongminmin

Note: See TracTickets for help on using tickets.