public ColorStripeMaterial(ColorStripeMaterialCore core) : base(core) { DiffuseColor = core.DiffuseColor; ColorStripeSampler = core.ColorStripeSampler; ColorStripeX = core.ColorStripeX; ColorStripeXEnabled = core.ColorStripeXEnabled; ColorStripeY = core.ColorStripeY; ColorStripeYEnabled = core.ColorStripeYEnabled; }
/// <summary> /// /// </summary> /// <param name="manager"></param> /// <param name="material"></param> public ColorStripeMaterialVariables(IEffectsManager manager, ColorStripeMaterialCore material) { this.material = material; deviceResources = manager; needUpdate = true; material.PropertyChanged += Material_OnMaterialPropertyChanged; texStripeXSlot = texStripeYSlot = -1; samplerDiffuseSlot = -1; textureManager = manager.MaterialTextureManager; statePoolManager = manager.StateManager; CreateTextureViews(); CreateSamplers(); this.PropertyChanged += (s, e) => { OnInvalidateRenderer?.Invoke(this, EventArgs.Empty); }; }
/// <summary> /// /// </summary> /// <param name="manager"></param> /// <param name="technique"></param> /// <param name="material"></param> public ColorStripeMaterialVariables(IEffectsManager manager, IRenderTechnique technique, ColorStripeMaterialCore material) : base(manager, technique, DefaultMeshConstantBufferDesc) { this.material = material; deviceResources = manager; material.PropertyChanged += Material_OnMaterialPropertyChanged; texStripeXSlot = texStripeYSlot = -1; samplerDiffuseSlot = -1; textureManager = manager.MaterialTextureManager; statePoolManager = manager.StateManager; MaterialPass = technique[defaultShaderPassName]; UpdateMappings(MaterialPass); CreateTextureViews(); CreateSamplers(); }
/// <summary> /// /// </summary> /// <param name="manager"></param> /// <param name="technique"></param> /// <param name="materialCore"></param> public ColorStripeMaterialVariables(IEffectsManager manager, IRenderTechnique technique, ColorStripeMaterialCore materialCore) : base(manager, technique, DefaultMeshConstantBufferDesc, materialCore) { this.material = materialCore; deviceResources = manager; texStripeXSlot = texStripeYSlot = -1; samplerDiffuseSlot = -1; textureManager = manager.MaterialTextureManager; statePoolManager = manager.StateManager; MaterialPass = technique[defaultShaderPassName]; WireframePass = technique[wireframePassName]; ShadowPass = technique[shadowPassName]; UpdateMappings(MaterialPass); CreateTextureViews(); CreateSamplers(); }