Knowledge (XXG)

Alpha compositing

Source đź“ť

1005:, a pixel value of (0, 0.7, 0, 0.5) implies a pixel that has 70% of the maximum green intensity and 50% opacity. If the color were fully green, its RGBA would be (0, 1, 0, 0.5). However, if this pixel uses premultiplied alpha, all of the RGB values (0, 0.7, 0) are multiplied, or scaled for occlusion, by the alpha value 0.5, which is appended to yield (0, 0.35, 0, 0.5). In this case, the 0.35 value for the G channel actually indicates 70% green emission intensity (with 50% occlusion). A pure green emission would be encoded as (0, 0.5, 0, 0.5). Knowing whether a file uses straight or premultiplied alpha is essential to correctly process or composite it, as a different calculation is required. 969:. Ordinary interpolation without premultiplied alpha leads to RGB information leaking out of fully transparent (A=0) regions, even though this RGB information is ideally invisible. When interpolating or filtering images with abrupt borders between transparent and opaque regions, this can result in borders of colors that were not visible in the original image. Errors also occur in areas of semitransparency because the RGB components are not correctly weighted, giving incorrectly high weighting to the color of the more transparent (lower alpha) pixels. 339: 31: 573: 1309: 1301: 984:
is removed. In practice, this is not usually noticeable because during typical composition operations, such as OVER, the influence of the low-precision color information in low-alpha areas on the final output image (after composition) is correspondingly reduced. This loss of precision also makes premultiplied images easier to
988:
using certain compression schemes, as they do not record the color variations hidden inside transparent regions, and can allocate fewer bits to encode low-alpha areas. The same “limitations” of lower quantisation bit depths such as 8 bit per channel are also present in imagery without alpha, and this
1039:
generally does not support this channel; however, in different formats such as 32-bit (888–8) or 16-bit (444–4) it is possible to save the alpha channel, although not all systems or programs are able to read it: it is exploited mainly in some video games or particular applications; specific programs
983:
One disadvantage of premultiplied alpha is that it can reduce the available relative precision in the RGB values when using integer or fixed-point representation for the color components. This may cause a noticeable loss of quality if the color information is later brightened or if the alpha channel
2129:
By switching to pre-multiplied blend mode for all particle effects, and entire scene can be done with one draw call (assuming atlasing/2D array for the textures)... Another neat trick with pre-multiplied alpha is that if you have overlapping textures that are in known positions, you can pre-process
979:
Another advantage of premultiplied alpha is performance; in certain situations, it can reduce the number of multiplication operations (e.g. if the image is used many times during later compositing). The Porter–Duff operations have a simple form only in premultiplied alpha. Some rendering
354: 1552: 1028:
supports alpha channels, but is considered to be inefficient when it comes to file size. Support for alpha channels is present in some video codecs, such as Animation and Apple ProRes 4444 of the QuickTime format, or in the Techsmith multi-format codec.
95:
for each element in addition to its color. This matte layer contains the coverage information—the shape of the geometry being drawn—making it possible to distinguish between parts of the image where something was drawn and parts that are empty.
1670: 1404:
Accordingly, computer programs that deal with such images must decode the RGB values into a linear space (by undoing the gamma-compression), blend the linear light intensities, and re-apply the gamma compression to the result:
1726:, for instance, requires a separate transparency channel for each RGB channel to model the red, green and blue transparency separately. More alpha channels can be added for accurate spectral color filtration applications. 568:{\displaystyle {\begin{aligned}\alpha _{o}&={\phantom {~C_{a}}}\alpha _{a}+{\phantom {C_{b}}}\alpha _{b}(1-\alpha _{a})\\C_{o}&={\frac {C_{a}\alpha _{a}+C_{b}\alpha _{b}(1-\alpha _{a})}{\alpha _{o}}}\end{aligned}}} 949: 1413: 1376: 359: 873: 120: 976:(e.g. flame and glitter effects) to be encoded within the same image. This is represented by an RGBA triplet that express emission with no occlusion, such as (0.4, 0.3, 0.2, 0.0). 195: 659:
stand for the color components of the pixels in the result of the "over", image A, and image B respectively, applied to each color channel (red/green/blue) individually, whereas
738: 711: 684: 1399: 775:
If an alpha channel is used in an image, there are two common representations that are available: straight (unassociated) alpha and premultiplied (associated) alpha.
235: 215: 657: 630: 603: 1565: 1691:
do not permit the smooth blending of the superimposed image pixels with those of the background (only whole image pixels or whole background pixels allowed).
2097: 2564: 217:(alpha) to control the amount of interpolation between, in this case, two images A and B". That is, when compositing image A atop image B, the value of 1559:
When combined with premultiplied alpha, pre-multiplication is done in linear space, prior to gamma compression. This results in the following formula:
1710: 2990: 2953: 2926: 2244: 2969: 2573: 1547:{\displaystyle C_{o}=\left({\frac {C_{a}^{\gamma }\alpha _{a}+C_{b}^{\gamma }\alpha _{b}(1-\alpha _{a})}{\alpha _{o}}}\right)^{1/\gamma }} 879: 2693: 1328: 1318:
The RGB values of typical digital images do not directly correspond to the physical light intensities, but are rather compressed by a
1971: 1957: 1893: 334:) from a consideration of choices in blending the colors of two pixels when their coverage is, conceptually, overlaid orthogonally: 2532: 2194: 2557: 1996: 2816: 2617: 2363: 1730: 783:, the RGB components represent the color of the object or pixel, disregarding its opacity. This is the method implied by the 2941: 2931: 2821: 2640: 254: 245:
In a 2D image a color combination is stored for each picture element (pixel), often a combination of red, green and blue (
2936: 2801: 2741: 2039: 1090: 1709:
and AT-Vista/NU-Vista display adapters' high color graphic mode. This mode devotes 5 bits for every primary RGB color (
1025: 803: 99:
Although the most basic operation of combining two images is to put one over the other, there are many operations, or
2089: 2729: 2550: 2392: 966: 75: 2465: 1777: 1017: 794:, the RGB components represent the emission of the object or pixel, and the alpha represents the occlusion. The 2527: 1083: 1021: 972:
Premultiplied alpha may also be used to allow regions of regular alpha blending (e.g. smoke) and regions with
38:
image with an alpha channel that falls off to zero at its base, where it is blended with the background color.
1008:
Emission with no occlusion cannot be represented in straight alpha. No conversion is available in this case.
980:
pipelines expose a "straight alpha" API surface, but converts them into premultiplied alpha for performance.
156: 2948: 2898: 2863: 2841: 2836: 1869: 1792: 1136: 748: 55: 2318: 257:
and the color in the pixel beneath will show through. A value of 1 means that the pixel is fully opaque.
2791: 2770: 2714: 2158:
Win2D uses straight alpha in its API surface, but premultiplied alpha for internal rendering operations.
1942:
Proceedings of the 11th annual conference on Computer graphics and interactive techniques - SIGGRAPH '84
1926: 136: 89:
In order to combine the picture elements of the images correctly, it is necessary to keep an associated
2274: 2142: 1862:
Proceedings of the 8th annual conference on Computer graphics and interactive techniques - SIGGRAPH '81
763:. The two use only the alpha channel of the second image and ignore the color components. In addition, 260:
With the existence of an alpha channel, it is possible to express compositing image operations using a
1675:
Note that the alpha channel may or may not undergo gamma-correction, even when the color channels do.
2674: 2660: 2604: 2068: 1102: 63: 1874: 54:
is the process of combining one image with a background to create the appearance of partial or full
2806: 2734: 2622: 2252: 1797: 1762: 1684: 2868: 2856: 2703: 2698: 2650: 2450: 1963: 1899: 716: 689: 662: 303: 151: 91: 2415: 1381:
This transformation better utilizes the limited number of bits in the encoded image by choosing
2918: 2811: 2796: 1953: 1889: 1865: 1856: 1787: 1747: 1702: 961:
The most significant advantage of premultiplied alpha is that it allows for correct blending,
249:). When alpha compositing is in use, each pixel has an additional numeric value stored in its 43: 1665:{\displaystyle C_{o}=\left(C_{a}^{\gamma }+C_{b}^{\gamma }(1-\alpha _{a})\right)^{1/\gamma }} 1384: 220: 200: 2903: 2893: 2775: 2763: 1945: 1879: 1782: 1767: 1688: 1319: 1135:
While VP8/VP9 is widely supported with modern browsers, AV1 still has limited support. Only
985: 35: 635: 608: 581: 2724: 2589: 2581: 2296: 1934: 246: 59: 1827: 1694:
A similar effect can be achieved with a 1-bit alpha channel, as found in the 16-bit RGBA
2873: 2522: 2364:"Digital Audio Broadcasting (DAB); MOT SlideShow; User Application (pdf) Specification" 1807: 1699: 1036: 112: 2220: 2198: 2984: 2878: 2752: 2682: 1723: 962: 760: 132: 2007: 1967: 2883: 2846: 2831: 2826: 2746: 2687: 1903: 1066: 79: 2479: 2851: 2719: 2655: 2077:
However, something interesting happens when we generate the next mipmap level...
1757: 1033: 973: 338: 128: 100: 67: 30: 1719:
can be used to simulate partial occlusion where only 1-bit alpha is available.
253:, with a value ranging from 0 to 1. A value of 0 means that the pixel is fully 2440: 1802: 1772: 1695: 348:
operator can be accomplished by applying the following formula to each pixel:
116: 83: 2498: 2170: 2047: 17: 2120: 1949: 1884: 2709: 1930: 1752: 272:, the most common compositing operation is to combine the images so that 140: 2523:
Compositing Digital Images - Thomas Porter and Tom Duff (Original Paper)
2388: 1308: 2758: 2537: 2445: 1272: 1144: 1944:. Vol. 18. New York City, New York: ACM Press. pp. 253–259. 2888: 2645: 2533:
Understand Compositing and Color extensions in SVG 1.2 in 30 minutes!
2480:"Gamma Correction vs. Premultiplied Pixels – Søren Sandmann Pedersen" 2340:"AV1 video format | Can I use... Support tables for HTML5, CSS3, etc" 1716: 62:(pixels) in separate passes or layers and then combine the resulting 2542: 1300: 150:
is explained by Smith as follows: "We called it that because of the
1857:"Merging and transformation of raster images for cartoon animation" 1722:
For some applications, a single alpha channel is not sufficient: a
2908: 2594: 1706: 1401:
that better matches the non-linear human perception of luminance.
1307: 1299: 1111: 1016:
The most popular image formats that support the alpha channel are
1002: 944:{\displaystyle \alpha _{o}=\alpha _{a}+\alpha _{b}(1-\alpha _{a})} 29: 2632: 1371:{\displaystyle C_{\text{encoded}}=C_{\text{linear}}^{1/\gamma }} 1208: 1186: 1118: 71: 2546: 2416:"JPEG XL decoding support (image/jxl) in blink (tracking bug)" 2121:"To close to draw call (presentation on Pre-multiplied alpha)" 1250: 1229: 1165: 1864:. Vol. 15. New York City, New York: ACM Press. pp.  143:
introduced premultiplied alpha using a geometrical approach.
82:. Alpha blending is also used in 2D computer graphics to put 747:
operator is, in effect, the normal painting operation (see
2339: 237:
in the formula is taken directly from A's alpha channel.
1304:
Alpha blending, not taking into account gamma correction
2221:"List of Video/Image Formats Supporting Alpha Channels" 1411: 1040:
have also been created for the creation of these BMPs.
2090:"TomF's Tech Blog - It's only pretending to be a wiki" 121:
New York Institute of Technology Computer Graphics Lab
1568: 1416: 1387: 1331: 882: 806: 719: 692: 665: 638: 611: 584: 357: 223: 203: 159: 2094:
TomF's Tech Blog - It's only pretending to be a wiki
1245:
Browsers generally do not support GIF alpha layers.
294:, Porter and Duff defined the compositing operators 280:
appears in the background. This can be expressed as
2962: 2917: 2784: 2673: 2631: 2603: 2580: 1855: 1664: 1546: 1393: 1370: 943: 867: 759:operators are the alpha compositing equivalent of 732: 705: 678: 651: 624: 597: 567: 229: 209: 189: 111:The concept of an alpha channel was introduced by 2499:"Weighted Blended Order-Independent Transparency" 997:Assuming that the pixel color is expressed using 868:{\displaystyle C_{o}=C_{a}+C_{b}(1-\alpha _{a})} 1713:) plus a remaining bit as the "alpha channel". 740:are the alpha values of the respective pixels. 2391:. World Wide Web Consortium. 14 January 2003. 2034: 2032: 2030: 2028: 2026: 2024: 2022: 2020: 1997:"Alpha and the History of Digital Compositing" 2558: 123:. Bruce A. Wallace derived the same straight 8: 2297:"Current Status of H.265 (as at July 2008)" 1737:operator with a commutative approximation. 1139:-based browsers will display alpha layers. 2628: 2565: 2551: 2543: 2466:"What every coder should know about gamma" 1042: 1883: 1873: 1849: 1847: 1652: 1648: 1634: 1615: 1610: 1597: 1592: 1573: 1567: 1534: 1530: 1518: 1504: 1485: 1475: 1470: 1457: 1447: 1442: 1435: 1421: 1415: 1386: 1358: 1354: 1349: 1336: 1330: 932: 913: 900: 887: 881: 856: 837: 824: 811: 805: 724: 718: 697: 691: 670: 664: 643: 637: 616: 610: 589: 583: 553: 539: 520: 510: 497: 487: 480: 467: 450: 431: 418: 412: 411: 402: 389: 380: 379: 366: 358: 356: 222: 202: 158: 2245:"Final Cut Pro 6 - Broad Format Support" 2503:Journal of Computer Graphics Techniques 2497:McGuire, Morgan; Bavoil, Louis (2013). 2319:"The Preliminary Requirements for NGVC" 2275:"The First JCT-VC Meeting, Dresden, DE" 1819: 1012:Image formats supporting alpha channels 86:foreground elements over a background. 2069:"Alpha Blending: To Pre or Not To Pre" 1921: 1919: 1917: 1915: 1913: 66:into a single, final image called the 2395:from the original on 7 September 2009 2100:from the original on 12 December 2017 989:argument is problematic as a result. 190:{\displaystyle \alpha A+(1-\alpha )B} 70:. Compositing is used extensively in 7: 2970:List of computer graphics algorithms 1683:Although used for similar purposes, 152:classic linear interpolation formula 2538:Alpha Matting and Premultiplication 2414:@chromium.org, de... (2022-08-24). 2464:Novak, John (September 21, 2016). 2040:"ALPHA COMPOSITING – Animationmet" 1803:Transparent videos in web browsers 25: 2439:Minute Physics (March 20, 2015). 787:operator in the previous section. 2453:from the original on 2021-11-22. 2219:Lambrecht, Jordan (2022-12-31). 337: 264:. For example, given two images 1977:from the original on 2011-04-29 1082:ProRes is the successor of the 135:model in 1981. A 1984 paper by 58:. It is often useful to render 2528:Image Compositing Fundamentals 1828:"Definition of alpha blending" 1731:order-independent transparency 1640: 1621: 1510: 1491: 1121:(codec video VP8, VP9, or AV1) 938: 919: 862: 843: 545: 526: 456: 437: 276:appears in the foreground and 181: 169: 27:Operation in computer graphics 1: 2927:3D computer graphics software 2130:them all down to one texture. 1995:Alvy Ray Smith (1995-08-15). 1798:Transparent color in palettes 1314:into account gamma correction 771:Straight versus premultiplied 127:operator based on a physical 2991:Computer graphics algorithms 2742:Hidden-surface determination 2389:"SVG specification, "Color"" 2197:. 2016-03-04. Archived from 1935:"Compositing digital images" 2006:. p. 6. Archived from 767:defines additive blending. 733:{\displaystyle \alpha _{b}} 706:{\displaystyle \alpha _{a}} 679:{\displaystyle \alpha _{o}} 318:(and the reverse operators 306:and is usually abbreviated 197:that uses the Greek letter 3007: 2441:"Computer Color is Broken" 2225:Pixel Bakery Design Studio 1854:Wallace, Bruce A. (1981). 1679:Other transparency methods 1778:Portable Network Graphics 1001:(non-premultiplied) RGBA 119:in the late 1970s at the 1160:Has largest HDR spread. 1084:Apple Intermediate Codec 2954:Vector graphics editors 2949:Raster graphics editors 2295:Jie Dong (2008-07-01). 2273:Jie Dong (2010-06-19). 1394:{\displaystyle \gamma } 798:operator then becomes: 230:{\displaystyle \alpha } 210:{\displaystyle \alpha } 76:computer-rendered image 2837:Checkerboard rendering 1793:Transparency (graphic) 1666: 1548: 1395: 1372: 1315: 1312:Alpha blending, taking 1305: 1289:Allows lossy and HDR. 1110:Intended successor to 974:additive blending mode 945: 869: 734: 707: 680: 653: 626: 599: 569: 302:(the phrase refers to 231: 211: 191: 39: 2792:Affine transformation 2771:Surface triangulation 2715:Anisotropic filtering 2317:Yu Liu (2009-04-15). 2143:"Premultiplied alpha" 1950:10.1145/800031.808606 1885:10.1145/800224.806813 1667: 1549: 1396: 1373: 1311: 1303: 946: 870: 735: 708: 681: 654: 652:{\displaystyle C_{b}} 627: 625:{\displaystyle C_{a}} 600: 598:{\displaystyle C_{o}} 570: 232: 212: 192: 33: 2484:ssp.impulsetrain.com 1733:methods replace the 1724:stained-glass window 1566: 1414: 1385: 1329: 1267:Based on CSS color. 1203:Supports animation. 880: 804: 717: 690: 663: 636: 609: 582: 424: 395: 355: 221: 201: 157: 146:The use of the term 2807:Collision detection 2735:Global illumination 2171:"Creating Textures" 2075:. 31 January 2013. 1763:Digital compositing 1620: 1602: 1480: 1452: 1367: 1261:All modern browsers 1239:All modern browsers 1176:All modern browsers 1129:All modern browsers 792:premultiplied alpha 749:Painter's algorithm 413: 381: 344:As an example, the 262:compositing algebra 2857:Scanline rendering 2651:Parallax scrolling 2641:Isometric graphics 2195:"Extended Formats" 2119:Trebilco, Damian. 1685:transparent colors 1662: 1606: 1588: 1544: 1466: 1438: 1391: 1368: 1345: 1316: 1306: 941: 865: 730: 703: 676: 649: 622: 595: 565: 563: 227: 207: 187: 40: 2978: 2977: 2919:Graphics software 2812:Planar projection 2797:Back-face culling 2669: 2668: 2613:Alpha compositing 2574:Computer graphics 2420:bugs.chromium.org 1788:Texture splatting 1748:Alpha to coverage 1703:image file format 1524: 1352: 1339: 1293: 1292: 1283:Moderate support 1067:Apple ProRes 4444 1046:File/Codec format 559: 384: 290:. In addition to 103:, that are used. 48:alpha compositing 44:computer graphics 16:(Redirected from 2998: 2904:Volume rendering 2776:Wire-frame model 2629: 2567: 2560: 2553: 2544: 2511: 2510: 2494: 2488: 2487: 2476: 2470: 2469: 2461: 2455: 2454: 2436: 2430: 2429: 2427: 2426: 2411: 2405: 2404: 2402: 2400: 2385: 2379: 2378: 2376: 2374: 2368: 2360: 2354: 2353: 2351: 2350: 2336: 2330: 2329: 2327: 2326: 2314: 2308: 2307: 2305: 2304: 2292: 2286: 2285: 2283: 2282: 2270: 2264: 2263: 2261: 2260: 2251:. Archived from 2241: 2235: 2234: 2232: 2231: 2216: 2210: 2209: 2207: 2206: 2191: 2185: 2184: 2182: 2181: 2167: 2161: 2160: 2155: 2153: 2147:Win2D for WinUI3 2139: 2133: 2132: 2116: 2110: 2109: 2107: 2105: 2086: 2080: 2079: 2073:NVIDIA Developer 2065: 2059: 2058: 2056: 2055: 2046:. Archived from 2044:animationmet.com 2036: 2015: 2014: 2012: 2001: 1992: 1986: 1985: 1983: 1982: 1976: 1939: 1923: 1908: 1907: 1887: 1877: 1859: 1851: 1842: 1841: 1839: 1838: 1824: 1783:RGBA color space 1671: 1669: 1668: 1663: 1661: 1660: 1656: 1647: 1643: 1639: 1638: 1619: 1614: 1601: 1596: 1578: 1577: 1554: 1551: 1550: 1545: 1543: 1542: 1538: 1529: 1525: 1523: 1522: 1513: 1509: 1508: 1490: 1489: 1479: 1474: 1462: 1461: 1451: 1446: 1436: 1426: 1425: 1400: 1398: 1397: 1392: 1377: 1375: 1374: 1369: 1366: 1362: 1353: 1350: 1341: 1340: 1337: 1320:gamma correction 1296:Gamma correction 1197:Moderate support 1043: 950: 948: 947: 942: 937: 936: 918: 917: 905: 904: 892: 891: 874: 872: 871: 866: 861: 860: 842: 841: 829: 828: 816: 815: 739: 737: 736: 731: 729: 728: 712: 710: 709: 704: 702: 701: 685: 683: 682: 677: 675: 674: 658: 656: 655: 650: 648: 647: 631: 629: 628: 623: 621: 620: 604: 602: 601: 596: 594: 593: 574: 572: 571: 566: 564: 560: 558: 557: 548: 544: 543: 525: 524: 515: 514: 502: 501: 492: 491: 481: 472: 471: 455: 454: 436: 435: 426: 425: 423: 422: 407: 406: 397: 396: 394: 393: 382: 371: 370: 341: 236: 234: 233: 228: 216: 214: 213: 208: 196: 194: 193: 188: 60:picture elements 21: 3006: 3005: 3001: 3000: 2999: 2997: 2996: 2995: 2981: 2980: 2979: 2974: 2958: 2913: 2780: 2725:Fluid animation 2665: 2627: 2599: 2590:Diffusion curve 2582:Vector graphics 2576: 2571: 2519: 2514: 2496: 2495: 2491: 2478: 2477: 2473: 2463: 2462: 2458: 2438: 2437: 2433: 2424: 2422: 2413: 2412: 2408: 2398: 2396: 2387: 2386: 2382: 2372: 2370: 2366: 2362: 2361: 2357: 2348: 2346: 2338: 2337: 2333: 2324: 2322: 2316: 2315: 2311: 2302: 2300: 2294: 2293: 2289: 2280: 2278: 2272: 2271: 2267: 2258: 2256: 2243: 2242: 2238: 2229: 2227: 2218: 2217: 2213: 2204: 2202: 2193: 2192: 2188: 2179: 2177: 2169: 2168: 2164: 2151: 2149: 2141: 2140: 2136: 2118: 2117: 2113: 2103: 2101: 2088: 2087: 2083: 2067: 2066: 2062: 2053: 2051: 2038: 2037: 2018: 2010: 1999: 1994: 1993: 1989: 1980: 1978: 1974: 1960: 1937: 1925: 1924: 1911: 1896: 1875:10.1.1.141.7875 1853: 1852: 1845: 1836: 1834: 1826: 1825: 1821: 1817: 1812: 1743: 1681: 1630: 1587: 1583: 1582: 1569: 1564: 1563: 1514: 1500: 1481: 1453: 1437: 1431: 1430: 1417: 1412: 1410: 1383: 1382: 1332: 1327: 1326: 1313: 1298: 1055:Browser support 1014: 995: 959: 928: 909: 896: 883: 878: 877: 852: 833: 820: 807: 802: 801: 773: 720: 715: 714: 693: 688: 687: 666: 661: 660: 639: 634: 633: 612: 607: 606: 585: 580: 579: 562: 561: 549: 535: 516: 506: 493: 483: 482: 473: 463: 460: 459: 446: 427: 414: 398: 385: 372: 362: 353: 352: 304:holdout matting 243: 219: 218: 199: 198: 155: 154: 109: 74:when combining 28: 23: 22: 15: 12: 11: 5: 3004: 3002: 2994: 2993: 2983: 2982: 2976: 2975: 2973: 2972: 2966: 2964: 2960: 2959: 2957: 2956: 2951: 2946: 2945: 2944: 2939: 2934: 2923: 2921: 2915: 2914: 2912: 2911: 2906: 2901: 2896: 2891: 2886: 2881: 2876: 2874:Shadow mapping 2871: 2866: 2861: 2860: 2859: 2854: 2849: 2844: 2839: 2834: 2829: 2819: 2814: 2809: 2804: 2799: 2794: 2788: 2786: 2782: 2781: 2779: 2778: 2773: 2768: 2767: 2766: 2756: 2749: 2744: 2739: 2738: 2737: 2727: 2722: 2717: 2712: 2707: 2701: 2696: 2690: 2685: 2679: 2677: 2671: 2670: 2667: 2666: 2664: 2663: 2658: 2653: 2648: 2643: 2637: 2635: 2626: 2625: 2620: 2615: 2609: 2607: 2601: 2600: 2598: 2597: 2592: 2586: 2584: 2578: 2577: 2572: 2570: 2569: 2562: 2555: 2547: 2541: 2540: 2535: 2530: 2525: 2518: 2517:External links 2515: 2513: 2512: 2489: 2471: 2456: 2431: 2406: 2380: 2355: 2331: 2309: 2287: 2265: 2236: 2211: 2186: 2162: 2134: 2111: 2081: 2060: 2016: 2013:on 2021-10-25. 1987: 1958: 1927:Porter, Thomas 1909: 1894: 1843: 1818: 1816: 1813: 1811: 1810: 1808:Truevision TGA 1805: 1800: 1795: 1790: 1785: 1780: 1775: 1770: 1765: 1760: 1755: 1750: 1744: 1742: 1739: 1700:Truevision TGA 1680: 1677: 1673: 1672: 1659: 1655: 1651: 1646: 1642: 1637: 1633: 1629: 1626: 1623: 1618: 1613: 1609: 1605: 1600: 1595: 1591: 1586: 1581: 1576: 1572: 1557: 1556: 1541: 1537: 1533: 1528: 1521: 1517: 1512: 1507: 1503: 1499: 1496: 1493: 1488: 1484: 1478: 1473: 1469: 1465: 1460: 1456: 1450: 1445: 1441: 1434: 1429: 1424: 1420: 1390: 1379: 1378: 1365: 1361: 1357: 1348: 1344: 1335: 1297: 1294: 1291: 1290: 1287: 1284: 1281: 1278: 1275: 1269: 1268: 1265: 1262: 1259: 1256: 1253: 1247: 1246: 1243: 1240: 1237: 1235: 1232: 1226: 1225: 1223: 1220: 1217: 1214: 1211: 1205: 1204: 1201: 1198: 1195: 1192: 1189: 1183: 1182: 1180: 1177: 1174: 1171: 1168: 1162: 1161: 1158: 1155: 1152: 1150: 1147: 1141: 1140: 1133: 1130: 1127: 1125: 1122: 1115: 1114: 1108: 1105: 1099: 1097: 1094: 1087: 1086: 1080: 1077: 1074: 1072: 1069: 1063: 1062: 1059: 1056: 1053: 1050: 1049:Maximum Depth 1047: 1013: 1010: 994: 991: 958: 955: 954: 953: 952: 951: 940: 935: 931: 927: 924: 921: 916: 912: 908: 903: 899: 895: 890: 886: 875: 864: 859: 855: 851: 848: 845: 840: 836: 832: 827: 823: 819: 814: 810: 788: 781:straight alpha 772: 769: 727: 723: 700: 696: 673: 669: 646: 642: 619: 615: 592: 588: 576: 575: 556: 552: 547: 542: 538: 534: 531: 528: 523: 519: 513: 509: 505: 500: 496: 490: 486: 479: 476: 474: 470: 466: 462: 461: 458: 453: 449: 445: 442: 439: 434: 430: 421: 417: 410: 405: 401: 392: 388: 378: 375: 373: 369: 365: 361: 360: 242: 239: 226: 206: 186: 183: 180: 177: 174: 171: 168: 165: 162: 113:Alvy Ray Smith 108: 105: 78:elements with 52:alpha blending 36:color spectrum 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 3003: 2992: 2989: 2988: 2986: 2971: 2968: 2967: 2965: 2961: 2955: 2952: 2950: 2947: 2943: 2940: 2938: 2935: 2933: 2930: 2929: 2928: 2925: 2924: 2922: 2920: 2916: 2910: 2907: 2905: 2902: 2900: 2897: 2895: 2892: 2890: 2887: 2885: 2882: 2880: 2879:Shadow volume 2877: 2875: 2872: 2870: 2867: 2865: 2862: 2858: 2855: 2853: 2850: 2848: 2845: 2843: 2840: 2838: 2835: 2833: 2830: 2828: 2825: 2824: 2823: 2820: 2818: 2815: 2813: 2810: 2808: 2805: 2803: 2800: 2798: 2795: 2793: 2790: 2789: 2787: 2783: 2777: 2774: 2772: 2769: 2765: 2762: 2761: 2760: 2757: 2754: 2753:Triangle mesh 2750: 2748: 2745: 2743: 2740: 2736: 2733: 2732: 2731: 2728: 2726: 2723: 2721: 2718: 2716: 2713: 2711: 2708: 2705: 2702: 2700: 2697: 2695: 2691: 2689: 2686: 2684: 2683:3D projection 2681: 2680: 2678: 2676: 2672: 2662: 2659: 2657: 2654: 2652: 2649: 2647: 2644: 2642: 2639: 2638: 2636: 2634: 2630: 2624: 2623:Text-to-image 2621: 2619: 2616: 2614: 2611: 2610: 2608: 2606: 2602: 2596: 2593: 2591: 2588: 2587: 2585: 2583: 2579: 2575: 2568: 2563: 2561: 2556: 2554: 2549: 2548: 2545: 2539: 2536: 2534: 2531: 2529: 2526: 2524: 2521: 2520: 2516: 2509:(2): 122–141. 2508: 2504: 2500: 2493: 2490: 2485: 2481: 2475: 2472: 2467: 2460: 2457: 2452: 2448: 2447: 2442: 2435: 2432: 2421: 2417: 2410: 2407: 2394: 2390: 2384: 2381: 2365: 2359: 2356: 2345: 2341: 2335: 2332: 2320: 2313: 2310: 2298: 2291: 2288: 2276: 2269: 2266: 2255:on 2011-06-08 2254: 2250: 2246: 2240: 2237: 2226: 2222: 2215: 2212: 2201:on 2016-03-04 2200: 2196: 2190: 2187: 2176: 2172: 2166: 2163: 2159: 2148: 2144: 2138: 2135: 2131: 2126: 2122: 2115: 2112: 2099: 2095: 2091: 2085: 2082: 2078: 2074: 2070: 2064: 2061: 2050:on 2019-09-25 2049: 2045: 2041: 2035: 2033: 2031: 2029: 2027: 2025: 2023: 2021: 2017: 2009: 2005: 1998: 1991: 1988: 1973: 1969: 1965: 1961: 1959:9780897911382 1955: 1951: 1947: 1943: 1936: 1933:(July 1984). 1932: 1928: 1922: 1920: 1918: 1916: 1914: 1910: 1905: 1901: 1897: 1895:0-89791-045-1 1891: 1886: 1881: 1876: 1871: 1867: 1863: 1858: 1850: 1848: 1844: 1833: 1829: 1823: 1820: 1814: 1809: 1806: 1804: 1801: 1799: 1796: 1794: 1791: 1789: 1786: 1784: 1781: 1779: 1776: 1774: 1771: 1769: 1766: 1764: 1761: 1759: 1756: 1754: 1751: 1749: 1746: 1745: 1740: 1738: 1736: 1732: 1727: 1725: 1720: 1718: 1714: 1712: 1708: 1704: 1701: 1697: 1692: 1690: 1686: 1678: 1676: 1657: 1653: 1649: 1644: 1635: 1631: 1627: 1624: 1616: 1611: 1607: 1603: 1598: 1593: 1589: 1584: 1579: 1574: 1570: 1562: 1561: 1560: 1555: 1553: 1539: 1535: 1531: 1526: 1519: 1515: 1505: 1501: 1497: 1494: 1486: 1482: 1476: 1471: 1467: 1463: 1458: 1454: 1448: 1443: 1439: 1432: 1427: 1422: 1418: 1408: 1407: 1406: 1402: 1388: 1363: 1359: 1355: 1346: 1342: 1333: 1325: 1324: 1323: 1321: 1310: 1302: 1295: 1288: 1286:Image (.jxl) 1285: 1282: 1279: 1276: 1274: 1271: 1270: 1266: 1263: 1260: 1257: 1254: 1252: 1249: 1248: 1244: 1241: 1238: 1236: 1233: 1231: 1228: 1227: 1224: 1222:Image (.tiff) 1221: 1218: 1215: 1212: 1210: 1207: 1206: 1202: 1200:Image (.apng) 1199: 1196: 1193: 1190: 1188: 1185: 1184: 1181: 1178: 1175: 1172: 1169: 1167: 1164: 1163: 1159: 1156: 1153: 1151: 1148: 1146: 1143: 1142: 1138: 1134: 1132:Video (.webm) 1131: 1128: 1126: 1123: 1120: 1117: 1116: 1113: 1109: 1107:Video (.hevc) 1106: 1104: 1100: 1098: 1095: 1092: 1089: 1088: 1085: 1081: 1078: 1075: 1073: 1070: 1068: 1065: 1064: 1060: 1057: 1054: 1051: 1048: 1045: 1044: 1041: 1038: 1035: 1030: 1027: 1023: 1019: 1011: 1009: 1006: 1004: 1000: 992: 990: 987: 981: 977: 975: 970: 968: 964: 963:interpolation 956: 933: 929: 925: 922: 914: 910: 906: 901: 897: 893: 888: 884: 876: 857: 853: 849: 846: 838: 834: 830: 825: 821: 817: 812: 808: 800: 799: 797: 793: 789: 786: 782: 778: 777: 776: 770: 768: 766: 762: 758: 754: 750: 746: 741: 725: 721: 698: 694: 671: 667: 644: 640: 617: 613: 590: 586: 554: 550: 540: 536: 532: 529: 521: 517: 511: 507: 503: 498: 494: 488: 484: 477: 475: 468: 464: 451: 447: 443: 440: 432: 428: 419: 415: 408: 403: 399: 390: 386: 376: 374: 367: 363: 351: 350: 349: 347: 342: 340: 335: 333: 329: 325: 321: 317: 313: 309: 305: 301: 297: 293: 289: 286: 283: 279: 275: 271: 267: 263: 258: 256: 252: 251:alpha channel 248: 240: 238: 224: 204: 184: 178: 175: 172: 166: 163: 160: 153: 149: 144: 142: 138: 137:Thomas Porter 134: 133:transmittance 130: 126: 122: 118: 114: 106: 104: 102: 97: 94: 93: 87: 85: 81: 77: 73: 69: 65: 61: 57: 53: 49: 45: 37: 32: 19: 18:Alpha channel 2884:Shear matrix 2847:Path tracing 2832:Cone tracing 2827:Beam tracing 2747:Polygon mesh 2688:3D rendering 2612: 2506: 2502: 2492: 2483: 2474: 2459: 2444: 2434: 2423:. Retrieved 2419: 2409: 2397:. Retrieved 2383: 2371:. Retrieved 2358: 2347:. Retrieved 2343: 2334: 2323:. Retrieved 2312: 2301:. Retrieved 2290: 2279:. Retrieved 2268: 2257:. Retrieved 2253:the original 2248: 2239: 2228:. Retrieved 2224: 2214: 2203:. Retrieved 2199:the original 2189: 2178:. Retrieved 2175:www.echos.ch 2174: 2165: 2157: 2150:. Retrieved 2146: 2137: 2128: 2124: 2114: 2102:. Retrieved 2093: 2084: 2076: 2072: 2063: 2052:. Retrieved 2048:the original 2043: 2008:the original 2003: 1990: 1979:. Retrieved 1941: 1861: 1835:. Retrieved 1831: 1822: 1734: 1728: 1721: 1715: 1705:and related 1698:mode of the 1693: 1682: 1674: 1558: 1409: 1403: 1380: 1317: 1264:Image (.svg) 1242:Image (.gif) 1179:Image (.png) 1157:Image (.exr) 1079:Video (.mov) 1031: 1015: 1007: 998: 996: 982: 978: 971: 960: 795: 791: 784: 780: 774: 764: 756: 752: 744: 742: 577: 345: 343: 336: 331: 327: 323: 319: 315: 311: 307: 299: 295: 291: 287: 284: 281: 277: 273: 269: 265: 261: 259: 250: 244: 147: 145: 124: 110: 98: 90: 88: 80:live footage 56:transparency 51: 47: 41: 2899:Translation 2852:Ray casting 2842:Ray tracing 2720:Cel shading 2694:Image-based 2675:3D graphics 2656:Ray casting 2605:2D graphics 2344:caniuse.com 2004:alvyray.com 1768:Image masks 1758:Blend modes 1689:image masks 1101:Limited to 1034:file format 300:held out by 255:transparent 241:Description 129:reflectance 101:blend modes 2963:Algorithms 2817:Reflection 2425:2024-08-13 2349:2023-05-25 2325:2024-08-13 2321:. H265.net 2303:2024-08-13 2299:. H265.net 2281:2024-08-13 2277:. H265.net 2259:2024-08-13 2230:2023-05-25 2205:2023-05-25 2180:2023-05-25 2054:2019-09-25 1981:2019-03-11 1837:2021-08-07 1815:References 1773:Magic Pink 1711:15-bit RGB 1696:high color 1322:function: 1058:Media type 957:Comparison 117:Ed Catmull 84:rasterized 2942:rendering 2932:animation 2822:Rendering 2399:13 August 2373:13 August 2249:apple.com 1931:Duff, Tom 1870:CiteSeerX 1717:Dithering 1658:γ 1632:α 1628:− 1617:γ 1599:γ 1540:γ 1516:α 1502:α 1498:− 1483:α 1477:γ 1455:α 1449:γ 1389:γ 1364:γ 967:filtering 930:α 926:− 911:α 898:α 885:α 854:α 850:− 722:α 695:α 668:α 551:α 537:α 533:− 518:α 495:α 448:α 444:− 429:α 400:α 364:α 225:α 205:α 179:α 176:− 161:α 68:composite 64:2D images 2985:Category 2937:modeling 2864:Rotation 2802:Clipping 2785:Concepts 2764:Deferred 2730:Lighting 2710:Aliasing 2704:Unbiased 2699:Spectral 2451:Archived 2393:Archived 2098:Archived 1972:Archived 1968:18663039 1753:Bit blit 1741:See also 1258:straight 1194:straight 1173:straight 1137:Chromium 999:straight 993:Examples 986:compress 761:clipping 141:Tom Duff 2869:Scaling 2759:Shading 2446:YouTube 2152:30 June 1904:1147910 1866:253–262 1338:encoded 1277:32-bit 1273:JPEG XL 1255:32-bit 1213:32-bit 1191:24-bit 1170:16-bit 1149:32-bit 1145:OpenEXR 1124:12-bit 1096:10-bit 1093:/ h.265 1071:16-bit 751:). The 107:History 2889:Shader 2661:Skybox 2646:Mode 7 2618:Layers 2369:. ETSI 2125:GitHub 1966:  1956:  1902:  1892:  1872:  1351:linear 1234:8-bit 1103:Safari 1061:Notes 1003:tuples 965:, and 383:  330:, and 314:, and 2909:Voxel 2894:Texel 2595:Pixel 2367:(PDF) 2104:8 May 2011:(PDF) 2000:(PDF) 1975:(PDF) 1964:S2CID 1938:(PDF) 1900:S2CID 1832:PCMAG 1729:Some 1707:TARGA 1280:both 1112:H.264 790:With 779:With 578:Here 332:ratop 320:rover 148:alpha 92:matte 2633:2.5D 2401:2024 2375:2024 2154:2023 2106:2018 1954:ISBN 1890:ISBN 1735:over 1687:and 1219:None 1216:both 1209:TIFF 1187:APNG 1154:None 1119:WebM 1091:HEVC 1076:None 1052:Type 1032:The 1022:TIFF 1020:and 796:over 785:over 765:plus 755:and 745:over 743:The 713:and 632:and 346:over 328:rout 312:atop 292:over 285:over 268:and 139:and 125:over 115:and 72:film 1946:doi 1880:doi 1251:SVG 1230:GIF 1166:PNG 1037:BMP 1026:GIF 1018:PNG 757:out 324:rin 316:xor 310:), 308:out 247:RGB 50:or 42:In 2987:: 2505:. 2501:. 2482:. 2449:. 2443:. 2418:. 2342:. 2247:. 2223:. 2173:. 2156:. 2145:. 2127:. 2123:. 2096:. 2092:. 2071:. 2042:. 2019:^ 2002:. 1970:. 1962:. 1952:. 1940:. 1929:; 1912:^ 1898:. 1888:. 1878:. 1868:. 1860:. 1846:^ 1830:. 1024:. 753:in 686:, 605:, 326:, 322:, 298:, 296:in 46:, 34:A 2755:) 2751:( 2706:) 2692:( 2566:e 2559:t 2552:v 2507:2 2486:. 2468:. 2428:. 2403:. 2377:. 2352:. 2328:. 2306:. 2284:. 2262:. 2233:. 2208:. 2183:. 2108:. 2057:. 1984:. 1948:: 1906:. 1882:: 1840:. 1654:/ 1650:1 1645:) 1641:) 1636:a 1625:1 1622:( 1612:b 1608:C 1604:+ 1594:a 1590:C 1585:( 1580:= 1575:o 1571:C 1536:/ 1532:1 1527:) 1520:o 1511:) 1506:a 1495:1 1492:( 1487:b 1472:b 1468:C 1464:+ 1459:a 1444:a 1440:C 1433:( 1428:= 1423:o 1419:C 1360:/ 1356:1 1347:C 1343:= 1334:C 939:) 934:a 923:1 920:( 915:b 907:+ 902:a 894:= 889:o 863:) 858:a 847:1 844:( 839:b 835:C 831:+ 826:a 822:C 818:= 813:o 809:C 726:b 699:a 672:o 645:b 641:C 618:a 614:C 591:o 587:C 555:o 546:) 541:a 530:1 527:( 522:b 512:b 508:C 504:+ 499:a 489:a 485:C 478:= 469:o 465:C 457:) 452:a 441:1 438:( 433:b 420:b 416:C 409:+ 404:a 391:a 387:C 377:= 368:o 288:B 282:A 278:B 274:A 270:B 266:A 185:B 182:) 173:1 170:( 167:+ 164:A 131:/ 20:)

Index

Alpha channel

color spectrum
computer graphics
transparency
picture elements
2D images
composite
film
computer-rendered image
live footage
rasterized
matte
blend modes
Alvy Ray Smith
Ed Catmull
New York Institute of Technology Computer Graphics Lab
reflectance
transmittance
Thomas Porter
Tom Duff
classic linear interpolation formula
RGB
transparent
holdout matting

Painter's algorithm
clipping
interpolation
filtering

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑