private void Render(DirectXResource input, DirectXDownloaderPlaneData plane, DeviceContext ctx) { using (var srv = input.GetShaderResourceView()) using (var rtv = plane.GpuTexture.GetRenderTargetView()) { plane.Pipeline.Render(ctx, rtv, srv); } }
private void Render(DirectXResource input, DirectXResource output, DirectXTransformerPlaneData plane, DeviceContext ctx) { using (var srv = input.GetShaderResourceView()) using (var rtv = new RenderTargetView(ctx.Device, output.Texture2D, new RenderTargetViewDescription { Format = plane.Format, Dimension = RenderTargetViewDimension.Texture2D })) { plane.Pipeline.Render(ctx, rtv, srv); } }
public virtual DirectXResource Render(DeviceContext ctx, DirectXResource source) { var target = Dx.Pool.Get("FilterStage", DirectXResource.Desc(source.Texture2D.Description.Width, source.Texture2D.Description.Height)); using var rtv = target.GetRenderTargetView(); using var srv = source.GetShaderResourceView(); Pipeline.SetPosition(DirectXPipelineConfig.FullRectangle, new Viewport(0, 0, source.Texture2D.Description.Width, source.Texture2D.Description.Height)); Render(ctx, rtv, srv, source.Texture2D.Description.Width, source.Texture2D.Description.Height); return(target); }