Files
bluflame/aiwaz/Backup/Aiwaz.Contracts/IShaderParameterCollection.cs
2026-04-18 22:31:51 +02:00

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