Bright light sources and regions of bright light are often difficult to convey to the viewer as a real-world occurrence. It is primarily because the intensity range of a monitor is limited. A way to differentiate bright light sources on the monitor is by making them glow; which makes them look like bleeding around the light source. This gives the viewer an illusion that these light sources or bright regions are intensely bright. This very phenomenon gave birth to the Bloom effect in the field of imaging and computer graphics.
The light bleeding (glow effect) is in general achieved with the post-processing effect called Bloom. Bloom (glow) is a computer graphics effect that is used to reproduce an image to a real-world camera insight imaging.
It is used widely in video games, demos, and high dynamic range rendering (HDRR). The effect produces fringes of light which extends from the borders of bright areas in an image. This contributes to the illusion of an extremely bright light falling on the camera or eye capturing the scene.
HISTORY – BLOOM EFFECT
The effect was first used by the Dreamcast titled “Skies of Arcadia”, developed by Sega’s Overworks studio.
The bloom effect became widely used in video games after an article on its use was published by the authors of Tron in 2004. The effect can be understood by a simple example. When a picture is taken indoors, the brightness of objects situated outdoor as seen through a window maybe 70 or 80 times brighter. The objects inside the room appear to be dull. The outdoor objects appear to be brighter. This can be overcome if exposure levels are set for objects inside the room. The bright image of the windows will bleed past the window frames.
Current generation video gaming systems are able to show 3D graphics using floating-point frame buffers. They use this in order to produce high dynamic range (HDR) images. High Dynamic Range is a technique in Photography to capture a changing range of Brightness. It can capture between the lightest and darkest areas of a scene or an object.
The built-in bloom effect has the following characteristics:
- Bloom Intensity: The intensity of the effect
- Bloom Threshold: Only pixels brighter than the threshold will be processed which ranges from 0 to 1
- Blur Amount: Controls the amount of blurring
FUNDAMENTALS OF BLOOM
The light starts bleeding when it comes from a bright source towards an area that has comparatively low brightness. This creates a glow effect. It is achieved with a post-processing effect called Bloom. Bloom gives all brightly lit regions of a scene a bright glow like effect. Bloom gives noticeable visual qualities about the brightness of objects. When done in the correct manner a bloom significantly boosts the lighting of a scene. Bloom effect also allows for a large range of dramatic effects.
Bloom is known to have worked best in a combination with HDR rendering. A common misconception among the people is that HDR is the same as Bloom. Many people use these terms interchangeably. They are however completely different and their techniques are used for different purposes. It is possible to use HDR without the Bloom effect. It is simply that HDR makes Bloom more effective in a way to implement it.
To cast a Bloom effect, we take a lit scene. Then we extract both the scene’s HDR color buffer. An image of the scene with only the bright region is visible and the extracted brightness image is then blurred. The resulting image is then added on top of the original HDR scene image to get the desired result.
THE GAUSSIAN BLUR
A Gaussian blur is based on the Gaussian curve. It is basically a curve that is described as bell-shaped. The curve gives high values close to its center that gradually wear off as we move farther away. The Gaussian curve has a larger area close to its center. Using the center values as weights, we can blur an image. This gives more natural results as the samples close by having a higher precision.
To establish a Gaussian blur filter, we require a 2-dimensional box of weights that can be obtained from a 2D Gaussian curve equation. There is still a problem with this approach as it quickly becomes cumbersome on performance. The Gaussian equation has a very sharp property. It allows us to separate the 2-dimensional equation into two smaller 1-dimensional equations. Among the 2 smaller equations, one describes the horizontal weights and the other describes the vertical weights.
We will need to first do a “horizontal blur” with the horizontal weights on the scene texture. Then on the resulting texture scene, we will do a vertical blur. Due to this property, the results that we receive are exactly the same. This could be time-saving for us but it requires an incredible amount of performance.
Bloom is an effect that messes up an image. It makes one pixel’s color mix into adjacent pixels. It’s the same as blurring an image but purely based on brightness. This is a good way by which we could communicate over bright colors by blurring. It is somewhat similar to how light can diffuse inside our eyes and can become noticeable in case of high brightness. Still, it is mostly a non-realistic effect.
CONCLUSION – BLOOM EFFECT
Many people dislike the bloom effect because it messes up the crisp images. The effect makes things appear to glow very unrealistically. But this is not an inherent fault of the bloom. It is simply how it appears when it is used a lot. If any person or game is aiming for realism, it is recommended to use the bloom effect in moderation. Bloom can also be used in an artistic way for non-realistic effects. The bloom effect has many practical implications in the field of technology, media, and gaming.