Ask a Question related to Mac Programming, Design and Development.

  1. #1

    Default Alpha blending

    This bit me last night; don't let it bite you.

    When preparing images for compositing, pre-multiply r, g, and b with alpha.

    There are two means of blending commonly used on the Mac, interpolated
    and pre-multiplied. (Well, there's also a third, but it isn't used much.)

    With interpolated blending, a source color (c_s) painted over a colored
    destination (c_d) with source alpha (a_s) gives a final color (c_f):

    c_f = a_s * c_s + (1 - a_s) * c_d

    In premultiplied blending, it's

    c_f = c_s + (1 - a_s) * c_d

    Which means that c_s must be premultiplied with c_a beforehand
    relative to the c_s in the interpolated case.

    It's obvious why Apple chose this, because making c_s bigger than
    that lets you put specular highlights on glass. But, like many things
    that are obvious, it isn't necessarily obvious when you're working on
    something else.
    Eric Pepke Guest

  2. Similar Questions and Discussions

    1. ADDITIVE BLENDING
      I have read about ADDITIVE BLENDING at noisecrime. It looks beautiful. But the aren`t giving explicit tutorials, does anybody know a site or...
    2. blending on meshes
      I'm using 8.5 to script a game & have created hexagonal columns using newMesh. What I can't seem to do is make them semitransparent, by applying a...
    3. Blending 2 exposures
      I need a filter or a proven technique to blend two different exposures in the same image. My company edits and builds virtual tours for realestate....
    4. blending? Fading?
      Hi, is it possible to blend or fade one side of an image or object into...nothing? I would like to do this so if you were to put any color behind...
    5. model blending?
      I am trying to create a routine that sets the alpha blend of an object if it comes between the camera and the main character of the game (classic...
  3. #2

    Default Re: Alpha blending

    In <ef37f531.0309041713.10abdd41@posting.google.com > Eric Pepke wrote:
    > This bit me last night; don't let it bite you.
    >
    > When preparing images for compositing, pre-multiply r, g, and b with
    > alpha.
    >
    > There are two means of blending commonly used on the Mac, interpolated
    > and pre-multiplied. (Well, there's also a third, but it isn't used
    > much.)
    >
    > With interpolated blending, a source color (c_s) painted over a
    > colored destination (c_d) with source alpha (a_s) gives a final color (
    > c_f):
    >
    > c_f = a_s * c_s + (1 - a_s) * c_d
    >
    > In premultiplied blending, it's
    >
    > c_f = c_s + (1 - a_s) * c_d
    >
    > Which means that c_s must be premultiplied with c_a beforehand
    > relative to the c_s in the interpolated case.
    >
    > It's obvious why Apple chose this, because making c_s bigger than
    > that lets you put specular highlights on glass. But, like many things
    > that are obvious, it isn't necessarily obvious when you're working on
    > something else.
    Is this related to the stuff in the docs that says stuff like "Cocoa and
    Quartz expect bitmaps with alpha to have the color values premultiplied"?
    m.

    --
    matt neuburg, phd = [email]matt@tidbits.com[/email], [url]http://www.tidbits.com/matt[/url]
    REALbasic: The Definitive Guide! 2nd edition!
    [url]http://www.amazon.com/exec/obidos/ASIN/0596001770/somethingsbymatt[/url]
    Subscribe to TidBITS. It's free and smart.
    matt neuburg Guest

  4. #3

    Default Re: Alpha blending

    matt neuburg <matt@tidbits.com> wrote in message news:<20030905074827438-0700@news.la.sbcglobal.net>...
    > Is this related to the stuff in the docs that says stuff like "Cocoa and
    > Quartz expect bitmaps with alpha to have the color values premultiplied"?
    > m.
    Yes. But the only reference I've seen is in [NSBitmapImageRep
    getBitmapDataPlanes], which I only found afterward.
    Eric Pepke Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139