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); }
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); }