Legacy Documentation: Version 5.1
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Graphics.Blit

Switch to Manual
public static function Blit(source: Texture, dest: RenderTexture): void;
public static function Blit(source: Texture, dest: RenderTexture, mat: Material, pass: int = -1): void;
public static function Blit(source: Texture, mat: Material, pass: int = -1): void;

Parameters

source Source texture.
dest Destination RenderTexture, or null to blit directly to screen.
mat Material to use. Material's shader could do some post-processing effect, for example.
pass If -1 (default), draws all passes in the material. Otherwise, draws given pass only.

Description

Copies source texture into destination render texture with a shader.

This is mostly used for implementing image effects.

Blit sets dest as the render target, sets source _MainTex property on the material, and draws a full-screen quad.

Note that if you want to use depth or stencil buffer that is part of the source (Render)texture, you'll have to do equivalent of Blit functionality manually - i.e. Graphics.SetRenderTarget with destination color buffer and source depth buffer, setup orthographic projection (GL.LoadOrtho), setup material pass (Material.SetPass) and draw a quad (GL.Begin).

See Also: Graphics.BlitMultiTap, image effects.

	// Copies aTexture to rTex and displays it in all cameras.

var aTexture : Texture; var rTex : RenderTexture;

function Start() { if(!aTexture || !rTex) Debug.LogError("A texture or a render texture are missing, assign them."); }

function Update () { Graphics.Blit (aTexture, rTex); }