Esempio n. 1
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);
        }
 void WriteShader(StateBlob blob) => WriteShader(ShaderNames[blob], blob.Shader);