using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; namespace Kav { public class DeferredPBR_AmbientLightEffect : Effect { EffectParameter gPositionParam; EffectParameter gAlbedoParam; EffectParameter ambientColorParam; public Texture2D GPosition { get; set; } public Texture2D GAlbedo { get; set; } public Vector3 AmbientColor { get; set; } public DeferredPBR_AmbientLightEffect(GraphicsDevice graphicsDevice) : base(graphicsDevice, Resources.DeferredPBR_AmbientLightEffect) { CacheEffectParameters(); } protected override void OnApply() { gPositionParam.SetValue(GPosition); gAlbedoParam.SetValue(GAlbedo); ambientColorParam.SetValue(AmbientColor); } void CacheEffectParameters() { gPositionParam = Parameters["gPosition"]; gAlbedoParam = Parameters["gAlbedo"]; ambientColorParam = Parameters["AmbientLightColor"]; } } }