33 lines
1.3 KiB
C#
33 lines
1.3 KiB
C#
using SlimDX.Direct3D10;
|
|
using SlimDX;
|
|
|
|
namespace Aiwaz.Contracts
|
|
{
|
|
public enum ParameterBindType
|
|
{
|
|
BindBySemantic,
|
|
BindByVariable
|
|
};
|
|
|
|
public interface IShaderParameter
|
|
{
|
|
ParameterBindType ParameterNameType { get; }
|
|
void ApplyValue(EffectVariable argVariable);
|
|
};
|
|
|
|
public interface IShaderParameterSet
|
|
{
|
|
bool IsPreconditionForFollowingShaders { get; set; }
|
|
|
|
void SetParameter(string argParameterName, IShaderParameter ar_Parameter_);
|
|
void SetParameter(string argParameterName, ITexture argParameter, ParameterBindType argParamNameType);
|
|
void SetParameter(string argParameterName, float argParameter, ParameterBindType argParamNameType);
|
|
void SetParameter(string argParameterName, Vector3 ar_Parameter_, ParameterBindType argParamNameType);
|
|
void SetParameter(string argParameterName, Vector4 ar_Parameter_, ParameterBindType argParamNameType);
|
|
void SetParameter(string argParameterName, Matrix argParameter, ParameterBindType argParamNameType);
|
|
void SetParameter(string argParameterName, bool argParameter, ParameterBindType argParamNameType);
|
|
void SetParameter(string argParameterName, Reference argParameter, ParameterBindType argParamNameType);
|
|
void RemoveParameter(string argParameterName);
|
|
};
|
|
}
|