All Activity
- Today
-
Premultiplied vs. Straight Alpha - Worst rabbithole I have ever been in
DasFrodo replied to DasFrodo's topic in Discussions
As far as I know the best way to comp your glow from renders is just don't. Getting the glow to correctly export from render engines is always a major pain in the butt for exactly this reason and at this point I just do it in post via AE or some playing around in PS. As said above Red Giant has some really good Glow plugins for AE, and they're part of Maxon One now. -
Premultiplied vs. Straight Alpha - Worst rabbithole I have ever been in
Jeff H1 replied to DasFrodo's topic in Discussions
have you thought about applying it in post, whether ae, fu or nuke? Some of the plugins like Sapphire and Red Giant have pretty flexible glows with different ways to tweak matte and background sources. Add a bit of light wrap too. -
sase joined the community
-
Premultiplied vs. Straight Alpha - Worst rabbithole I have ever been in
Mash replied to DasFrodo's topic in Discussions
Then pardon my daft question, but what would be the correct way to composite this in post? Lets say you have a red glowing cube you want to bring in on top of your composition. You bring in the cube renders (premultiplied so the glow is maintained in the rgb data), they sit on top, but the alpha layer outside of the cube in every 3d render engine ive used will be solid black because there is no geometry there, thus the glow of the red cube is completely cut off. Previously (and currently frankly) I have been bringing in a second copy of the footage (which does have a glow visible in it, but the alpha obliterates it), placing it under the red cube layer, disabling the alpha entirely, then setting it to add or screen so the glow can show back up again and composite over my background. But this always needs 2 copies of the render in my comp, if I just use the add/screen layer then the red cube would show the background through it. -
Premultiplied vs. Straight Alpha - Worst rabbithole I have ever been in
troy s replied to DasFrodo's topic in Discussions
Hello all. Flattered to be mentioned here. I just wanted to point out that the statement is not quite correct; the result will indeed include an emission component in the RGB after the composite. With associated alpha (aka “premultiplied”) the emission is directly added to the result of the occlusion. This happens to be the only way alpha is generated in PBR-like rendering systems, and is more or less the closest normative case of a reasonable model of transparency and emission. It also happens to be the sole way to encode any additive component like a gloss, a flare, a glare, fires or emissive gases, glows, etc. I’ve spent quite a few years now trying to accumulate some quotations and such on the subject, from luminaries in the field. Hope this helps. -
troy s joined the community
-
Premultiplied vs. Straight Alpha - Worst rabbithole I have ever been in
LLS replied to DasFrodo's topic in Discussions
slightly off topic but I believe the individual in that blog post is the guy who worked on the AgX colorspace that was all the rage in the blender side of things, I think it replaced Filmic as default but idk... - Yesterday
-
Kinghalo joined the community
-
tylerrw joined the community
-
Premultiplied vs. Straight Alpha - Worst rabbithole I have ever been in
DasFrodo replied to DasFrodo's topic in Discussions
I'm even more confused now. Wikipedia says this: So Wikpedia also says that Straight Alpha is the one that has the emission independent from the Alpha. Also, apparently Premultiplied Alpha IS multiplied with the Alpha value. It would make sense, since a 50% "covered" 70% green is 35%, because half of the emission is absorbed by the coverage. I think I understand the issue now. The Blog is simply about the BLENDING operation with premultiplied alpha values. It has nothing to do with the images themselves. It is simply easier to do calculations with premultiplied images, since straight alpha images need to be multiplied with their alpha by the renderer at runtime to get premultiplied values needed for blending. Premultiplied simply comes with the multiplication integrated already. I could have thought of this sooner, since a couple of pages before is talking about how Photoshop internally uses straight alpha calculations and thus ends up with wrong colors. Photoshop only blends correctly in 32 bit mode, since it uses linear premultiplied maths then. At least that's how I understood it. tl;dr: Doesn't really matter, just tell your software what you're feeding it with and it should be fine. Also use straight or premulitplied according to what you want to do, like @mash said here: https://www.core4d.com/ipb/forums/topic/119202-premultiplied-vs-straight-alpha-worst-rabbithole-i-have-ever-been-in/?do=findComment&comment=764541 -
serpentbird joined the community
-
Premultiplied vs. Straight Alpha - Worst rabbithole I have ever been in
DasFrodo replied to DasFrodo's topic in Discussions
lol I think I've stumbled over this exact blog at some point. That said, I'm not a fan of PNGs either unless I'm rendering a still that just needs some color adjustments. Thing is, all that you guys said is what I thought as well, but that blog seriously confuses me. If this man is to be believed (and I think you can, since he uses tons of credible sources that I've personally double checked) and I did not misunderstand it is exactly the other way around, hence my scepticism towards the naming in C4D. Let me quote some stuff from the blog: ... which would make absolute sense that it would look like a STRAIGHT alpha in the images I posted above and absolutely NOT like the premultiplied images above. ... which also supports the idea that premultiplied is NOT the thing that has the background or anything else baked in, but is rather "lossless" I know that ALL sources, including ChatGPT / Copilot tell me that is NOT the case, but the general confusion around the terms that you can feel everywhere has me totally bewildered. It doesn't help that you can find some information on AE and PS simply not really working in premultiplied math but instead internally doing straight alpha calculations and more or less barely getting the right result. Some of these threads are old though, so I have no idea if this is still the case. I would believe so though, since we're still taking about Adobe. Especially what you posted @HappyPolygon. If I did not TOTALLY misunderstand the blog and if it is truthful, the values that ChatGPT gave you should be EXACTLY the other way around, since premultiplied is supposed to have the color values independently from the Alpha, and straight Alpha is supposed to be the exact opposite. Especially with language models like that and how unreliable they are I could totally see it picking up a wrong narrative that has been widely spread on the internet by people just misunderstanding what "premultiplied" actually means. Because if you think about it, premultiplied sounds EXACTLY like what straight alpha supposedly is. I'm just questioning if maybe, just maybe, almost everybody is using the wrong terms in this case, which wouldn't surprise me in the slightest. Thank you for that super valuable input, that is going into my own little documentation for reference in the future 🙂 -
From what I understand from all this is that the premultiplied method does not keep a separate Alpha map of the image. This means that it encodes the Color and Alpha channels on the same bitmap, hence the name as the process of embedding the alpha map has already been done before previewing/opening the image. The straight one is like the raw data. You have two separate data structures, the color and alpha separate. It gets multiplied to process/view correctly by multiplying the corresponding values after the fact. With this you don't have to extract the alpha map if you need it as it is already available.
-
Premultiplied vs. Straight Alpha - Worst rabbithole I have ever been in
Mash replied to DasFrodo's topic in Discussions
I think you may have this backwards. In plain language: Straight alpha: Stores the full RGB colour for each pixel, but ignores how transparent it may or may not be. ie the transparency of a pixel has no impact on the colour stored. This means for example if you render a white cloud with a soft whispy edge in a blue sky, the rendered cloud will only contain white cloud colours, the blue of the sky will not be present in the rendered cloud, even where the alpha transparency eats into the cloud. Premultiplied: This simply means the image being rendered has already had the background baked into the rendered colour data. In the cloud example it means that it will start to turn blue as the edge of the cloud becomes more transparent. In practical terms, straight alphas can be great because there's no bleeding of the background into the visual RGB data, you can take your white cloud and throw it onto any background you like, there wont be any blue from the sky creeping in. On the other hand If you place your premultiplied cloud onto an orange sunset background, youll get a blue halo around the cloud, which sucks. However.... It isn't all roses. Sometimes you need the background colour to be baked into the transparent edge because some things are just flat out impossible to render due to the number of layers present or the motion on screen. Here's one which screws me over regularly; what happens if I have a 100% transparent plastic fan blade, but the fan blade is frosted. And in the middle of the fan is a bright red light. Visually the fan blade has the effect of looking like a swooshing darth vader light sabre. Its bright red and burning white from the brightness, but whats there? a 100% transparent object.... The alpha channel with a straight alpha will obliterate my rendering, its 100% transparent plastic. You can see it, but the alpha channel decides to ruin your day and now the rendering is useless. The only option here is a premultiplied alpha where the background is baked into the motion blur and SSS of the plastic fan blade. Sure, I need to make sure my 3d background somewhat matches my intended compositing background, but its the only way to get any sort of useful render. Same goes for motion blur, DOF blur, multiple transparent layers in front of each other (steam behind glass) The honest answer is, use whichever one is least likely to screw you over. If you have lots of annoying transparent/blurry things to deal with, go premultiplied but plan your background ahead of time. If you want clean alphas on a simpler object render, go straight alpha. I haven't read your linked blog all the way through, but I will say... there are an abundance of wrong people loudly proclaiming themselves to be fonts of all knowledge. Theres one in the octane community who insists on inserting himself into literally every thread on the entire octane forum to tell you youre an idiot for using a png file, he has 100's of blog pages which are a strange mix between 3d rendering and flat earth magical woo woo maths to show everyone just how right he is. That said, your rainbow example does match up with what the blog says. The only difference is the blog seems to think the straight alpha is evil and you should only use the premultiplied, whilst I would say both have their uses, with straight being preferable when possible. -
So for the last couple of days I've been trying to get really deep into digital color science and all the baggage that comes with it. This is all in preparation for upcoming projects and the desire to understand this topic once and for all, at least the basics. So far everything has been working out, from Input Transforms over ACES to Color Spaces etc. This all changed when I got the good old topic of Alpha (oh god help me please) As far as I understood now, and from a seemingly very knowledgeable source, there are basically two types of color encoding with Alpha: Premultitplied Alpha / Premultiplied Color / Associated Alpha Straight Alpha / Unmultiplied Alpha / Unassociated Alpha Before I start, we have to fundamentally clarify two things, important for terminology: RGB describes the amount of color emitted. Not the brightness, or how strong the color is, just the amount of color that is "emitted" from your screen, for each primary color. Alpha describes how much any given pixel occludes what is below it. tl;dr: RGB = Emission, Alpha = Occlusion Premultiplied Alpha ... probably has the dumbest name ever, because intuitively you'd think something is multiplied here, right? Well, that's WRONG. The formula for blending with Premultiplied Alpha looks like this, where FG is Foreground and BG is Background: FG.EMISSION + ((1.0 - FG.OCCLUSION) * BG.EMISSION) What this comes down to is that premultiplied basically saves the brightness of each color independently from the Alpha, and the Alpha just describes how much of the background this pixel will then cover. This means that you can have a very bright pixel and it's Alpha set to 0, so it will be invisible, but the information will STILL be there even though the Pixel is completely transparent. Blending works like this, where foreground is our "top" layer and background is our "bottom" layer that is being composited onto. Check if the current pixel has some kind of occlusion (Alpha <1) in the foreground Scale the background "brightness" or "emission" by the occlusion value (Alpha) (BG Color * FG Alpha pretty much) Add the emission from the current pixels foreground (BG Color from 2. + FG Color) Straight Alpha ... is considered to be a really dumb idea by industry veterans, and often not even called a real way to "encode color and Alpha". The formula looks like this: FG.EMISSION * FG.OCCLUSION) + ((1.0 - FG.OCCLUSION) * BG.EMISSION) What this means is that Straight Alpha multiplies the pixel emission by the occlusion (Alpha), as opposed to having the final emission of the pixel independently saved from the Alpha. If you've every opened a PNG in Photoshop this is pretty much exactly what Straight Alpha is. There is no Alpha channel if you open a PNG in PS, just a "transparency" baked into your layer. All the pixels that are not 0% transparent are not their true color, as Premultiplied Alpha would describe it. I have not read this terminology anywhere, but personally I would kinda call this a "lossy" form of Alpha, since the true color values are lost and are not independent from the Alpha, unlike Premultiplied Alpha. Why am I telling you all this? Fundamentally I just want to check if I understand this concept, because there is so much conflicting information on the internet it's not even funny. I am so deep in the rabbithole right now that I question if some softwares even use the terminology correctly, and C4D is one of them. You know how C4D has this nice little "Straight Alpha" tick box in the render settings? Well, according to the manual it does this: Am I completely crazy now or is this not EXACTLY what I, and the Blogpost I linked above, describes as Premultiplied Alpha? Because we have RGB and Alpha as separate, independent components? Another example, if you just search for "Straight Alpha" on the internet, you might find this image: This is the same story as above. Doesn't the Straight Alpha example look exactly like Premultiplied Alpha, and the example for Premultiplied Alpha like what Straight Alpha really is? I truly feel like I'm taking crazy pills here, and I hope someone more knowledgable in the whole Color Science / Compositing field with can tell me where the hell I am wrong. Did I misunderstand how these two concepts will actually look like in practice, did I miss some important detail, or is there just so much misinformation about this topic EVERYWHERE? If you've made it to here, thank you for listening to my ramblings. I hope I can be enlightened, otherwise this is going to keep me occupied for forever...
-
ryoya namikata joined the community
-
namikata ryoya joined the community
-
namikata joined the community
-
KoiLogic joined the community
- Last week
-
AXISandSPACE joined the community
-
Thanks. I hadn't seen anything from GDC or NAB so I was concerned Maxon was scaling back on its event coverage. I look forward to seeing these when posted.
-
Hey Jeff - Maxon is recording the NAB presentations and plans to post them 1-2 weeks after the show.
-
NAB is another event Maxon advertises guest speakers but doesn't stream or show the recorded live event afterward. Instead they put up 30 second videos on IG with goofy music for each presenter. Maxon was always a leader in live streaming from the events they went to. What happened Maxon?
-
The Classic - Carpet roll! 120_Carpet_Roll(MG+XP).c4d
-
Lava lamp with scene file, attachment is missing in one of the posts above : ) 18_Lava_Lamp.c4d
-
Pm request - point in polygon. This is the simplest way to detect if point is inside any polygon. Test location must intersect with polygon on all axes for result to be true 247_Point_in_polygon.c4d
-
Welcome back, nice to see you here again 🙂
-
Hi Hello from Finland. 🙂 I am back to forums and was registered at the old c4dcafe back in 2005. Not been able to take part of community for long time since I started to study, work and take care of 2 kids. Still using Cinema 4D but also learned Blender too. Currently studying information technology also as oldtimer geek. We learn Linux and servers etc.
-
@Mash. Ha. I'm picturing two people needing to complete this sequence. Like launching a missile. "On my count, hit Shift on your keyboard and I'll do the same. I will use a pencil duct-taped to my head to press Delete." Seems like the ESC feature should kill ALL searching, or at least give you the option to stop searching this directory or all searches. Right now it just kills the current folder it is searching. In my case the other day, the Google Drives that are shared with me might be in the 20-30 range, each with their own mass of folders. I gave it a couple hours, but hitting ESC like a woodpecker, but just too much.
-
I haven't watched the series yet myself, but that title sequence is wonderful. And the music is as harmonically interesting as the visuals and techniques are to us CG guys. Perfect alternating consonance and dissonance. For those of you who have an interest in such things, here's Charles Cornell to explain why that's also great ! CBR
-
to the forums, we are glad to have you onboard!
-
HappyPolygon started following Severance - Backstage and Breakdown
-
Original title: Severance TV Series, 2022–, TV-MA, 50m Director: Ben Stiller Creator and writer: Dan Erickson Stars: Adam Scott, Britt Lower, Zach Cherry Genre: Drama, Mystery, Sci-Fi, Thriller Plot: Mark leads a team of office workers whose memories have been surgically divided between their work and personal lives. When a mysterious colleague appears outside of work, it begins a journey to discover the truth about their jobs. Fun Facts: Due to a shortage of soundstage space, production designer Jeremy Hindle had to create different areas of the severed floor by rearranging the hallway sets and using VFX to lengthen them. The opening running sequence of season 2 was accomplished with a mixture of elements: a man running with a camera with Adam Scott, a treadmill, VFX to extend hallways/merge shots and a robotic camera rig that moved so quickly around Scott's head that he had to rehearse his movements very specifically to avoid potential injury. Intro created by Oliver Latta Software used: Houdini SideFX Houdini Maxon Cinema 4D Pixologic Zbrush Nuke