The next technique is to optimize the particle system, which was introduced by NVIDIA, GPU Gems 3. The first step in order to achieve the goal is to render particles into
RenderTexture or, in other words, into another render target with smaller size than screen. The second step in this idea is to blend the particles back into screen. First, we need depth buffer. When we render into another render target, we need depth buffer for its z-testing. In the following line of code, you can register in the
Start callbacks just as examples:
this.camera.depthTextureMode = DepthTextureMode.depth;
Let's consider following code for high-speed, off-screen particles:
// create the off-screen particles textureRenderTexture yourParticlesRenderTexture = RenderTexture.GetTemporary( Screen.width...