﻿<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=%E5%88%A9%E7%94%A8%E8%80%85%3ASobotka%2FAlpha%2FSo_WTF_is_Alpha</id>
	<title>利用者:Sobotka/Alpha/So WTF is Alpha - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=%E5%88%A9%E7%94%A8%E8%80%85%3ASobotka%2FAlpha%2FSo_WTF_is_Alpha"/>
	<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Sobotka/Alpha/So_WTF_is_Alpha&amp;action=history"/>
	<updated>2026-04-29T00:37:45Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Sobotka/Alpha/So_WTF_is_Alpha&amp;diff=138875&amp;oldid=prev</id>
		<title>Yamyam: 1版 をインポートしました</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Sobotka/Alpha/So_WTF_is_Alpha&amp;diff=138875&amp;oldid=prev"/>
		<updated>2018-06-28T20:51:25Z</updated>

		<summary type="html">&lt;p&gt;1版 をインポートしました&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;2018年6月28日 (木) 20:51時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ja&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(相違点なし)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Yamyam</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Sobotka/Alpha/So_WTF_is_Alpha&amp;diff=138874&amp;oldid=prev</id>
		<title>wiki&gt;Sobotka: moved User:Sobotka/So WTF is Alpha to User:Sobotka/Alpha/So WTF is Alpha</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Sobotka/Alpha/So_WTF_is_Alpha&amp;diff=138874&amp;oldid=prev"/>
		<updated>2016-10-01T15:43:07Z</updated>

		<summary type="html">&lt;p&gt;moved &lt;a href=&quot;/%E5%88%A9%E7%94%A8%E8%80%85:Sobotka/So_WTF_is_Alpha&quot; class=&quot;mw-redirect&quot; title=&quot;利用者:Sobotka/So WTF is Alpha&quot;&gt;User:Sobotka/So WTF is Alpha&lt;/a&gt; to &lt;a href=&quot;/%E5%88%A9%E7%94%A8%E8%80%85:Sobotka/Alpha/So_WTF_is_Alpha&quot; title=&quot;利用者:Sobotka/Alpha/So WTF is Alpha&quot;&gt;User:Sobotka/Alpha/So WTF is Alpha&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= WORK IN PROGRESS =&lt;br /&gt;
= So WTF is alpha? =&lt;br /&gt;
Alpha is simple right? It's a measure of opacity. Move on. Nothing to see here. Right?&lt;br /&gt;
&lt;br /&gt;
This page is an effort to demystify the alpha channel and hopefully shed some light on cares an artist should take when dealing with it.&lt;br /&gt;
&lt;br /&gt;
There is an adage that applies to computer color that equally applies to alpha. &amp;quot;If you think you understand alpha channels, then you probably do not understand alpha channels.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
= Q: Is alpha a measurement of opacity? =&lt;br /&gt;
While this may seem like the simplest question, it does in fact have a buried bit of complexity. The short answer is &amp;quot;No.&amp;quot; The reason for this somewhat radical answer will hopefully be more clear by the time you finish reading this document.&lt;br /&gt;
&lt;br /&gt;
= Q: All of these terms! Arrrgh! Why do people make this so complex? =&lt;br /&gt;
Part of the issue with alpha is that the traditional terminology has unfortunately confused the issue. When one says &amp;quot;multiply&amp;quot; in a statement, it immediately implies a certain reversibility and a focus on the mathematical side of things.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, the math aspect fails to adequately express the issues around alpha, and as such, the terms muddy the waters further.&lt;br /&gt;
&lt;br /&gt;
= Q: What is alpha? =&lt;br /&gt;
The alpha channel was invented in 1977 by Alvy Ray Smith and Ed Catmull.&lt;br /&gt;
&lt;br /&gt;
{{Note|Alvy Ray Smith on Alpha|There are two ways to think of the alpha of a pixel. As is usual in computer graphics, one interpretation comes from the geometry half of the world and the other from the imaging half. Geometers think of “pixels” as geometrical areas intersected by geometrical objects. For them, alpha is the percentage coverage of a pixel by a geometrical object. Imagers think of pixels as point samples of a continuum. For them, alpha is the opacity at each sample. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the end, it is the imaging model that dominates, because a geometric picture must be reduced to point samples to display -- it must be rendered. Thus, during rendering coverage is always converted to opacity, and all geometry is lost. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt; ''Imaging Compositing Fundamentals'' https://www.cs.princeton.edu/courses/archive/fall00/cs426/papers/smith95a.pdf}}&lt;br /&gt;
&lt;br /&gt;
= Q: What are some common terms around alpha? What do they mean? =&lt;br /&gt;
Charles Poynton once [http://www.poynton.com/papers/YUV_and_luminance_harmful.html issued a plea for accurate terminology]. This plea is echoed here.&lt;br /&gt;
&lt;br /&gt;
It is the firm belief of the author that using mathematical terms to discuss alpha buries the issues for many artists. To this end, the following list of terms are outlined for clarity.&lt;br /&gt;
== Associated Alpha ==&lt;br /&gt;
The form of alpha where the RGB values and alpha values are mathematically combined ''and'' considered differently during the combination step. [http://www.alvyray.com/Awards/AwardsAcademy96.htm Alvy Ray Smith and Ed Catmull] originally labeled this form of alpha as ''premultiplied'' alpha.&lt;br /&gt;
&lt;br /&gt;
However, while a portion of this approach originally was considered for efficiency purposes, it also represents a critical conceptual departure to be discussed later.&lt;br /&gt;
&lt;br /&gt;
== Unassociated Alpha ==&lt;br /&gt;
The form of alpha where the RGB values and the alpha values are [i]not[/i] mathematically combined, but rather considered as separate entities. Also called key or straight alpha.&lt;br /&gt;
&lt;br /&gt;
== Occlusion ==&lt;br /&gt;
The amount an object prevents light from transmitting through its respective region. Similar terms include opacity and transparency.&lt;br /&gt;
&lt;br /&gt;
== Emission ==&lt;br /&gt;
The amount of light that is transmitted through a given region.&lt;br /&gt;
&lt;br /&gt;
= Q: How do we composite an image over top of another image? =&lt;br /&gt;
In order to discuss this, some extremely simple math is required. The first thing to notice however, is that there are [i]two[/i] methods to achieve this. The reason is that the alpha types listed above are in fact [i]different[/i] and have different implications.&lt;br /&gt;
&lt;br /&gt;
For clarity and to highlight the key differences between the two approaches, will keep the procedures as simple as possible; the background is considered fully opaque.&lt;br /&gt;
&lt;br /&gt;
{{Note|Alpha and Light|It can be helpful to view a discussion of alpha as synonymous to a discussion of light. Light is an additive creature and it intrinsically geometric. Ratios play an important role in how to properly deal with light, as opposed to simple addition and subtraction. Think of it as scaling light.}}&lt;br /&gt;
== Q: How do we composite an unassociated alpha image? ==&lt;br /&gt;
&amp;lt;SOURCE lang=&amp;quot;bash&amp;quot;&amp;gt;(Foreground.RGB * Foreground.Alpha) + ((1 - Foreground.Alpha) * Background.RGB)&amp;lt;/SOURCE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If we were to try and verbalize what is happening in the unassociated alpha operation above, it might read as a series of logical steps:&lt;br /&gt;
# First we must scale the Foreground layer's RGB value by its respective percentage alpha.&lt;br /&gt;
# Then we prepare the Background by knocking down the RGB values where the image will land. To do this, we take the remainder or inverse of the Foreground image's alpha and scale the Background's RGB values by the amount.&lt;br /&gt;
# Finally, we add the scaled Foreground image's RGB values to the knocked out hole we have created in the Background.&lt;br /&gt;
&lt;br /&gt;
== Q: How do we composite an associated alpha image? ==&lt;br /&gt;
&amp;lt;SOURCE lang=&amp;quot;bash&amp;quot;&amp;gt;Foreground.RGB + ((1 - Foreground.Alpha) * Background.RGB)&amp;lt;/SOURCE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If we were to try and verbalize what is happening in the associated alpha operation above, it might read as a series of logical steps:&lt;br /&gt;
# We prepare the Background by knocking down the RGB values where the image will land if there is alpha / occlusion. To do this, we take the remainder or inverse of the Foreground image's alpha and scale the Background's RGB values by the amount.&lt;br /&gt;
# We then finish the operation by adding the Foreground's RGB values to the entire image.&lt;br /&gt;
&lt;br /&gt;
== Q: OK. So what? ==&lt;br /&gt;
&lt;br /&gt;
It should be noted that a key part in this discussion is that ''an alpha format indicates what alpha operation to use, not some mathematical detail about the data''.&lt;br /&gt;
&lt;br /&gt;
This leads to several cases where the two formats are radically different, and where one format and only one format is capable of representing certain physical, real world representations.&lt;br /&gt;
&lt;br /&gt;
== Q: What are the differences? ==&lt;br /&gt;
&lt;br /&gt;
First instance is a real-world glow, emission, or halation. In associated alpha, we can express an emissive and non-occluding or partially occluding value simply by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;SOURCE lang=&amp;quot;bash&amp;quot;&amp;gt; RGBA = {12.8, 11.2, 0.3, 0} &amp;lt;/SOURCE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the above, the value would amount to a basic add once the correct compositing operation was chosen.{{Note|Add Image Here Please|Add Image Here Please}}&lt;br /&gt;
&lt;br /&gt;
The unassociated alpha image however, can not represent semi and non-occluding pixels that emit light. It is fundamentally impossible.&lt;br /&gt;
&lt;br /&gt;
== Q: Are there other differences? ==&lt;br /&gt;
&lt;br /&gt;
In an associated alpha images, the four channels can be treated equally, whereas in an unassociated alpha image they cannot.&lt;br /&gt;
&lt;br /&gt;
Consider a slightly blurred blue cube overlapped by a slightly blurred red cube against a fully unoccluded background. {{Note|Add Image Here Please|Add Image Here Please}}&lt;br /&gt;
&lt;br /&gt;
In an associated alpha image, the four channels can be blurred as a whole, resulting in a perfectly acceptable image.{{Note|Add Image Here Please|Add Image Here Please}}&lt;br /&gt;
&lt;br /&gt;
In an unassociated alpha image, this is impossible and the image must be manually dealt with. {{Note|Add Image Here Please|Add Image Here Please}}&lt;/div&gt;</summary>
		<author><name>wiki&gt;Sobotka</name></author>
		
	</entry>
</feed>