Facebook

Why Are Screen Space Reflections Important?

by Liam Cubicle Published April 2, 2024

Ever wondered about better and more accurate techniques to render reflections, particularly subtle reflections in your game scenes?

The Screen Space Reflection technique is one of the best choices. In this article, you will learn all you need to know about the Screen Space Reflection technique.

What is the Screen Space Reflection?

Screen Space Reflection (SSR) is a technique that involves calculating the current screen space to render realistic reflections.

This technique is significantly used in computer graphics, particularly video game development. Instead of using the entire scene geometry to calculate reflections, the screen space reflection technique bases its reflections on what is currently visible on the screen, i.e., the screen space. It achieves this by reusing existing information on the scene, rather than calculating entirely new reflections for each frame.

The SSR technique is used to create reflections on surfaces, particularly subtle reflections like on wet floors.

When to use SSR?

The Screen Space Reflection technique is an expensive one and should be used when significantly needed. Here are some of the valuable scenarios of using the SSR technique;

  • Water or wet surface reflection: SSR works well for rendering subtle reflections on water surfaces like rivers and ponds or wet floors. When correctly used, it accurately identifies where the reflections should be and simulates the reflections realistically, enhancing the realism of the scene.
  • Environments: SSR is also very good at rendering realistic reflections for indoor and outdoor environments. Indoor glass surface reflections and other reflective surfaces like walls and furniture can be simulated accurately. Outdoor reflections can also be simulated, enhancing the visual ambiance of scenes.
  • Dynamic scenes: SSR is geared towards rendering dynamic scenes in video game development. Its ability to quickly calculate reflections makes it well-suited for dynamic scenes.

How SSR works

The Screen Space Reflection technique works by first analyzing the current screen space being rendered, and then calculating a reflection ray based on the information gathered from the current screen space. This reflection ray is now traced into the scene, identifying objects and surfaces that would be reflected. Once the objects and surfaces are identified, the reflection ray is blended with the surface or object, creating realistic reflections.

As mentioned earlier, the SSR technique can be computationally expensive, so it needs to be correctly used and well-optimized to get great results. Also, it is not advisable to use it on mobile devices.

Screen Space Reflection (SSR) in Unity

Unity supports the SSR technique by including it as one of the effects in the post-processing stack. It is only available in the default rendering path. Check here to enable the default rendering path for your project.

Therefore, to use the SSR technique in Unity, you should have the post-processing package installed in your camera with the SSR effect included. Modify the SSR properties (blend type, reflection quality, max distance, iteration count, step size, width modifier, reflection blur, reflect backfaces, reflection multiplier, fade distance, fresnel fade, fresnel fade power, and intensity) to achieve your desired taste.

Using the SSR method in Unity gives you more edge and better results over other methods like Cubemaps and Reflection probes. The SSR technique gives more accurate and realistic reflections.

Conclusion

Overall, the Screen Space Reflection technique is a widely used technique for rendering real-time and realistic reflections, enhancing the realism and visual ambiance of your game scenes. Visit the Unity Docs for more information.

Free download: Indie Game Marketing Checklist

Download now

Category

graphics and shading

Don't forget to share this post!

Popular assets for Unity

See all assets ->
    Cutting-edge volumetric fog and volumetric lighting with support for transparent materials.
    Volumetric clouds, day night cycles, dynamic skies, global lighting, weather effects, and planets and moons.
    A lightweight procedural skybox ideal for semi-stylized projects.
    Image-based Outlines for 2D and 3D games with variable line weight, color, and displacement options.
    Per-pixel gaussian blur on your entire screen, part of the UI, or in-scene objects.
    Drag-and-drop ready-to-use ambient, impact, and spell particle effects.

Free Indie Game Marketing Checklist

Learn how to make your game successful with this handy checklist.

Download for free