Version: 2017.1 (switch to 2017.2b)
  • C#
  • JS

Script language

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


Suggest a change


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.


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.



Switch to Manual
public function DiscardContents(): void;
public void DiscardContents();
public function DiscardContents(discardColor: bool, discardDepth: bool): void;
public void DiscardContents(bool discardColor, bool discardDepth);


discardColor Should the colour buffer be discarded?
discardDepth Should the depth buffer be discarded?


Hint the GPU driver that the contents of the RenderTexture will not be used.

On some platforms, it can be good for performance if you indicate when the current contents of a RenderTexture aren't needed any more. This can save copying it from one kind of memory to another when the texture is reused. Xbox 360, XBox One and many mobile GPUs benefit from this.

This call is typically only meaningful when the given RenderTexture is currently an active render target. After this call, the contents of the RenderTexture are undefined, so the user should not attempt to access its contents before either clearing the RenderTexture or drawing into each pixel of it.

Both the colour buffer and depth buffer are discarded by default but either can be selected individually using the optional boolean parameters.