Node Based ShaderGenerator Features list

Node Based的代码生成器经过几天的修正,基本已经做到可用了。

目前支持以下Feature.

1. 符合规范和调用协议的Node组合。

2. 支持字符串方式来命名由多个shader node组合在一起的node如

        HGpuProgram hProgram = pMGR->load(L"simple.pixel<0:simple.mask,RGBAGray;>" , NULL, NULL);

3. xShaderNameParser类提供insertNode类来生成2中的字符串。

        xGpuProgNameParser _shaderNameParser;
            xGpuProgramName    _shaderName;
            _shaderNameParser.setShaderName(eShader_VertexShader , L"simple.vertex" );
            _shaderNameParser.setShaderName(eShader_PixelShader  , L"simple.pixel"  );
            _shaderNameParser.addShaderNode(eShader_PixelShader  , L"simple.texture");
            _shaderNameParser.addShaderNode(eShader_PixelShader  , L"simple.mask"   );
            _shaderNameParser.addShaderNode(eShader_PixelShader  , L"simple.fakehdr" );
            _shaderNameParser.addShaderNode(eShader_PixelShader  , L"RGBAGray"   );
            _shaderNameParser.toName(_shaderName);

4. ShaderNode 支持import lib (类似于include)

5. 支持自定义Shader返回类型。

6. 用作骨架类Shader代码可以单独使用。

7. 支持多个attach point(socket), attach point可以用序号和名字来索引

8. 生成的code可以保存到文件,第二次不需要动态生成,会自动优先加载先前生成的shader文件。

9. 支持HLSL/GLSL语法。只负责生成代码,不需要D3D/OpenGL API支持。

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值