/// <summary> /// Creates the 1D texture view from color array. /// </summary> /// <param name="device"></param> /// <param name="array">The array.</param> public static ShaderResourceViewProxy CreateViewFromColorArray(Device device, Color4[] array) { var proxy = new ShaderResourceViewProxy(device); proxy.CreateViewFromColorArray(array); return(proxy); }
/// <summary> /// Creates the 2D texture view from color array. /// </summary> /// <param name="device"></param> /// <param name="array">The array.</param> /// <param name="width">The width.</param> /// <param name="height">The height.</param> /// <param name="createSRV"></param> /// <param name="generateMipMaps"></param> public static ShaderResourceViewProxy CreateViewFromColorArray(Device device, Color4[] array, int width, int height, bool createSRV = true, bool generateMipMaps = true) { var proxy = new ShaderResourceViewProxy(device); proxy.CreateViewFromColorArray(array, width, height, createSRV, generateMipMaps); return(proxy); }
public void UpdateGradientMap() { RemoveAndDispose(ref transferMap); if (material.TransferMap != null) { transferMap = Collect(ShaderResourceViewProxy.CreateViewFromColorArray(EffectsManager.Device, material.TransferMap)); } WriteValue(VolumeParamsStruct.HasGradientMapX, material.TransferMap != null); }
protected override bool OnAttachBuffers(DeviceContextProxy context, ref int vertStartSlot) { if (base.OnAttachBuffers(context, ref vertStartSlot)) { if (colorChanged) { RemoveAndDispose(ref colorGradientResource); if (ColorGradients != null) { colorGradientResource = new ShaderResourceViewProxy(Device); colorGradientResource.CreateViewFromColorArray(ColorGradients.ToArray()); } colorChanged = false; } return(true); } else { return(false); } }