protected override void OnDispose(bool disposeManagedResources) { ConstantBufferMapping.Dispose(); ShaderResourceViewMapping.Dispose(); UnorderedAccessViewMapping.Dispose(); SamplerMapping.Dispose(); base.OnDispose(disposeManagedResources); }
/// <summary> /// <see cref="ShaderBase.BindUAV(DeviceContext, string, UnorderedAccessView)"/> /// </summary> /// <param name="context"></param> /// <param name="name"></param> /// <param name="uav"></param> public override void BindUAV(DeviceContext context, string name, UnorderedAccessView uav) { int slot = UnorderedAccessViewMapping.TryGetBindSlot(name); if (slot < 0) { return; } context.ComputeShader.SetUnorderedAccessView(slot, uav); }