【问题标题】:SlimDX load precompiled shaderSlimDX 加载预编译着色器
【发布时间】:2012-09-02 09:12:08
【问题描述】:

我正在尝试在 SlimDX(Direct3D11) 中加载预编译的着色器,但我不知道该怎么做。

我搜索了这个主题,只找到了 C++ 本机版本 DirectX 的解决方案。似乎 /Gch 编译选项和设备->CreatePixelShader(data,ps)。

问题是,我在 SlimDX 中找不到这个功能。 SlimDX 中的函数在运行时编译着色器。

如何在 SlimDX 中加载预编译的着色器?

【问题讨论】:

    标签: c# .net-4.0 shader slimdx


    【解决方案1】:

    考虑到您的着色器二进制文件保存在 byte[] 字节码中(因为我不确定您从哪里加载它,但它只是保存后的二进制数据)

    DataStream ds = new DataStream(bytecode.Length, true, true);
    ds.Write(bytecode, 0, bytecode.Length);
    ShaderBytecode bc = new ShaderBytecode(ds);
    

    然后在dx11中加载效果:

    Effect effect = new Effect(device,bc);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多