Version: 2019.2
LanguageEnglish
  • C#

CommandBuffer.Blit

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

public void Blit(Texture source, Rendering.RenderTargetIdentifier dest);
public void Blit(Texture source, Rendering.RenderTargetIdentifier dest, Material mat);
public void Blit(Texture source, Rendering.RenderTargetIdentifier dest, Material mat, int pass);
public void Blit(Texture source, Rendering.RenderTargetIdentifier dest, Vector2 scale, Vector2 offset);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, Material mat, int pass);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, int sourceDepthSlice, int destDepthSlice);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, Vector2 scale, Vector2 offset, int sourceDepthSlice, int destDepthSlice);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, Material mat, int pass, int destDepthSlice);

Parameters

sourceSource texture or render target to blit from.
destDestination to blit into.
matMaterial to use.
passShader pass to use (default is -1, meaning "all passes").
scaleScale applied to the source texture coordinate.
offsetOffset applied to the source texture coordinate.
sourceDepthSliceThe texture array source slice to perform the blit from.
destDepthSliceThe texture array destination slice to perform the blit to.

Description

Add a "blit into a render texture" command.

This is similar to Graphics.Blit - it is mostly for copying from one (render)texture into another, potentially using a custom shader.

Source texture or render target will be passed to the material as "_MainTex" property.

Render texture to use can be indicated in several ways: a RenderTexture object, a temporary render texture created with GetTemporaryRT, or one of built-in temporary textures (BuiltinRenderTextureType). All that is expressed by a RenderTargetIdentifier struct, which has implicit conversion operators to save on typing.

Note that Blit changes the currently active render target. After Blit executes, dest becomes the active render target.

Often the previous content of the Blit dest does not need to be preserved. In this case, it is recommended to activate the dest render target explicitly with the appropriate load and store actions using SetRenderTarget. The Blit dest should then be set to BuiltinRenderTextureType.CurrentActive.

See Also: GetTemporaryRT, RenderTargetIdentifier.