DA3. Alpha Channel and Transparency¶
Statement¶
Conduct research using the University of the People library (LIRN), the Directory of Open Access Journals, and the Internet on the subject of the Alpha Channel and Transparency. In your initial post to your peers, describe the alpha channel and its role in making transparent images.
Answer¶
The view pipeline is a series of steps where a 3D scene goes through to be displayed on the screen; the steps of the pipeline include clipping, projection, window-to-viewport mapping, and handle issues such as hidden surfaces, lighting, shading, and blending. Rendering opaque objects is straightforward, as it only requires filling in the pixels with the object’s color based on the results of the depth test. However, rendering transparent objects requires additional steps to handle the transparency and blending of colors (Ilett, 2022).
Transparency is the ability to see through an object, and it is achieved by using the alpha channel in the RGBA color model. Transparency makes rendering more realistic (e.g. see through windows, reflection on water, etc.) but it makes rendering more complex as the degree of transparency needs to be stored and then applied on every pixel to blend its color with the objects behind it.
The alpha channel is a value between 0 and 1 that represents the portion of color that is blended with other colors (usually the background or the color behind the target). A value of 1 makes the object fully opaque, meaning 100% of the object color is mixed with 0% of the background color. While a value of 0 makes the object fully transparent, meaning the pixel is colored with 100% of the background color. Any value between 0 and 1 will mix (alpha * 100)% of the object color with (1 - alpha) * 100% of the background color (Elmqvist, Assarsson, & Tsigas, 2007).
The image below from (Elmqvist, Assarsson, & Tsigas, 2007) shows the effect of transparency (on the right) as opposed to opaque objects (on the left):
Transparency uncovering objects behind the closest surface |
---|
![]() |
There are two types of alpha channel: premultiplied alpha and straight alpha. In premultiplied alpha, the color of the object is multiplied by the alpha value before being stored in RGBA values, that is, the Red, Green, and Blue values are multiplied by the alpha value and then stored in the RGB channels. While in straight alpha, the color is stored as is, and the alpha value is stored separately, and when the object is rendered, the new colors are blended based on the alpha value (Serebrennikova, 2022).
To conclude, alpha channel stores the degree of transparency of every pixel, and it value is being respected during rendering; higher alpha values means more portion of the color in the front is blended (mixed) with less value of the colors behind it; hence, a value of 1 means no transparency, and a value of 0 means full transparency.
References¶
- Ilett, D. (2022). Transparency and Alpha. Apress EBooks, 273–320. https://doi.org/10.1007/978-1-4842-8652-4_8
- Niklas Elmqvist, Ulf Assarsson, & Philippas Tsigas. (2007). Employing Dynamic Transparency for 3D Occlusion Management: Design Issues and Evaluation. Lecture Notes in Computer Science, 532–545. https://doi.org/10.1007/978-3-540-74796-3_54
- Serebrennikova K. (2022). ActionVFX | What is an Alpha Channel? Actionvfx.com. https://www.actionvfx.com/blog/what-is-an-alpha-channel