void WriteShader(string shaderName, ShaderModel shader)
        {
            WriteLine($"// {shaderName} {shader.Type}_{shader.MajorVersion}_{shader.MinorVersion} Has PRES {shader.Preshader != null}");
            var funcName = shaderName;
            var text     = "";

            if (shader.Type == ShaderType.Expression)
            {
                text = ExpressionHLSLWriter.Decompile(shader, funcName);
            }
            else
            {
                text = HlslWriter.Decompile(shader, funcName);
                // text = text.Replace("main(", $"{funcName}(");
            }
            WriteLine(text);
        }
Exemple #2
0
        void WriteShader(StateBlob blob)
        {
            var shader = blob.Shader;

            WriteLine($"// {ShaderNames[blob]} {shader.Type}_{shader.MajorVersion}_{shader.MinorVersion} Has PRES {shader.Preshader != null}");
            var funcName = ShaderNames[blob];
            var text     = "";

            if (blob.Shader.Type == ShaderType.Expression)
            {
                text = ExpressionHLSLWriter.Decompile(blob.Shader, funcName);
            }
            else
            {
                text = HlslWriter.Decompile(blob.Shader);
                text = text.Replace("main(", $"{funcName}(");
            }
            WriteLine(text);
        }