Unity Render Path Rendering paths_1_deferred Lighting delay illumination

Source: Internet
Author: User

Deferred Lighting delay IlluminationTime- lapse illumination is the rendering path with the highest fidelity illumination and shading. If you have a lot of real-time lighting, it's best to use delayed lighting. It requires a level of hardware support that is only available in Unity Pro and not supported on mobile devices.
delayed illumination is one of the most advanced rendering paths to enable light and shadow fidelity
    • There is no limit to the amount of light that can affect any object
    • The full use of light is evaluated per pixel, which means that all will interact correctly with the object in the normal way of mapping
    • All light can have an information cache
    • All the light can create shadows.
Advantages of delayed illumination:
    • The overhead of illumination is proportional to the light size of the screen, without worrying about the number of items that light shines, and a small amount of light equivalent to cheap spending
    • Uniformity, the illumination of all light is calculated by pixel as the calculated split unit. For example, there will not be a situation where the calculation performance crashes when the light is computed in a large-scale triangular case.
Disadvantages:
    • No real-time anti-aliasing support
    • Delayed illumination cannot handle translucent objects, nor can they be used on objects that are rendered before they are used
    • Limited illumination Mode support (Blinn-phong). All light is calculated in the same way that you cannot use a completely different light pattern on different objects.
    • No support for receiving shadow features and limited support for light matte culling
demand for delayed lighting:
    • Requires Unity Professional Edition
    • The display card supports shader Model 3.0 (or higher), deep texture rendering, and double-sided template buffering features. Many 2004 years later the graphics card is supported: such as GeForce FX or higher, Radeon X1300 or higher Intel 965/gma X3100 or higher
    • Currently not supported on mobile platforms.
Performance Considerations:
    • The overhead of real-time light in a delayed light is proportional to the number of pixel values illuminated by the light. Rather than depending on the complexity of the scene. Tiny point and spot light sources are very easy to render. Pixels illuminated by a point light source or a spot light source that is completely or partially obscured by a scene object are skipped by the GPU and are therefore much cheaper.
    • Of course, a light source with shadows is much more expensive than a light source without shadows. With delayed illumination, the light projector still needs to render one or more times for each shadow cast. Also, a shaded ray shader is much more expensive than a light shader that does not produce a shadow.
Implementation Details:
When delayed lighting is in effect, the rendering process that occurs in unity is as follows:
    • Basic rendering: Rendered objects produce a screen space buffer with depth, normals, and reflections
    • Illumination rendering: Uses the previous buffer to calculate the illumination. Result into another screen space cache
    • Final render: Object is rendered again. Take the calculated light and color textures together, then add ambient light and scatter light.
shaded objects that cannot use delayed lighting techniques are treated with a forward rendering path after the deferred light rendering is complete.
Base Pass Basic Rendering Phase
    • Basic rendering renders each object once. The view space normals and highlight intensities are rendered into a single ARGB32 rendering texture (normals in the RGB channel, highlight intensity in a channel). If the platform and hardware support to read the z-buffer by texture, then the depth will not be explicitly rendered. If the z-buffer cannot be accessed in a textured manner, the depth will be rendered using shader substitution techniques in additional rendering processing.
    • The result of the basic rendering is a Z-buffer filled with the contents of the screen and a rendered texture with normal and specular intensity.
Lighting Pass Illumination rendering phase
    • Light rendering calculates light based on depth, normals, and highlight intensity. Lighting is computed by the screen space and is therefore independent of screen complexity. The light buffer is a single ARGGB32 rendering texture, with the RGB channel of the texture having diffuse illumination information, with a single color-specific illumination in a channel. The illumination values are encoded in numerical order to produce a dynamically expanding range that can be achieved than the usual ARGB32 textures.
    • The lighting mode is fixed to Blinn-phong.
    • Point and Spotlight lights that cannot span adjacent planes are rendered as Z-buffered 3D shapes with an open test scene, which can be rendered very cheaply by partially and completely shielded point and spot lights. Parallel lights or point lights that span adjacent areas can be used as full-screen quads.
    • If a light source with a shadow is in effect, it will be well rendered during this process. Note that shadows are not free, and shadow projectors require overhead to render, while a more complex ray shader needs to be applied.
final Pass last render stage
    • The final rendering phase produces the last rendered image, and all objects are rendered again, where the shader mixes the light and texture generated in the previous step, as well as all spontaneous light illumination.
    • The illumination map is also applied during the final render stage. Close to the camera, use real-time lighting, and bake only indirect lighting.

Unity Render Path Rendering paths_1_deferred Lighting delay illumination

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.