How to average color

  Рет қаралды 172,970

Gneiss Name

Gneiss Name

Күн бұрын

Talking about the pitfalls of averaging colors and how gamma and color space affects it.
Discord Link: / discord
BisectHosting was gracious enough to provide us with the Minecraft server we use for the community. If you are in the market for a server then you can use my code gneiss to get 25% off the first month when using any of their gaming servers.
bisecthosting....

Пікірлер: 302
@gneissname
@gneissname 4 ай бұрын
Small correction: I wrote and said square root and square in the wrong order when I was showing the conversion of the colors on the board. The values were correct, just wrote it wrong. Also 13/3 is 4.333, not 6.5.... i changed the divisor and didn't update the answer. just horrible. I added a little correction video to the appropriate place in the video.
@Monkeymario.
@Monkeymario. 2 ай бұрын
hi
@IFlyingTea
@IFlyingTea 4 ай бұрын
So it's "Computer Color is Broken" all over again
@gneissname
@gneissname 4 ай бұрын
I found that video while I was editing the first version of this and the candle explanation was so good I decided to replicate it and re-record the episode. The Minecraft gamma that I put back at the end was going to go there originally.
@tomikun8057
@tomikun8057 4 ай бұрын
haha this reminds me of the captain disillusion video
@ImpossibleEvan
@ImpossibleEvan 4 ай бұрын
Human eyes are broken and computers don't pander to us
@raeplaysval
@raeplaysval 4 ай бұрын
or “human vision is broken”
@HappyBeezerStudios
@HappyBeezerStudios 4 ай бұрын
@@raeplaysval indeed it is. Green is the brightest and pink doesn't exist.
@SarahImperial
@SarahImperial 4 ай бұрын
To be honest, I wasn't expecting the geologist Minecraft KZbinr to solve one of my biggest problems with doing pixel art out of nowhere, but I'll be danged. I've always had trouble figuring out how to do gradients in my pixel art, especially with the low color palette, and now I've got a pretty quick shorthand for calculating good average colors/have a strong idea where to color pick if I don't want to math it out. So uh... genuinely, thanks a bunch!
@anj000
@anj000 4 ай бұрын
If you are rotating pixel art there is better way of doing this then averaging the colors. See Rotation by Shearing
@rainbowcraft2694
@rainbowcraft2694 4 ай бұрын
For palettes if I need a middle color I make a pixel of color A and then put color B over it at 50% opacity to get color C. I don't know how the result maths out but I can do it without having to math it out or anything. I can also fine tune the color manually afterwards. I'm curious if this method is accurate or not but don't want to do the math for it-
@christophfischer2773
@christophfischer2773 4 ай бұрын
I am convinced Gneiss could make me watch paint dry.
@gneissname
@gneissname 4 ай бұрын
Challenge accepted.
@joaocomtil_
@joaocomtil_ 4 ай бұрын
@@gneissname He's gonna make a whole video about how drying paint changes slightly in color and the mechanics of paint drying with simulations in Minecraft (idk what i'm talking about)
@VGACGAEGA
@VGACGAEGA 4 ай бұрын
​@@joaocomtil_lol
@frostebyte
@frostebyte 4 ай бұрын
I'll watch, dead serious.
@aleksandrstinchcomb2840
@aleksandrstinchcomb2840 4 ай бұрын
@@gneissname Oh goody, now I have something to look forward to! You've already accepted the challenge! No takesy backsies!
@rav3nston3
@rav3nston3 4 ай бұрын
i really hate when the messy interpolation averaging happens in pixel art stuff, it looks blurrier because it's not taking the most prevalent color and displaying that, it's just mixing them together and assuming that'll look right
@oblivion_2852
@oblivion_2852 4 ай бұрын
There's a great video by matt parker about how skews can rotate images without messing up the overall image
@rav3nston3
@rav3nston3 4 ай бұрын
@@oblivion_2852 oh i use aseprite, it's got a good system for scaling and rotating, might check that vid out though!
@Fire_Axus
@Fire_Axus 4 ай бұрын
your feelings are irrational
@riley1636
@riley1636 4 ай бұрын
actually, they're completely rational. the world is not as good as it could be and they wish it was better. thats pretty in accordance to reason or logic.
@thezipcreator
@thezipcreator 4 ай бұрын
for pixel art just use Nearest Neighbor to resize. averaging colors together works well for large images
@aliasd5423
@aliasd5423 4 ай бұрын
Between you and Acerolla, I’m really glad we’re getting quality content on youtube about OKLAB
@gneissname
@gneissname 4 ай бұрын
Someone commented about Acerolla on another video and I wasn’t familiar, watched some stuff since and now subbed. I didn’t know they talked about Oklab.
@RePorpoised
@RePorpoised 4 ай бұрын
Yeah, his video “Your colours suck (it’s not your fault)” is the video about it. It more or less introduced and explained to me most of the general terms related to digital colour. Really appreciated that video.
@aliasd5423
@aliasd5423 4 ай бұрын
@@gneissname like @reporpoised said above 👆, his “your color suck” video is pretty well made about it, he’s got a quick and punchy editing style with a lot of zoomer memes.
@morgan0
@morgan0 4 ай бұрын
i’m glad it’s gotten more attention, it’s been a favorite of mine for years
@GoodGamer3000
@GoodGamer3000 4 ай бұрын
"Let's look at this *normal* Minecraft painting" 0:14
@ProfessorBuge
@ProfessorBuge 4 ай бұрын
Very and completely normal, 100% vanilla
@ZrSiO4-ZrSiO4-ZrSiO4-ZrSiO4
@ZrSiO4-ZrSiO4-ZrSiO4-ZrSiO4 4 ай бұрын
Looks gneiss to me
@bebcky
@bebcky 4 ай бұрын
Common misconception about sRGB gamma, the gamma curve of the sRGB color space actually comes from the response curve of a CRT display, not the human eye, the two just happen to be similar to each other
@rebmcr
@rebmcr 4 ай бұрын
That's not just happenstance, the three phosphors in CRTs were selected (from a much bigger pool of possibilities) BECAUSE they match closely with human cone cells.
@penguino118
@penguino118 4 ай бұрын
CRT superiority is proven yet again.
@Soandnb
@Soandnb 3 ай бұрын
@@penguino118 I mean, that extends to modern display tech as well.
@sneekcreeper689
@sneekcreeper689 4 ай бұрын
That love how when you first learned about color for computers you think oh it's just RGB. Then you get Gama thrown at you and color space .etc
@Obsidianninja11
@Obsidianninja11 4 ай бұрын
Cool. This is what you were talking about in that discord stream!
@gneissname
@gneissname 4 ай бұрын
Yeah, this is the sidetrack I got on while making the texture noise and then got sidetracked from this one to make the paining one.
@rocksocar
@rocksocar 4 ай бұрын
The way you visualise in Minecraft is so cool. I don't know how much of it is actually in engine or how much is editing magic, but either way you create a very immersive learning experience
@matttryc1907
@matttryc1907 4 ай бұрын
I always love these videos! In undergrad I worked on a project with a species of fish that would change color based on its behavior and social rank. I used an LAB color space to quantify the changes in their color through time!
@alfiemac9928
@alfiemac9928 4 ай бұрын
1:55 I feel like this applies to alot of things in life, for example if your running away from one lion or two lions is much more important than 102 or 103 lions, same as if you lost 1kg or 2kg of weight is much more important than 52 kilos or 53 kilos.
@gneissname
@gneissname 4 ай бұрын
The real truths
@MagicGonads
@MagicGonads 4 ай бұрын
the lions example is true, the weight example is not what matters with non-linear scales is the absolute reference frame, not the relative reference frame the significance of a loss or a gain of 52kg vs 2kg depends on how much you already weigh e.g. if you are 50kg, a 52kg loss would mean you... have negative mass? with the lion example, if our measurements began at -100 lions, then the difference between adding 102 vs 103 lions would be quite significant and the difference between adding 1 or 2 lions would not. You count lions starting at 0 lions whereas you didn't specify where the loss/gain began in the weight example.
@KindredKin
@KindredKin 4 ай бұрын
Exception when there's threshold values. E.g. you may be able to barely lift 40kg, but 41kg is too much and you injure your muscles instead.
@thespinningcube
@thespinningcube 4 ай бұрын
One misconception about gamma correction I'd like to address-cameras don't do gamma correction simply because applying a curve to the colors makes them look more accurate to our eyes. We do it because the monitor is applying the opposite curve to the colors being fed into it (approximately but not exactly an x^2.2 curve). The two curves cancel out. The camera stores the colors in a nonlinear space, and the monitor takes those values which are in a nonlinear space and makes them linear again. One benefit of this is that sRGB makes it so that the brightnesses corresponding to the RGB byte values appear to be spaced apart evenly to our eyes (they are distributed more evenly in perceptual brightness), which makes color banding less noticeable than if the relationship was perfectly linear. Another detail is that the sRGB curve was chosen because it closely matched the curve found in CRTs.
@orbik_fin
@orbik_fin 3 ай бұрын
Exactly. And the reason it's called gamma *compression* is that using the nonlinear mapping allows using fewer bits to represent color. 8 bits per pixel is enough in sRGB, but you need at least double that in linear color to avoid noticeable banding.
@clangauss4155
@clangauss4155 4 ай бұрын
It's a minor tangent to your intro, but maybe a young artist who catches this would be curious: needing to average color values of pixels when transforming an image only happens when the image is a raster or a bitmap. The same need doesn't exist for vector images.
@incription
@incription 4 ай бұрын
vector images are still rastered into pixels, and when you have edge cases like half a pixel being filled, or working with super sampling / anti aliasing, you may need to worry about color spaces
@Gandhi_Physique
@Gandhi_Physique 4 ай бұрын
@@incription Vector images and raster images are two different things though. Wouldn't that only come into play if you make the decision to rasterize the image? (I just learned this in a textbook lol, I don't know anything)
@official-obama
@official-obama 4 ай бұрын
@@Gandhi_Physique you need to rasterize it if you want to display it on a screen that has pixels
@incription
@incription 4 ай бұрын
you have to rasterize a vector image when you render it to the screen@@Gandhi_Physique
@stephaneduhamel7706
@stephaneduhamel7706 4 ай бұрын
​@@official-obamabut that's something that only needs to be happening at the very end of the pipeline, after applying rotation and scaling. Rasterizing a vector image before rotating or scaling it would be a very dumb idea, for many reasons.
@omayoperations8423
@omayoperations8423 4 ай бұрын
Man these are always great videos.
@MrZomboman101
@MrZomboman101 4 ай бұрын
these videos are always so intresting, i love how u can be talking about a topic that has nothing to do with minecraft but still have it perfectly fit with the game
@deikay5414
@deikay5414 4 ай бұрын
super super interesting stuff. this might sound like an insult at first, but the video felt really long. not because it was boring, but because you crammed so much information in the first three minutes i thought the video was gonna end. there aren't many videos that i find have so much helpful info. keep it up!
@jesteh
@jesteh 4 ай бұрын
You put a lot of effort into your content. You also have a lot of passion. I think that's awesome!
@bengoodwin2141
@bengoodwin2141 4 ай бұрын
I had an idea that might make for a good geology video. Given that the overworld is explicitly not made of granite, andesite, diorite, basalt, tuff, or calcite, and that deepslate is some kind of slate or other sedimentary rock under high pressure, and the evidence of stone being some kind of carbonate rock due to the abundance of caves, and volcanic activity only at the deepest points of those caves, I think a plausible explanation for the overworld's strange geology is that the entire world as we know it is made up of what used to be layers of coral-like organisms, hundreds of meters thick, and that the deepslate layer was once the ancient seafloor of a water world.
@jikkohelloua5922
@jikkohelloua5922 3 ай бұрын
I just love, how everything in your videos make perfect sense, and you seem like a very educated person, and then spontaneously 13/3 is 6.5... that makes me laugh so god damn hard
@DakkyW
@DakkyW 4 ай бұрын
As a programmer and a color science & art nerd, your vids are so nice to see and learn from
@Gandhi_Physique
@Gandhi_Physique 4 ай бұрын
World record for fastest intro ever. Ngl it sounded like I joined part way in the video, then I realized you said "Gneiss here" but fast lol.
@IanZainea1990
@IanZainea1990 3 ай бұрын
The charts are completely confusing. But this has been figured out. Nuke, the software used for compositing in film. Converts everything to linear color space. So the average is just the average. Then you convert the whole finished thing back to whatever colorspace.
@m4jci6
@m4jci6 4 ай бұрын
These videos about color are so fire I can't get enough of them.
@paper8635
@paper8635 4 ай бұрын
1:59 reminds me I should listen to Bill Evans again, Thanks! Also, when showing the better average at 2:43, the arch on the graph reminds me of Lambert's Emission Law, even though that has more to do with value rather than color for art related purposes.
@latrapa918
@latrapa918 4 ай бұрын
0:01 looks like Minecraft terracotta
@Googahgee
@Googahgee 4 ай бұрын
Because that’s what it is
@dona2985
@dona2985 Ай бұрын
You're not gonna believe what I'm just about to tell you
@LarsDonner
@LarsDonner 4 ай бұрын
I really hate the term "gamma correction". There is nothing correct about it and the term itself doesn't tell you weather or not it means applying or removing the gamma curve. IMO we should just say linear or gamma space, which is much clearer.
@decb.7959
@decb.7959 3 ай бұрын
The term "gamma encoding" is what I use, since the point of gamma is to store and transmit color. It helps me remember that my program needs to decode color values into linear space on the way in, and re-encode them into gamma space on the way out (then the monitor will decode them again when it displays them).
@OfOodlesAndNoodles
@OfOodlesAndNoodles 4 ай бұрын
as a web developer that still doesn’t quite get the CSS color v4 spec, i seriously appreciate these videos
@VoidySan
@VoidySan 4 ай бұрын
Bro, your teaching style × high quality Minecraft visual examples is. Like. Incredible for my soft litl brain.
@goddessdeedeebubblesofimag7789
@goddessdeedeebubblesofimag7789 Ай бұрын
Wasn't expecting this to be set in Minecraft at all; color me pleasantly surprised
@canhedotricks6078
@canhedotricks6078 2 ай бұрын
I can’t believe the most important lesson on colour of my visual artist career is being given to me in Minecraft
@gneissname
@gneissname 2 ай бұрын
Crazy right? Minecraft is a pretty wide reaching platform. It’s great for stuff like this.
@decb.7959
@decb.7959 3 ай бұрын
You mentioned averaging colors to scale and rotate an image. If you want yet another extremely deep topic filled with subtle misinformation, you can look into filtering, sampling, and antialiasing, which is the math concerning how, exactly, you combine those pixels. Here's some base-level knowledge: - The Sampling Theorem says that for any signal, you can perfectly reconstruct it from a series of samples, as long as the sample rate is greater than twice the highest frequency in the original signal. - For audio, that means using an analog low-pass filter during recording tuned to half the sample rate, and then reconstructing the signal with something like a Sinc filter. Since humans can only hear up to around 20 kHz, you only really need to sample at around 40 kHz (although most audio is sampled slightly higher because low-pass fillters aren't 100% perfect). - For images, it's a bit harder since there is a potentially unlimited frequency (a checkerboard from far away, a hard edge, or a very small object are all examples of high-frequency features). Applying a low-pass filter to an image essentially means blurring. Many cameras actually have an optical low-pass filter, which is just a slightly blurry piece in front of the sensor. For video games, it's a lot harder, since there isn't a real-world analog input to start with. You have to sample at as high a frequency as you can, which means rendering more samples than there are pixels on the screen. Obviously that gets slow quickly, so there are various techniques that try to approximate the result or gather the samples over multiple frames. Sampling is also needed when performing operations on images, such as scaling or rotation. In this case it's typically called resampling. - Image sampling is a bit messier than audio sampling, because if you use a pure-frequency approach such as Sinc, you end up with distracting ringing artifacts. On the other hand, a filter that is too soft will make the image appear too blurry. Typically the Mitchell and Lanczos filters are considered pretty good if you can spare the processing power in your use case, however they are still not perfect, and it depends on use case. - Just averaging the 4 pixels that land in a square is called box filtering, and is one of the lowest-quality filters. It still leads to lots of aliasing in many cases. However, many programs use it because it's simple and it runs fast, leading to many people believing that there's no reason to use anything else. It's what's used in most real-time applications such as vector graphics rendering, web browsers, video games, etc. I would recommend the following articles if you want to know more: - Xiph's article "24/192 music downloads and why they make no sense" - Has some introductory information about audio sampling. - Alvy Ray Smith's Microsoft memo "A Pixel Is Not a Little Square" - A very good (although from 1995) article about many of the misconceptions about sampling and filtering. - The ImageMagick docs page on resampling filters - Provides an overview and comparison of some different resampling filters, as well as a conclusiong on good default choices at the end.
@Soandnb
@Soandnb 3 ай бұрын
Just wait until you discover the joys of a "Scene-referred" color space. Or, in other words, a colorspace with no limit to how bright a color can get. It's the "color space" real life is in, and it's useful in 3D rendering for calculating lighting since there's such a wide range of brightnesses you can have. I've adopted it for my 2D art and it makes it remarkably easy, combined with a linear gamma and a tonemapper, to make great looking lighting with minimal effort.
@bananajuicetech
@bananajuicetech 4 ай бұрын
Love this deep dive. I'm always game for more color space talk. Thanks for sharing.
@decb.7959
@decb.7959 3 ай бұрын
Gamma is just a compression method, so that dark colors (where you demonstrated the difference matters more) cover more of the 256 possible values. The monitor undoes the gamma function, so it's still outputting linear values (apparently this was just a useful side effect of CRT monitors, and is why gamma exists in the first place). It is objectively incorrect to do any operation to colors before they have been decoded from gamma space, and yet that's exactly what most software does. Example of intended usage of gamma: I'm working on a Minecraft shaderpack. The textures are stored in PNG, which uses sRGB space and is thus gamma encoded. The first thing my code does when it reads a texture value is raise it to the power of 2.2, bringing it back into linear space. No information is lost here, since my shader is working with 16 bit floats. Once all of the calculations are done, such as lighting and post-processing, the very last step in the shader is to encode the result into gamma space by raising it to the power of 1/2.2. When the monitor receives the value, it converts it back into linear space and displays it (from what I know, most software and monitors just use a power of 2.2, rather than the piecewise linear / 2.4 curve specified in the standard).
@GOGNLC
@GOGNLC 3 ай бұрын
The amount of knowledge in this minecraft video.... waiting on that geo one💪
@flatikk
@flatikk 3 ай бұрын
you could say that the playback slider of this youtube video is a uniform space, except not relative to color, but to instanity, because linarly to how far I get into the video it perceptually starts feeling more like a fever dream
@Neptoid
@Neptoid 4 ай бұрын
If this man did math animations or video essays about the math or code it would just become my main resource on learning about computer color
@almicc
@almicc 4 ай бұрын
Very neat demonstrations, and here I thought you just did geology stuff
@docopoper
@docopoper 4 ай бұрын
At this rate you're going to do a video on premultiplied alpha.
@tiddly5
@tiddly5 4 ай бұрын
if i remember correctly, captain disillusion did a pretty good video on that
@givrally7634
@givrally7634 4 ай бұрын
The same problem happens when you want to create a color gradient. If you simply interpolate linearly between the two colors, then the middle is often kind of greyed and washed out. That's because, if you take any two points in a cube, the average of the two points is often closer to gray than the two points. However, if you interpolate over HSV or HSL instead, you get a much more pleasing result that keeps its luminance and saturation ! The problem is that if the hues are very far away, or on different ends of the spectrum, you might have a gradient that goes red to yellow then green then blue then pink, instead of the red to pink gradient you wanted. It can be solved with a bit of cycle logic, but not from, say, 0° to 180°. I think there's some merit to a nuanced approach between the two, where you interpolate both in RGB space and in HSV space, then convert both colors to RGB and do a weighted average, with the weight being a chosen parameter. 0 gives you full HSV, 1 gives you full RGB, and between the two is a gradient of gradients.
@oliviareillyyoutube6652
@oliviareillyyoutube6652 3 ай бұрын
I LIKE THE “no” IN THE TITLE THO IT MAKES ME BRAIN HAPPY
@OJapaTerrorista
@OJapaTerrorista 4 ай бұрын
There's a way to show that using a simple average doesn't give the right color perceived by our eyes. Make a 2x2 pixel grid, with two different colors in a checkers pattern, and apply this pattern to a bigger image. Make sure the zoom still allows you to see the individual pixels. Then blur the image by squinting your eyes, or removing your glasses. Now find the RGB values of the color you saw, it will be lighter than the simple average.
@aepokkvulpex
@aepokkvulpex 4 ай бұрын
Ohhhh this is definitely a big pet peeve. I think I've seen Captain Disillusion do a video on something very similar to this very topic, iirc "the horrors of the alpha chanel"? If you haven't seen it, I would highly recommend. I think you'd like it and a few of his other videos tbh
@SlamJamMusic
@SlamJamMusic 3 ай бұрын
fun fact: iOS uses the wrong blurring algorithm
@nathanitet
@nathanitet 4 ай бұрын
Your videos are so interesting, I really enjoy your style of content!
@ThatJay283
@ThatJay283 4 ай бұрын
for colour spaces, it also depends on what kind of thing you're trying to show as to what colour space is best. for example, to simulate what colour you'll get when you mix 2 different lights together (or really anything to do with lighting or transparency) you'll wanna do this in linear RGB space rather than sRGB or OkLab
@d3crypt3d
@d3crypt3d 4 ай бұрын
i love your freaking good videos about gamma/color
@ary0oYT
@ary0oYT 4 ай бұрын
Such a banger video. Keep up the good work
@Alex_192.
@Alex_192. 3 ай бұрын
“No matter what, there is always averaging” *Skew rotating joined the chat*
@DeSch0ft
@DeSch0ft Ай бұрын
I don't ever need this information but I still wanted this information.
@HappyBeezerStudios
@HappyBeezerStudios 4 ай бұрын
It's been one of the things that has been a pet peeve for me since basically forever. So far that I tend to retouch after averaging just to fix the issue. And yes, our perception is indeed logarithmic. It is important to know if there is 1 lion or if there are 3. But the difference between 10 lions and 13 lions isn't important, it's still a lot of lions coming after you. And the most sensitive area of the human eye is in the green area. Not only is there an overlap of different cone cells, but rods also have their peak there. Oh and many games have separate brightness and gamma sliders. And they do what their name suggests.
@m13253
@m13253 4 ай бұрын
3:27 The average gamma of sRGB is actually 2.2 instead of 2.4. Although there is 2.4 in its formulae, it averages down to 2.2.
@Thee_Sinner
@Thee_Sinner 4 ай бұрын
The best kind of correct, indeed.
@thomasfplm
@thomasfplm 4 ай бұрын
When you started talking about using the averages of numbers, what I thought was that it would maybe be better to use a logarithmic scale for the average. Like the example you gave with the candles, my guess is that we would perceive proportional increases. Adding adding 4 candles to already existing 4 candles would have about the same effect as adding 1 candle to an existing candle.
@2JRaz
@2JRaz 4 ай бұрын
I think some gneissname Minecraft calculus explanations would be very interesting to watch. Could be good for trying to learn those concepts too, especially for multivariable calculus with 3 Dimensional concepts! Just a suggestion
@coldwaterstudio3658
@coldwaterstudio3658 4 ай бұрын
Holy fuck I need this thank you so much. Thank you for your beautiful brain.
@rainbowcraft2694
@rainbowcraft2694 4 ай бұрын
I just put down a color and then put the second color over it at half opacity, then color pick the result. That gets what I assume is an average between the colors. It's always lighter than the darker color and darker than the lighter color.
@Dogo.R
@Dogo.R 4 ай бұрын
Its craaaaazy that you called the human body dumb. Considering we havent been able to replicable 99.9% of what it can do. Nevermind repicate it efficently. Even crazier that you then immediately went on to explain a way that our eyes are actually SMARTER than a camera. Imagine having ISO for different parts of the scene insead of an ISO for the whole scene like cameras. Cameras dumb.
@stephaneduhamel7706
@stephaneduhamel7706 4 ай бұрын
Mathematically, It shouldn't matter at all in which linear color space you calculate the average. That's the whole point of linearity. The results should be the same. Let's take two linear color spaces, let's call them (A B C) and (X Y Z) for example. A,B,C,X,Y, and Z are vectors representing the primary colors of these spaces. Now let's take and arbitrary color D. It has cooordinates (a, b, c) in colorspace (A B C), and (x, y, z) in (X Y Z) D = a*A+b*B+c*C = x*X+y*Y+z*Z |a| |x| D = (A B C). |b | = (X Y Z). |y | |c| |z| Now, E = d*A+e*B+f*C = u*X+v*Y+w*Z (coordinates (d,e,f) in (A B C), and (u, v, w) in (X Y Z) Then, if we take (D+E)/2, we get (a*A+b*B+c*C + d*A+e*B+f*C)/2 = A*(a+d)/2 + B*(b+e)/2 + C*(c+f)/2 |a| |d| |a| |d| |(a+d)/2| (D+E)/2 = 1/2 *( (A B C) .|b| + (A B C).|e| ) =1/2* (A B C). ( |b| + |e|) = (A B C) . |(b+e)/2| |c| |f | |c| |f | |(c+g)/2| so the average has coordinates ((a+d)/2, (b+e)/2, (c+f)/2) in colorspace (A B C) Using the same resoning, it also has coordinates ((x+u)/2, (y+v)/2, (z+w)/2) in colorspace (X Y Z) And assuming matrices (A B C) and (X Y Z) are inversible, you can convert the coordinates of the average from on space to the other and see that you end up with the same result as if you calculated in the other colorspace to begin with. |(a+d)/2| |a| |d| |a| |d| |x | |u| |(x+u)/2| (X Y Z)^-1 . (A B C) . |(b+e)/2| =1/2 * (X Y Z)^-1.( (A B C) .|b| + (A B C).|e| ) =1/2( ( (X Y Z)^-1.(A B C). |b| ) + ( (X Y Z)^-1.(A B C). |e|)) = 1/2(|y | + |v|) = |(y+v)/2| |(c+g)/2| |c| |f | |c| |f | |z | |w| |(z+w)/2| In both spaces, you can just average the coordinates to get the "true" average color. Which makes me wonder why the OKlab average is different than the linear sRGB average. Maybe OKlab isn't linear enough?
@stephaneduhamel7706
@stephaneduhamel7706 4 ай бұрын
Ok I checked OKlab's specs, it is NOT a linear color space. So no wonder the averages are different. (Also sRGB eotf approximates to gamma 2.2, not 2.4, this could also affect the results, but probably not as much as oklab's non-linarity)
@hollyjarvis1131
@hollyjarvis1131 Ай бұрын
Came here thinking I was going to learn a thing or two about color theory for my work as a graphic designer. Ended up watching a Minecraft tutorial about color theory for my work as a graphic designer. Just wondering how I'll be able to explain that to my boss now...
@Pheonix1328
@Pheonix1328 4 ай бұрын
The candle example is kind of weird to me. Going from 1 to 2 is an increase of 100%, but going from 99 to 100 is just a 1.01% so it's not the same in both cases. Stand-up Maths did a video called "Rotation without rotating." that shows how to rotate pixel art (and images in general) without averaging or losing any information.
@cephelos1098
@cephelos1098 4 ай бұрын
"But no matter what, there is always averaging" Worth noting that there are ways to get non 90° rotations without any averaging or color changing at all (like doing 3 shears), but outside of authentic low-resolution pixel art, it's fairly limited in actual use
@KazmirRunik
@KazmirRunik 4 ай бұрын
Oh man, I went down this very same rabbit hole recently when investigating why they changed the official color scheme of Neptune, because when I look at Neptune through a physical telescope, I don't see the image that's now being pushed (though I also don't see the dark blue, either, it's more something in between). The new image of Neptune came from a reprocessing of the image's gamma correction, which could be what our eyes see from up close, but from far away where less of its reflected light reaches us & it gets diffused by the atmosphere, it blends more into the darkness of the sky. It does look at least noticeably different from Uranus when looking at both of them from the ground.
@EliasWolfy
@EliasWolfy 4 ай бұрын
2:58 OMG, this really looks like a mix of the two colors better than the color on the left side!
@Aphelia.
@Aphelia. 4 ай бұрын
"Let's look at this normal Minecraft painting" yeah this painting is so gneiss
@leviofun1798
@leviofun1798 2 ай бұрын
1:59 I first thought the picture is a joke about teleporting at y coordinate but then remembered that sea level is 62
@IgnasiaSundavr
@IgnasiaSundavr 4 ай бұрын
“Geology of Vintage story” when?
@U.Inferno
@U.Inferno 4 ай бұрын
I was curious how Geometric Mean (multiply then take the square root instead of add then half) would apply to colors so I randomized two and calculated the geometric: Color 1: #1a7775 Color 2: #21500a Geo Mean: #1D6222 The Geometric mean will never be brighter than the Arithmetic mean. sqrt(xy)
@maxmanium2032
@maxmanium2032 4 ай бұрын
Been messing with Doom's color palette for a while now. It taught me a lot...
@schnapsi.d.5434
@schnapsi.d.5434 4 ай бұрын
You can rotate images by skewing them only, you don't lose pixels and don't have to average
@robdoghd
@robdoghd 4 ай бұрын
reminds me of ‘computer color is broken’ from minutephysics
@GrangerBabeGaming
@GrangerBabeGaming Ай бұрын
also check out acerolas "your colours suck" deals with a pretty similar issue. Dudes more shaders focused than pixelart, but the same kinda issues apply.
@Albert-yu1cg
@Albert-yu1cg 4 ай бұрын
yay new colour video
@quinntaylor1170
@quinntaylor1170 4 ай бұрын
This man is a genius with display entities.
@Matojeje
@Matojeje 4 ай бұрын
I'm excited that we're going down this rabbit hole
@EvenFox
@EvenFox 4 ай бұрын
The information from this video: ->🧠->
@daktotathecolossus7404
@daktotathecolossus7404 4 ай бұрын
These are so fascinating
@6lbs._onion
@6lbs._onion 4 ай бұрын
I could swear I have seen this same topic being covered in a completely different method, by a completely different channel, many, many moons ago.
@Leoiswhoo
@Leoiswhoo 4 ай бұрын
you lost me but the visuals go crazy
@The_NSeven
@The_NSeven 4 ай бұрын
Color, math and Minecraft. 3 of my favorites :)
@inybisinsulate
@inybisinsulate 4 ай бұрын
Nothing worse when the mipmaps optimize 0rgb and 255r0gb to brown. It just merged them, point UV assignment just need 8x8 pixels necessary which looks so wrong on the map.
@CraftMine1000
@CraftMine1000 4 ай бұрын
It's been fun seeing the arc from geologist to colorist
@juseldus
@juseldus Ай бұрын
Great Video! Now explain Photoshop-masks in Minecraft
@givowo
@givowo 4 ай бұрын
Huh neat. I'll take this into account when working with shaders
@NoenD_io
@NoenD_io 3 ай бұрын
🖥️💻"Beep boop beep we cant avarage🤖🤖🤖🤖🤖"
@TheWorstLexie
@TheWorstLexie 3 ай бұрын
OMG I LOVE THIS STUFF SM
@ShinoSarna
@ShinoSarna 4 ай бұрын
It might be because I'm tired but I have no idea what this video is about. I understood the color averaging thing due to srgb no problem, but I have literally zero idea what the 3D graphs were supposed to show and what was plotted on them.
@slavdew
@slavdew 4 ай бұрын
Damn those MC visualisation looking sick
@maxkasters2198
@maxkasters2198 3 ай бұрын
Man, I love this channel +sub
@dliessmgg
@dliessmgg 4 ай бұрын
7:15 i understood all the arguments in the video but ngl to me the blending without gamma still looks better to me
@inv41id
@inv41id 4 ай бұрын
This is probably a case of being used to seeing incorrectly blended colours everywhere, since it is the default or even the only option in a huge amount of software
@fibbooo1123
@fibbooo1123 4 ай бұрын
Your videos about color are great! Any chance you could do one about how colorblind eas changes the perception?
@emilianozamora399
@emilianozamora399 4 ай бұрын
Hey gneiss I’m asking to see what rock type you think netherrack is Context is that this total overhaul mod called terrafirmacraft adds 20 rock types to the game based on real rocks, and these can be used to knap tool heads with stats based on the type of rock they’re made from, being sedimentary, metamorphic, igneous extrusive and intrusive. The dev has been making an addon to implement the nether in the same theme and while playtesting I realized that netherrack and black stone don’t have rock types assigned because of course they don’t they’re fictional stones, but this also means we can’t knap tool heads from them. Someone theorized that they’re either igneous intrusive or metamorphic in the context of the nether being deep in the crust and very hot making it either or depending on how long the stone has been formed
@gneissname
@gneissname 3 ай бұрын
hey, I think blackstone can be a gabbro. Netherrack has lost some off its meatiness over the years but i think it still should have some organic component maybe. There are some thermophiles that are also sulfur reducing microbes.
@greenberrygk
@greenberrygk 4 ай бұрын
I love this guy
@VGACGAEGA
@VGACGAEGA 4 ай бұрын
I never thought i could learn so much from minecraft
@Vulzie
@Vulzie 4 ай бұрын
as someone who knows nothing about the topic I think values of color should be calculated on a logarithmic scale rather than a linear scale because our eyes compare color by their ratio. the difference between 1 candle and 2 candle is a 100% increase in light the difference between 100 candles and 101 candles is only a 1% increase in light. so thats why our eyes have a much harder time noticing the difference I can't be the first person who's thought of this though, right?
@gneissname
@gneissname 4 ай бұрын
There is some strange stuff that happens with our eyes and how we actually process the light and colors before it even gets to our brain. The opponent process was wild to me when I learned of it and I hope to do a video on it and the lms color space and why RBY is wrong and right at the same time.
@MichaelPohoreski
@MichaelPohoreski 4 ай бұрын
@@gneissnameWait till you see Edwin Land’s _Retinex Theory_ hehe. 😜
@soupsoup7831
@soupsoup7831 4 ай бұрын
I love your videos on colors
@discohirsch
@discohirsch 4 ай бұрын
This was so helpful even tho I only gonna use it for Photoshop
@ryan___ryan2711
@ryan___ryan2711 4 ай бұрын
So the gamma correction is the problem? So THAT'S why I hate using the blur tool.
Why does Minecraft keep adding new color formats?
5:02
Gneiss Name
Рет қаралды 90 М.
How does Minecraft ore compare to Earth
26:01
Gneiss Name
Рет қаралды 308 М.
Шок. Никокадо Авокадо похудел на 110 кг
00:44
ПРИКОЛЫ НАД БРАТОМ #shorts
00:23
Паша Осадчий
Рет қаралды 5 МЛН
The Real Missing Colors of Minecraft (*1.20)
10:58
Gneiss Name
Рет қаралды 188 М.
Is 8-Bit Minecraft Possible?
12:58
Inkbox
Рет қаралды 1,2 МЛН
A perceptual color space in Minecraft (Oklab)
15:38
Gneiss Name
Рет қаралды 163 М.
Are Shaders Without Mods Possible?
8:17
Legitimoose
Рет қаралды 1 МЛН
25 Mistakes You Make in Minecraft
11:44
Skip the Tutorial
Рет қаралды 2,9 МЛН
When Your Game Is Bad But Your Optimisation Is Genius
8:52
Vercidium
Рет қаралды 1,5 МЛН
The Playstyle So OP, Mojang Banned It 4 Times
13:54
XayXay
Рет қаралды 272 М.
Color Theory In Minecraft: All Lessons (Correction in description)
27:38
The Loosest Of Gooses
Рет қаралды 243 М.
1.21 Color World
21:12
Gneiss Name
Рет қаралды 48 М.
HOW MINECRAFT SOUNDS ARE MADE
7:50
Minecraft
Рет қаралды 4,5 МЛН