The coolest shader effect that nobody uses

  Рет қаралды 82,157

Kristoff Red

Kristoff Red

Күн бұрын

Пікірлер: 278
@AllExistence
@AllExistence 7 ай бұрын
Simply put, it's ugly.
@HokoraYinphine
@HokoraYinphine 7 ай бұрын
color banding but on purpose™
@JuhoSprite
@JuhoSprite 7 ай бұрын
Ye it looks like a cheap photoshop filter. Its rly bad imo
@bcmpinc
@bcmpinc 7 ай бұрын
Use a low resolution, add a dither matrix, then do the posterization and you can call it "pixel art".
@averagesnail
@averagesnail 7 ай бұрын
@@JuhoSprite and your opinion is WRONG!!!!!
@k_otey
@k_otey 7 ай бұрын
like anything, it looks good when it's done well. 0:09 is beautiful
@Beatsbasteln
@Beatsbasteln 7 ай бұрын
fun fact, if you apply the same term "y = round(x * a) / a" to an audio signal, with x being the audio signal and a being the parameter, it becomes what is typically known as a bitcrusher effect
@Solanaar
@Solanaar 7 ай бұрын
Oooh! I felt like the way the wobble-noodle deformed reminded me of that! Great observation!
@xenontesla122
@xenontesla122 7 ай бұрын
Yup! I’ve used this effect both visually *and* sonically to make music that generates animations when put through an oscilloscope
@iamsushi1056
@iamsushi1056 7 ай бұрын
That’s true smooth bitcrushing. True bitcrushing has an equal to a power of 2. (Ironically, using the same formula on the time scale produces the similar effect downsampling, which is often misconstrued or falsely marketed as “smooth bitcrush”)
@VRchitecture
@VRchitecture 7 ай бұрын
Those signal processing methods when used on different kinds of media may lead to very interesting results 👍🏻
@43tss
@43tss 7 ай бұрын
As a sound designer, wow.
@qwjd8s693pt4kaun
@qwjd8s693pt4kaun 7 ай бұрын
To get optimal (most similar to the original) posterization the OkLAB (OkLCH) should be used. This is a colorspace designed to be perceptually uniform, which means that if you split your colors in equal intervals neighboring blocks would look equally similar/dissimilar to each other. Edit: pasteurization -> posterization
@kristoffred
@kristoffred 7 ай бұрын
I'll look into it thank you for sharing that!
@Extner4
@Extner4 7 ай бұрын
@@kristoffred acerola has a great video on color selection and OkLAB colors kzbin.info/www/bejne/nKeQqJ-lbd6Jns0si=ZXssbMtmTiO1fpvQ
@seannewell397
@seannewell397 7 ай бұрын
Mmmm pasteurization - yummy milk 😜😅
@qwjd8s693pt4kaun
@qwjd8s693pt4kaun 7 ай бұрын
@@seannewell397, literally didn't cross my mind they are spelled differently, thanks In my mother tongue it's the same spelling
@SimplyWondering
@SimplyWondering 7 ай бұрын
Ok lab is super cool and I was wondering if you had seen it or not guess that answers that question
@yollie-the-dude
@yollie-the-dude 7 ай бұрын
As the son of John Posterization himself, I approve of this video 👍
@k_otey
@k_otey 7 ай бұрын
i am ashamed that i searched up "john posterization"
@lukasjetu9776
@lukasjetu9776 7 ай бұрын
​@@k_otey just wanted to google it too
@Vextrove
@Vextrove 7 ай бұрын
​@@k_otey and I'm proud of you!
@Theunjduvqhfurbs
@Theunjduvqhfurbs 7 ай бұрын
Dude, using noise and posterization at the same time to create a shadowy effect is sick. Thanks for showing me. I'm totally using this for something in the near future. Also I think that there is a game called acid knife that I'm now positive uses some form of posterization.
@AlessaBaker
@AlessaBaker 7 ай бұрын
It was briefly mentioned that this can be used for accessibility features, I would assume here you meant CVD support (Color Vision Difficiency). In general, filters that shift total screen pixels are filters to assist those who aren't vision impaired to see what we see. However, in practice, it is actually better to _only_ change the colors of things that are important - Pickups, enemy colors, etc. Unfortunately, the only real reason filters end up being the norm is largely because Accessibility is an after-thought. It becomes a lot easier when you set your base materials up to support this at the beginning of development. The reason for this is rather simple, but just because we are missing/mixing colors, doesn't mean we can't see bad ones. Purple skies, red grass, it becomes visually harder to see everything else in the game because we have to spend a lot more energy trying to interpret things we know the colors of, to the new palette. So the advice - Please only change colors, of things that are visually important to the player as gameplay relevant - not the rest of the screen. That's my little PSA.
@kristoffred
@kristoffred 7 ай бұрын
Yeah I have to look into how to properly implement accessibility stuff later. It was just a random thing I wanted to show. The real game (as shown in the multiple palettes part) gives different colors to the items and enemies which is probably good for accessibility but I have no clue honestly.
@Aeduo
@Aeduo 7 ай бұрын
Could be a useful option maybe for games with modding capabilities. It's a lot harder to expect amateurs who just don't know and just getting in to gamedev through modding to know to do this. It might make everything look bad/wrong, but if it can help to discern something _at all_ then it could still be useful in this case.
@isheros
@isheros 7 ай бұрын
A while ago I experimented with posterizstion by grabbing the closest color of an array, using the euclidean distanve formula. It worked well, allowing me to set custom palettes, but I think your approach will be more flexible and have better results. Looking forwards to future videos!
@kristoffred
@kristoffred 7 ай бұрын
I did something similar as well before I discovered that posterization exists! It can definitely work better in certain scenarios, but this solution is more flexible and can be adjusted in real time while having a set color palette can't.
@davidtirado2330
@davidtirado2330 7 ай бұрын
I personally use a mix of HSV fiddling and a sampler cube, I think it gives me more control over the color without letting me absolutely destroy the game's visuals by accident.
@iamsushi1056
@iamsushi1056 7 ай бұрын
I'd definitely look into the LAB color spaces (especially OKLAB) if you want to play around with posterizing more. LAB colorspaces, especially with posterization unevenly applied between the three color variables (different amounts for each, for example, or a different offset value (like phase shifting a sine wave, except it changes the points where the posterization starts instead)). It's one of the few that don't look too bad when unevenly posterized, in fact. There's also a set of sibling ofshoots, OKHSV and OKHSL that quantize nicely. But personally I like them better when only quantizing one or two of the variables.
@kristoffred
@kristoffred 7 ай бұрын
I'll look into those colorspaces soon!
@ghostlysander
@ghostlysander 7 ай бұрын
As a beginner pixel artist, I learned a lot from this video. I also didn't know of dark=more purple and light=more yellow, which... is a bit too simple for my taste, but it is still helpfull. Besides that, all the different posterizations will serve as inspirations for my color palettes
@kristoffred
@kristoffred 7 ай бұрын
Good luck with your pixel art journey!
@Aeduo
@Aeduo 7 ай бұрын
I imagine it's just a broad rule of thumb and not a "you must do this in all your art and it's wrong if you don't", but more an easy means to make something look more interesting and more "sunlit" than just changing brightness and no other parameter. Obviously different styles will call for different methods.
@basiliotornado
@basiliotornado 7 ай бұрын
That looks way better than i expected. Great technique
@kristoffred
@kristoffred 7 ай бұрын
Thank you!
@lepsima
@lepsima 7 ай бұрын
I've looked many examples of posterization shaders this past month, each using a slight different approach, but the simplicity of converting HSV to posterize instead of RGB sounds so obvious, also perfectly explained
@WiseNoodleOfficial
@WiseNoodleOfficial 7 ай бұрын
I think Lethal Company uses this effect for their style, I’m not certain
@kristoffred
@kristoffred 7 ай бұрын
Yes it does! If I remember correctly they posterize Unity's built in volumetric fog in some weird way.
@Tetromiko
@Tetromiko 7 ай бұрын
Acerola in one of his videos, analyzed what filters are used in Lethal company
@wormcake_
@wormcake_ 7 ай бұрын
7:55 first games that come to mind are Lethal Company, Broken Reality, and ULTRAKILL (ultrakill's posterization is dependent on graphics settings and also has a custom color pallette feature)
@WiseNoodleOfficial
@WiseNoodleOfficial 7 ай бұрын
Very cool effect! I will definitely be using this in future games!
@NickCombs
@NickCombs 7 ай бұрын
I think the trick to making this effect look really nice is to ensure all of the banding goes along smooth curves rather than noisy edges.
@kristoffred
@kristoffred 7 ай бұрын
Completely depends on the artsyle you want. I wanted to make it look a bit less smooth but not as noisy as something like dithering.
@NickCombs
@NickCombs 7 ай бұрын
Yeah, that's a fair point. I do think a cleaner look is going to be a more popular style though.
@RetroDead
@RetroDead 7 ай бұрын
i absolutely love posterization, and its something i try to shove into my visuals whenever i can. was actually doing that while looking for something to watch
@Daemonworks
@Daemonworks 6 ай бұрын
You can find examples of posterization in mapping. Meteorological maps may posterize pressure or temperature regions as an overlay. Same with distribution maps. Topographical maps are basically a map with a z axis rendered via posterized steps. Enter the spiderverse also simulated animating at differen frame counts (on ones, twos, threes, etc) which is essentially posterizing motion to achieve the effect of accentuating miles initial clumsiness compared to the others.
@kristoffred
@kristoffred 6 ай бұрын
That's really cool!
@CloyMush
@CloyMush 6 ай бұрын
😢😢😢 finally someone showing some love to posterization!!! Ive been using it consistently with my digital art because discovering how powerful it was literally shaped my art as a whole and managed to make me find my art style!!! Im honestly surprised to see no one talk about it
@fa-pm5dr
@fa-pm5dr 7 ай бұрын
as a mathematician, i think that the distinction between color model and color space is absurd
@lucidattf
@lucidattf 7 ай бұрын
in some cases, also using dithering would make a better look. there’s a video in the “HTTP 203” youtube series about dithering, and a companion blog post, which could be interesting to you! I do think though that the banding not using dithering gets you is aesthetically pleasing sometimes, so maybe you’d wanna keep it as-is- just a thought :) great video!
@kristoffred
@kristoffred 7 ай бұрын
Yes I want to keep my game on the cleaner side, so I'm not going to use dithering as it can potentially look somewhat noisy.
@Monody512
@Monody512 7 ай бұрын
As a video editor, posterization sets off my constant fear of visible banding from running into the limits of the 8-bit color space. :P
@EmpinadoMaxbmdggTheSun
@EmpinadoMaxbmdggTheSun 7 ай бұрын
when I was 9-10 yo I had an HTC mobile that had a lot of cool effects included in built-in camera app, and they all worked in real time, and the posterization was one of those. This video just brings me nostalgia feelengs
@ScyrousFX
@ScyrousFX 7 ай бұрын
It's used heavily in NieR Automata. The EMP attacks in route B (or C, I forgot) disable parts of your controls and introduce visual glitches. The posterization effect is one of those glitches. Very cool stuff.
@shaiz-o
@shaiz-o 7 ай бұрын
really enjoyable showcase and examples. idk why people are saying it's overused. it can look really cool if you add your own twist to it. thanks!
@GuyFromNet
@GuyFromNet 7 ай бұрын
extremely underrated video
@kristoffred
@kristoffred 7 ай бұрын
nah youtube just hasn't given any impressions to it yet
@k_otey
@k_otey 7 ай бұрын
underimpressioned video 😭​@@kristoffred
@JuhoSprite
@JuhoSprite 7 ай бұрын
Agreed
@mcleslieplayz4921
@mcleslieplayz4921 7 ай бұрын
I love how it makes everything look like old video games graphics
@codedeus
@codedeus 7 ай бұрын
Wow this is magnificient :D Great video
@vailias
@vailias 7 ай бұрын
Generally speaking its much easer to get good quality visuals by just deciding on and creating a limited pallete, crisp edged art style, then apply a very simple lighting model rather than apply a quantization effect to one of the smooth lighting models and more "realistic" art. The control of the final scene part is a big part of why special effect shaders like this don't get used as much, since you have to design your assets with this look in mind anyway.
@robbu2445
@robbu2445 7 ай бұрын
Valefisk used a similar effect in his game crypt
@kristoffred
@kristoffred 7 ай бұрын
Yep that looks to be correct.
@truemori6700
@truemori6700 7 ай бұрын
youtube compression type shader
@kristoffred
@kristoffred 7 ай бұрын
real
@JayFolipurba
@JayFolipurba 7 ай бұрын
Banding has its appeal, I personally prefer dithering
@kristoffred
@kristoffred 7 ай бұрын
Dithering can look noisy sometimes which is why I'm avoiding it here.
@wizard4599
@wizard4599 7 ай бұрын
Hah, I actually did this today at work for a certain shader. Posterisation isn't just for end graphics, but can also be a great tool for generating masks or other elements that make up the final image. In my case, I used it to create a procedural grid texture by posterising the X and Y axes of a texuture coordinate.
@XMRPhilosophyX
@XMRPhilosophyX 4 ай бұрын
A a blender artist, I like to combine a kuwahara with the postarize filter, you get even more of a nice painted effect if you do it right.
@foreign_objective2855
@foreign_objective2855 7 ай бұрын
imo posterization looks great in brighter visuals like daylight landscapes because there's more color and it's easier for the shader to pick it up. But for visuals that tend to be dark, especially in video games, I really hate it. In scenes that are very dark, even a small difference in value/tint of a certain area of the screen can change your perspective of the dark like "oh, there's something there" but when it's posterized, it gets locked in the closest color allowed by the effect, which makes things harder to look at. So basically, it's a cool shader but most people want to see more color.
@thememecrusader6689
@thememecrusader6689 7 ай бұрын
i'm gonna use this in my game fr this looks FIRE
@kristoffred
@kristoffred 7 ай бұрын
I'd love to see that!
@apersunthathasaridiculousl1890
@apersunthathasaridiculousl1890 7 ай бұрын
I feel like there are very little applications that’ll actually look good with this shader
@T.Florenz
@T.Florenz 7 ай бұрын
I feel like posterization was a really popular effect like 20-25 years ago, then dropped out of vogue. A lot of early digital media techniques are back in style, and being used in really interesting and new ways. I think it's cool to see this recur in design with added modern twists.
@kristoffred
@kristoffred 7 ай бұрын
They did not. It was just a hardware limitation back then.
@Arctic_SnowyFox
@Arctic_SnowyFox 7 ай бұрын
buckshot roulette uses posterization
@liz4133
@liz4133 7 ай бұрын
Such a cool video. I was playing with posterisation and wondering how I could make it better. Nice and concise video. ❤
@sinom
@sinom 7 ай бұрын
Posterization is really cool. Last yeah I wrote a really customizable reshade shader to do it. One thing I found really interesting was applying it to other buffere than just the color output. Posterizing the normal buffer, gbuffer etc. can give some really interesting results
@chexo3
@chexo3 7 ай бұрын
Posterization is great for low resolution and low color depth too. If you mess with the parameters you can make images look great while being far smaller
@KazmirRunik
@KazmirRunik 7 ай бұрын
You can get a similar effect on Web pages by playing with the filters in CSS. It's a superset of the CSS metaball effect, but you're also playing with other parameters like colors & filter areas of effect.
@anci5272
@anci5272 7 ай бұрын
Not my ahh thinking this was going to be a Destiny 2 video💀
@Dorktoast
@Dorktoast 7 ай бұрын
The game "SCP:Infohazard" uses this effect and it's really cool-looking
@kristoffred
@kristoffred 7 ай бұрын
Yeah it looks similar to Buckshot roulette!
@Aeduo
@Aeduo 7 ай бұрын
Oh I was recently experimenting with just this very idea. I was inspired by how original Doom's palette breaks up levels of depth in to different brightnesses to give the appearance of dark regions having lower detail where you can only maybe see some contours of objects and textures. I added a bit of randomness to the brightness channel per pixel to kinda fake temporal dithering while still keeping the effect of shadowy stuff being low detail and indistinct. Obviously would have to be used in a very stylized kind of game. I know lo-fi horror is kinda overdone but yeah it kinda matches this perfectly. :p
@acf2802
@acf2802 7 ай бұрын
When you render floats into an 8-bit buffer, you automatically get posterization, which is an artifact I've spent plenty of time trying to remove with dithering.
@kristoffred
@kristoffred 7 ай бұрын
Yeah that's a form of RGB posterization I guess!
@damncat2793
@damncat2793 7 ай бұрын
This video is gonna blow up
@kristoffred
@kristoffred 7 ай бұрын
hopefully :0
@JuhoSprite
@JuhoSprite 7 ай бұрын
Omg true, i really miss this filter. It looks rly good and stylized, i love it
@brahillms1374
@brahillms1374 7 ай бұрын
Didn’t you just say it looks like a cheap photoshop filter and that it was bad?
@JuhoSprite
@JuhoSprite 7 ай бұрын
@@brahillms1374 hahah no i did never say that, I love the effect so much!!
@blakbike
@blakbike 7 ай бұрын
​@@JuhoSpriteyou did, it's in the top comment
@JuhoSprite
@JuhoSprite 7 ай бұрын
@@blakbike show proof
@blakbike
@blakbike 7 ай бұрын
@@JuhoSprite on my (word that starts with c and ends with hannel)
@ChipboardDev
@ChipboardDev 7 ай бұрын
basically rounding, one of the simplest post processing effects you can implement. useful in limited scenarios, quite possibly overused.
@kristoffred
@kristoffred 7 ай бұрын
Rounding is posterization with the step parameter set to 1. You can do way more than that with this.
@ChipboardDev
@ChipboardDev 7 ай бұрын
@@kristoffred rounding to the nearest multiple of, defined in steps instead of intervals, sure
@tdubmorris
@tdubmorris 6 ай бұрын
example 2 just reminds me of floating point errors when you go too far from 0, 0
@BahkaSheep
@BahkaSheep 7 ай бұрын
Oh my glob, I'm using a posterizing effect in my unity project but it was looking too crunchy from posterizing the RGB channels, Ill be implementing the HSV posterization as soon as I can!
@Extner4
@Extner4 7 ай бұрын
So True! great explanation as well!
@hannesrahm
@hannesrahm 7 ай бұрын
We use posterisation heavily in our game Ocean Mirror. I solve the multiple color issue by mapping the HSL (i found HSL better than HSV) to a 2D texture LUT where H is X and L is Y. Saturation is just thrown away :)
@kristoffred
@kristoffred 7 ай бұрын
Your game looks super cool good job!
@RoyceInsanity
@RoyceInsanity 7 ай бұрын
I use this with low strength for low res logos to make them blend a bit better
@pokefreak2112
@pokefreak2112 7 ай бұрын
Quite a few games use posterization. But it's often just one part of the effects chain because on its own it can be quite overbearing. Off the top of my head there's A short hike, fight knight, cult of the lamb (in the afterlife scenes)
@kristoffred
@kristoffred 7 ай бұрын
I'm pretty sure none of them do. Fight knight very obviously uses an unlit shader and bunch of texture work. A short hike probably uses some sort of simplified shader model, but most of it is also texture work. It's definitely not posterization because of how smooth the colors look at some places (especially on the fog). Idk what you mean by the afterlife scenes in cult of the lamb because I've never played it.
@pokefreak2112
@pokefreak2112 7 ай бұрын
​@@kristoffredYeah I guess I misremembered about a short hike. It uses shading ramps which I guess is technically posterization but not what you meant. Not sure what you mean about fight knight though? If you look at gameplay you can see the colors pulse while the palette stays fixed. To me this very much looks like: sample black&white texture->oscillate brightness/contrast->posterize->sample palette
@kristoffred
@kristoffred 7 ай бұрын
@@pokefreak2112 I looked at some gameplay now (I only watched the trailer before). It does look similar to what I did, but keep in mind that you do not need posterization to sample a palette. I've done similar things before without posterization, but I can't really tell what exactly they used now. You'd need to use Nvidia Nsight to tell, but I don't have the game nor really want to spend time on trying to figure out how they did it.
@Bobodita-kun
@Bobodita-kun 11 күн бұрын
I was actually using the rgb version in my game cause I liked how it made the shadows look, but i decided against this style. I actually didn't know it had a name i thought i just came up with a bad idea for vfx inspired by lethal company
@TheJamesM
@TheJamesM 7 ай бұрын
Personally once you leave the domain of colour I'd use the term "quantization" rather than "posterization", but the latter's Wikipedia page describes "time posterization" (reducing the effective framerate without changing the runtime of the video), so I guess there's precedence for the word being used more metaphorically. (The term originally derives from the appearance of posters printed using a limited colour palette, as is common with some methods of printing.)
@kristoffred
@kristoffred 6 ай бұрын
Yeah, I've seen a bunch of people call it "color quantization" when talking about color posterization, but I just didn't really want to confuse the viewers by using multiple words to describe basically the same technique.
@TheJamesM
@TheJamesM 6 ай бұрын
@@kristoffred That makes sense
@Stoneeeeemo
@Stoneeeeemo 7 ай бұрын
LOVE COLOR QUANTIZATION
@nicks4727
@nicks4727 6 ай бұрын
I would like to see if you could make any changes or improve this with OKLAB color space
@kristoffred
@kristoffred 6 ай бұрын
Already did and it looks great! I'm going to show it off in the next video (which should be coming the next week)
@jlewwis1995
@jlewwis1995 7 ай бұрын
Imo for this type of effect in a game im frankly of the opinion it would probably be better just to use either specially made greyscale or red+green textures with a lookup table, an upshot to that version would be quite a bit better performance since you have to do less math, i guess the downside though is that it would take a bit longer to make the textures since you have to convert them to the right color format first which would involve mapping the pixel colors in the source image to UV offsets of their corresponding colors in the lookup table and idk if theres a pre existing tool that can do that...
@kristoffred
@kristoffred 7 ай бұрын
Simply put, no. Sampling a texture is way slower than doing a few simple (stuff that's not trig functions, sqrt, etc.) math operations. Also the palette generation pass is barely noticable in terms of framerate drop, if at all. The only noticable slowdown (0.33ms) is adding more palette layers, as rendering them into their seperate sub-viewport is quite inefficient, but currently there isn't a better way to do it without. Someone recommended the use of stencil buffers, Godot currently doesn't support it yet. Also the entire point of generating palettes in realtime is that you can change it in realtime. That is simply impossible to do the way I did it with a lookup table.
@philipp_surname
@philipp_surname 7 ай бұрын
LETHAL COMPANY - I don’t remember, I think she uses a similar effect. on the "Acerola" channel there is an analysis of his graphics
@kristoffred
@kristoffred 7 ай бұрын
Yes, I have seen that video, and if I recall correctly that game uses posterization on volumetric fog in some way.
@thygrrr
@thygrrr 7 ай бұрын
I'd like to see some posterization in OKLAB but HSV is already a great start. It will help lots with my NPR cartoon style shaders.
@kristoffred
@kristoffred 7 ай бұрын
It has been recommended a bunch of times, I will try it out!
@QualityGarbage
@QualityGarbage 7 ай бұрын
I use posterization to make Minecraft screenshots creepier (Limited colour palette textures do half of the work for me)
@vektorz1spektro557
@vektorz1spektro557 7 ай бұрын
I wonder if the results would be better using oklab / oklch colour space
@kristoffred
@kristoffred 7 ай бұрын
Probably, but so far I haven't managed to implement it yet.
@davidzaydullin
@davidzaydullin 7 ай бұрын
wow, i was trying to do the same thing with different pasterization on different objects in godot, but couldn't find a way to do it. thanks for telling how to do it. btw i recommend watchinf acerola video about colors, he makes pasterization too in this video
@kristoffred
@kristoffred 7 ай бұрын
You're welcome! I have already seen that video when it released :D
@varigeri92
@varigeri92 7 ай бұрын
Szép munka, Jár a keksz!
@nin3_
@nin3_ 7 ай бұрын
such a great watch, what software did you use for the visualizations?
@kristoffred
@kristoffred 7 ай бұрын
I made it all in Premiere Pro, with some Godot stuff for the 3D parts.
@MizhiBirb
@MizhiBirb 7 ай бұрын
Great video!
@kristoffred
@kristoffred 7 ай бұрын
thanks!
@zsigmondforianszabo4698
@zsigmondforianszabo4698 7 ай бұрын
A magyar akcentus megcsapott ugyhogy jottem a komment szekcioba :D szuper video, igy tovabb!!
@therealpeter2267
@therealpeter2267 7 ай бұрын
én is egyből kiszúrtam xD
@kristoffred
@kristoffred 7 ай бұрын
xd
@hotdog9259
@hotdog9259 7 ай бұрын
To what extent is this similar to cel-shading? They seem similar to me but I haven't seen anything comparing them. The Wikipedia articles for each don't even mention each other.
@kristoffred
@kristoffred 7 ай бұрын
They have nothing in common except looks. This is something I'm going to be talking about in the next video because a lot of people seem to be confused.
@gaborfekete3777
@gaborfekete3777 7 ай бұрын
it seems you are using linear colors as the final output color, try using gamma correction: pow(finalRGB, vec3(1./2.2))
@kristoffred
@kristoffred 7 ай бұрын
I'll try it out!
@Golden_Marbel____
@Golden_Marbel____ 2 ай бұрын
Mike klubnika uses in almost all of his games
@SirRebonack
@SirRebonack 7 ай бұрын
You probably want to use a stencil buffer instead of render layers (much cheaper). Similar to how enemy targeting outlines are created.
@kristoffred
@kristoffred 7 ай бұрын
Godot doesn't support stencil buffers to my knowledge
@SirRebonack
@SirRebonack 7 ай бұрын
@@kristoffred I believe it does in 4.2. I remember reading about it some time ago.
@kristoffred
@kristoffred 7 ай бұрын
@@SirRebonack Yes I found it except it's not implemented into the main branch yet (?). github.com/godotengine/godot/pull/80710
@CoderDev6545
@CoderDev6545 7 ай бұрын
Nice video? Did you use motion canvas for the image affects?
@kristoffred
@kristoffred 7 ай бұрын
Nope, it's just pure Adobe Premiere
@Roxor128
@Roxor128 7 ай бұрын
It's funny how we're writing code now to do what our graphics hardware did by default 35 years ago. Used to be that we'd use a 16 or 256-colour palette for everything in the game. Now that we haven't had to use that for 25 years, we're coming up with ways to fake the look using systems that don't even know what a palette is in the first place.
@kristoffred
@kristoffred 7 ай бұрын
Not really. It was more of a hardware limitation back then, rather than a design choice.
@Roxor128
@Roxor128 7 ай бұрын
@@kristoffred I'd say hardware limitations are "doing it by default". Hell, our modern graphics cards still support the video modes of the IBM PC's orignal video cards from 1981. You often see a blinking text-mode cursor as the first thing when you power on your computer, right before UEFI goes and shows the manufacturer's logo in a slightly newer video mode.
@ozi3756
@ozi3756 7 ай бұрын
wouldn't using seperate layers for rendering cause things to render over each other as some information might be on seperate layers that that one can't access?
@kristoffred
@kristoffred 7 ай бұрын
Yes, currently they render over everything, but I'm going to fix that using the depth texture later.
@ozi3756
@ozi3756 7 ай бұрын
@@kristoffred cool! can't wait to see the changes :D
@VRchitecture
@VRchitecture 7 ай бұрын
What tool(s) have you used for animations?
@kristoffred
@kristoffred 7 ай бұрын
Premeire Pro, and Godot for the 3D stuff.
@VRchitecture
@VRchitecture 7 ай бұрын
@@kristoffred Got it, thanks!
@Fadil_mn
@Fadil_mn 7 ай бұрын
him: no body uses me: lethal company look even you tube says the same thing
@kristoffred
@kristoffred 7 ай бұрын
Yes I know, 7:55 bottom right corner
@accendinet
@accendinet 7 ай бұрын
"Posterization" is just a term for "color quantization" that was introduced by Photoshop. Color quantization is THE standard method used by almost every toon shader. So, yeah... Pretty hardcore clickbait going on in that title.
@kristoffred
@kristoffred 7 ай бұрын
@@accendinet I'd love to see proof of that claim.
@accendinet
@accendinet 7 ай бұрын
​@@kristoffred Not sure what specifically you're referring to when you say "claim," but here are some general references you may find helpful: en.wikipedia.org/wiki/Cel_shading en.wikipedia.org/wiki/Color_quantization en.wikipedia.org/wiki/Posterization I hope that helps provide clarification. If you still have questions, just let me know! 🙂
@tylercathey
@tylercathey 7 ай бұрын
Whats the didference between this and cell shading
@kristoffred
@kristoffred 7 ай бұрын
Cel shading is a per object shader and it's basically a way of calculating lighting in a more stylized way. My posterization filter is a fullscreen post-processing effect, meaning it's ran for every pixel of the screen texture after the base render is done.
@MudraptorGaming
@MudraptorGaming 7 ай бұрын
So.. color banding and bad print contrast as an aesthetic
@kristoffred
@kristoffred 7 ай бұрын
Stylized rendering™
@ZoomerMirek
@ZoomerMirek 7 ай бұрын
Yes
@timthecringe
@timthecringe 7 ай бұрын
voices of the void kind of uses posterization
@kristoffred
@kristoffred 7 ай бұрын
I looked it up, and I really doubt it uses it unless we are talking about different games
@jacobprentice2649
@jacobprentice2649 7 ай бұрын
I think the brightness value would technically be gamma but i just learned that today so idk
@kristoffred
@kristoffred 7 ай бұрын
No, they are two completely different things, just google it.
@jacobprentice2649
@jacobprentice2649 7 ай бұрын
Good to know thanks​@@kristoffred
@jacobprentice2649
@jacobprentice2649 7 ай бұрын
I looked it up and brightness affects everything equally while gamma is the curve you showed so maybe we are thinking about different parts of the video
@Trenchcoat-cb9ph
@Trenchcoat-cb9ph 4 ай бұрын
Everything looks... spiky? I'm using Ue5, any idea how to fix that? (BTW I am using HSV)
@kristoffred
@kristoffred 4 ай бұрын
There must be some sort of noise in your render before applying the filter. I know that ambient occlusion can sometimes look weird, but you might have grain as well. I have absolutely no experience in UE5 so I can't give technical help.
@Trenchcoat-cb9ph
@Trenchcoat-cb9ph 4 ай бұрын
Thanks, I'll mess around with the ambient occlusion.
@pantheonmaker9437
@pantheonmaker9437 7 ай бұрын
Using þese techniques as well as a smaller pixel ratio (like 160x144) could be interesting
@willd2609
@willd2609 7 ай бұрын
this is so cool!
@abdelrhmanhatem6872
@abdelrhmanhatem6872 7 ай бұрын
could you please give a link to the shader?, a git hub link or anything, iam new to shaders and i tried to follow but i just cant get it to look even close without it bugging everytime.
@kristoffred
@kristoffred 7 ай бұрын
which shader and what is the issue?
@abdelrhmanhatem6872
@abdelrhmanhatem6872 7 ай бұрын
​@@kristoffred wdym which shader wasn't the whole vid on one shader :D?, am i really that of a rookie to not notice there were multiple shaders? i was interested in a posterizing shader like that of lethal company and you were the only one explaining the process behind it but i just can't implement it in my game. i was asking for the project file to read it since the vid never showed the whole code together. ty in advance :3
@kristoffred
@kristoffred 7 ай бұрын
Here's the palette based one. Create a flat plane mesh in front of your camera and apply the shader to that. (yes, godot screen shaders are that janky for now) It shouldn't be hard to modify for the simpler paletteless shader, just find that part in the video and try to copy the code from there. pastebin.com/0WVvgFPa (the reason why this code looks different to the one in the video is because that code was made with multiple palettes in mind. This one is made for a single color palette, and is a lot simpler)
@abdelrhmanhatem6872
@abdelrhmanhatem6872 7 ай бұрын
Thank you bro, the problem was me applying the shader to the objects instead of the camera lol! actually excited for new videos.
@TiMona42
@TiMona42 6 ай бұрын
I haven't watched the video properly yet, but iirc this was pretty common for earlier cell shaded styles so that might have given it somewhat of a bad image? (no pun intended)
@Scruffysnake
@Scruffysnake 7 ай бұрын
Does using a LUT work for this?
@kristoffred
@kristoffred 7 ай бұрын
You could probably make it work, but I'm trying to keep it all procedual.
@Scruffysnake
@Scruffysnake 7 ай бұрын
@@kristoffred yeah I was thinking keeping it procedual would allow for the effect to be changed real time, though I suspect a LUT would be faster (not that it matters with modern day hardware)
@kristoffred
@kristoffred 7 ай бұрын
@@Scruffysnake Sampling a texture is probably slower than this. Posterization is literally 1 multiplication, 1 division and 1 round function, but yeah it probably doesn't matter.
@Scruffysnake
@Scruffysnake 7 ай бұрын
@@kristoffred possibly yeah
@WingofTech
@WingofTech 7 ай бұрын
Reminds me a lot of Lethal Company!
@kristoffred
@kristoffred 7 ай бұрын
That's because LC uses posterization on their volumetric fog!
@catfree
@catfree 7 ай бұрын
My Flip Phone does this automatically
@stormyfish404
@stormyfish404 7 ай бұрын
Lethal Company:
@kristoffred
@kristoffred 7 ай бұрын
Lethal Company
@leafee9611
@leafee9611 7 ай бұрын
Amazing!
@LilyArlatto
@LilyArlatto 7 ай бұрын
Crazy title to have right after lethal company came out lol
@kristoffred
@kristoffred 7 ай бұрын
Think of "nobody" as "barely anyone" :D
@ZoomerMirek
@ZoomerMirek 7 ай бұрын
​@@kristoffred still incorrect
@markigames7313
@markigames7313 7 ай бұрын
Isn't that a cell Shader, that is used frequently?
@menaced.
@menaced. 7 ай бұрын
Kind of? cel shading is a material shader generally whereas posterization is a post process effect. Cel shading kind of uses posterization as a portion of it but it usually only uses 2 values (light and shadow) and the adds an outline afterwards
@kristoffred
@kristoffred 7 ай бұрын
@@menaced. Correct! I did add an outline shader in my game because combining the two effects looks really nice.
@BadmanYT-1254
@BadmanYT-1254 7 ай бұрын
I only new this from my 2DS lol
@Lars_Ziah_Zawkian
@Lars_Ziah_Zawkian 7 ай бұрын
Alpha Minecraft lighting effect
@jostasizzi818
@jostasizzi818 6 ай бұрын
Hmm maybe if you do more compositing effect on godot that would be so cool
@jak3legacy
@jak3legacy 7 ай бұрын
Isn't this just cell shading with more steps of detail?
@kristoffred
@kristoffred 7 ай бұрын
I already explained this to someone else: "Cel shading is a per object shader and it's basically a way of calculating lighting in a more stylized way. My posterization filter is a fullscreen post-processing effect, meaning it's ran for every pixel of the screen texture after the base render is done."
@jak3legacy
@jak3legacy 7 ай бұрын
@@kristoffred my understanding is that many games use a screen space / post processing approach to "cel shading" as well. I guess what I'm doing in my game is "posterization" I guess but I followed cel shading post-process tutorials and material to get there.
@guestc142
@guestc142 7 ай бұрын
Just use windows 3.1 if you want the definitive quantisation experience.
@kristoffred
@kristoffred 7 ай бұрын
So true
A Game Engine Built For Optimisation
5:16
Vercidium
Рет қаралды 254 М.
Mom Hack for Cooking Solo with a Little One! 🍳👶
00:15
5-Minute Crafts HOUSE
Рет қаралды 23 МЛН
“Don’t stop the chances.”
00:44
ISSEI / いっせい
Рет қаралды 62 МЛН
Каха и дочка
00:28
К-Media
Рет қаралды 3,4 МЛН
Better Mountain Generators That Aren't Perlin Noise or Erosion
18:09
Josh's Channel
Рет қаралды 435 М.
Beginner's Guide to Shader Distortion Techniques
17:03
Barney Codes
Рет қаралды 8 М.
Python Shadow Simulator
14:21
Code Station
Рет қаралды 819
I Scraped the Entire Steam Catalog, Here’s the Data
11:29
Newbie Indie Game Dev
Рет қаралды 739 М.
Color Quantization and Dithering
11:55
Acerola
Рет қаралды 451 М.
The Best Games from GMTK Game Jam 2023
16:05
Game Maker's Toolkit
Рет қаралды 1,2 МЛН
When Optimisations Work, But for the Wrong Reasons
22:19
SimonDev
Рет қаралды 1,1 МЛН
I Recreated Arcane With $0
15:01
Noggi
Рет қаралды 1,6 МЛН
Painted Anime Cel Shadows in Blender [EEVEE] - Comfee Tutorial
6:37
Mom Hack for Cooking Solo with a Little One! 🍳👶
00:15
5-Minute Crafts HOUSE
Рет қаралды 23 МЛН