void UpdateCBuffer(ID3D11DeviceContext* context)
    {
        CBuffer.Data.MSAAMode = MSAAMode;
        CBuffer.Data.ResolveFilterType = ResolveFilterType;
        CBuffer.Data.ResolveFilterDiameter = ResolveFilterDiameter;
        CBuffer.Data.GaussianSigma = GaussianSigma;
        CBuffer.Data.CubicB = CubicB;
        CBuffer.Data.CubicC = CubicC;
        CBuffer.Data.UseStandardResolve = UseStandardResolve;
        CBuffer.Data.InverseLuminanceFiltering = InverseLuminanceFiltering;
        CBuffer.Data.UseExposureFiltering = UseExposureFiltering;
        CBuffer.Data.ExposureFilterOffset = ExposureFilterOffset;
        CBuffer.Data.UseGradientMipLevel = UseGradientMipLevel;
        CBuffer.Data.EnableTemporalAA = EnableTemporalAA;
        CBuffer.Data.TemporalAABlendFactor = TemporalAABlendFactor;
        CBuffer.Data.UseTemporalColorWeighting = UseTemporalColorWeighting;
        CBuffer.Data.NeighborhoodClampMode = NeighborhoodClampMode;
        CBuffer.Data.VarianceClipGamma = VarianceClipGamma;
        CBuffer.Data.LowFreqWeight = LowFreqWeight;
        CBuffer.Data.HiFreqWeight = HiFreqWeight;
        CBuffer.Data.SharpeningAmount = SharpeningAmount;
        CBuffer.Data.DilationMode = DilationMode;
        CBuffer.Data.MipBias = MipBias;
        CBuffer.Data.ReprojectionFilter = ReprojectionFilter;
        CBuffer.Data.UseStandardReprojection = UseStandardReprojection;
        CBuffer.Data.CurrentScene = CurrentScene;
        CBuffer.Data.LightDirection = LightDirection;
        CBuffer.Data.LightColor = LightColor;
        CBuffer.Data.EnableDirectLighting = EnableDirectLighting;
        CBuffer.Data.EnableAmbientLighting = EnableAmbientLighting;
        CBuffer.Data.RenderBackground = RenderBackground;
        CBuffer.Data.EnableShadows = EnableShadows;
        CBuffer.Data.EnableNormalMaps = EnableNormalMaps;
        CBuffer.Data.NormalMapIntensity = NormalMapIntensity;
        CBuffer.Data.DiffuseIntensity = DiffuseIntensity;
        CBuffer.Data.Roughness = Roughness;
        CBuffer.Data.SpecularIntensity = SpecularIntensity;
        CBuffer.Data.ModelOrientation = ModelOrientation;
        CBuffer.Data.ModelRotationSpeed = ModelRotationSpeed;
        CBuffer.Data.DoubleSyncInterval = DoubleSyncInterval;
        CBuffer.Data.ExposureScale = ExposureScale;
        CBuffer.Data.EnableZoom = EnableZoom;
        CBuffer.Data.BloomExposure = BloomExposure;
        CBuffer.Data.BloomMagnitude = BloomMagnitude;
        CBuffer.Data.BloomBlurSigma = BloomBlurSigma;
        CBuffer.Data.ManualExposure = ManualExposure;

        CBuffer.ApplyChanges(context);
        CBuffer.SetVS(context, 7);
        CBuffer.SetHS(context, 7);
        CBuffer.SetDS(context, 7);
        CBuffer.SetGS(context, 7);
        CBuffer.SetPS(context, 7);
        CBuffer.SetCS(context, 7);
    }
    void UpdateCBuffer(ID3D11DeviceContext* context)
    {
        CBuffer.Data.EnableSun = EnableSun;
        CBuffer.Data.SunAreaLightApproximation = SunAreaLightApproximation;
        CBuffer.Data.SunTintColor = SunTintColor;
        CBuffer.Data.SunIntensityScale = SunIntensityScale;
        CBuffer.Data.SunSize = SunSize;
        CBuffer.Data.SunDirType = SunDirType;
        CBuffer.Data.SunDirection = SunDirection;
        CBuffer.Data.SunAzimuth = SunAzimuth;
        CBuffer.Data.SunElevation = SunElevation;
        CBuffer.Data.MSAAMode = MSAAMode;
        CBuffer.Data.FilterSize = FilterSize;
        CBuffer.Data.EnableAlbedoMaps = EnableAlbedoMaps;
        CBuffer.Data.EnableNormalMaps = EnableNormalMaps;
        CBuffer.Data.NormalMapIntensity = NormalMapIntensity;
        CBuffer.Data.DiffuseIntensity = DiffuseIntensity;
        CBuffer.Data.Roughness = Roughness;
        CBuffer.Data.SpecularIntensity = SpecularIntensity;
        CBuffer.Data.NumParticles = NumParticles;
        CBuffer.Data.EmitRadius = EmitRadius;
        CBuffer.Data.EmitCenterX = EmitCenterX;
        CBuffer.Data.EmitCenterY = EmitCenterY;
        CBuffer.Data.EmitCenterZ = EmitCenterZ;
        CBuffer.Data.AbsorptionScale = AbsorptionScale;
        CBuffer.Data.EnableParticleAlbedoMap = EnableParticleAlbedoMap;
        CBuffer.Data.BillboardParticles = BillboardParticles;
        CBuffer.Data.RenderLowRes = RenderLowRes;
        CBuffer.Data.LowResRenderMode = LowResRenderMode;
        CBuffer.Data.ResolveSubPixelThreshold = ResolveSubPixelThreshold;
        CBuffer.Data.CompositeSubPixelThreshold = CompositeSubPixelThreshold;
        CBuffer.Data.NearestDepthThreshold = NearestDepthThreshold;
        CBuffer.Data.BloomExposure = BloomExposure;
        CBuffer.Data.BloomMagnitude = BloomMagnitude;
        CBuffer.Data.BloomBlurSigma = BloomBlurSigma;
        CBuffer.Data.ShowMSAAEdges = ShowMSAAEdges;

        CBuffer.ApplyChanges(context);
        CBuffer.SetVS(context, 7);
        CBuffer.SetHS(context, 7);
        CBuffer.SetDS(context, 7);
        CBuffer.SetGS(context, 7);
        CBuffer.SetPS(context, 7);
        CBuffer.SetCS(context, 7);
    }