Ticket #56 (closed task: fixed)

Opened 13 years ago

Last modified 11 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 13 years ago by gongminmin

  • description modified (diff)

Changed 13 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 13 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 12 years ago by gongminmin

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

Changed 11 years ago by gongminmin

  • milestone changed from 4.4.0 to 4.5.0

Changed 11 years ago by gongminmin

  • status changed from new to accepted

Initial code is added in changeset 09e35e6bdb498d203df2b986addb7b625763816b.

Changed 11 years ago by gongminmin

Changed 11 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 11 years ago by gongminmin

Note: See TracTickets for help on using tickets.