Paradox Game Engine  v1.0.0 beta06
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros Pages
IEffectCompiler.cs
Go to the documentation of this file.
1 // Copyright (c) 2014 Silicon Studio Corp. (http://siliconstudio.co.jp)
2 // This file is distributed under GPL v3. See LICENSE.md for details.
3 using System.Collections.Generic;
4 
5 using SiliconStudio.Paradox.Effects;
6 
7 namespace SiliconStudio.Paradox.Shaders.Compiler
8 {
9  /// <summary>
10  /// Main interface used to compile a shader.
11  /// </summary>
12  public interface IEffectCompiler
13  {
14  /// <summary>
15  /// Compiles the specified shader source.
16  /// </summary>
17  /// <param name="shaderSource">The shader source.</param>
18  /// <param name="compilerParameters">The compiler parameters.</param>
19  /// <param name="modifiedShaders">The modified shaders during the whole application lifetime.</param>
20  /// <param name="recentlyModifiedShaders">The modified shaders since last call.</param>
21  /// <returns>Result of the compilation.</returns>
22  CompilerResults Compile(ShaderSource shaderSource, CompilerParameters compilerParameters, HashSet<string> modifiedShaders, HashSet<string> recentlyModifiedShaders);
23  }
24 }
Main interface used to compile a shader.