The coolest shader effect that nobody uses

Ойындар

So posterization is just so insanely cool and for some reason it's very underused in the gamedev industry. In this video I explain how posterization can be used in some unconventional ways to generate some incredible effects, and even custom color palettes at the end.
0:00 Intro
0:24 Example 1.
0:54 RGB Posterization
1:45 Example 2.
2:26 HSV Posterization
4:18 Palette generation
6:15 Multiple palettes
7:34 Outro
#shaders #gamedev #indiedev

Пікірлер: 274

  • @AllExistence
    @AllExistence29 күн бұрын

    Simply put, it's ugly.

  • @HokoraYinphine

    @HokoraYinphine

    29 күн бұрын

    color banding but on purpose™

  • @JuhoSprite

    @JuhoSprite

    29 күн бұрын

    Ye it looks like a cheap photoshop filter. Its rly bad imo

  • @bcmpinc

    @bcmpinc

    28 күн бұрын

    Use a low resolution, add a dither matrix, then do the posterization and you can call it "pixel art".

  • @averagesnail

    @averagesnail

    28 күн бұрын

    @@JuhoSprite and your opinion is WRONG!!!!!

  • @k_otey

    @k_otey

    28 күн бұрын

    like anything, it looks good when it's done well. 0:09 is beautiful

  • @Beatsbasteln
    @Beatsbasteln29 күн бұрын

    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

    29 күн бұрын

    Oooh! I felt like the way the wobble-noodle deformed reminded me of that! Great observation!

  • @xenontesla122

    @xenontesla122

    28 күн бұрын

    Yup! I’ve used this effect both visually *and* sonically to make music that generates animations when put through an oscilloscope

  • @iamsushi1056

    @iamsushi1056

    27 күн бұрын

    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

    26 күн бұрын

    Those signal processing methods when used on different kinds of media may lead to very interesting results 👍🏻

  • @43tss

    @43tss

    25 күн бұрын

    As a sound designer, wow.

  • @qwjd8s693pt4kaun
    @qwjd8s693pt4kaunАй бұрын

    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

  • @nitro-gen-studios

    @nitro-gen-studios

    Ай бұрын

    I'll look into it thank you for sharing that!

  • @Extner4

    @Extner4

    Ай бұрын

    @@nitro-gen-studios acerola has a great video on color selection and OkLAB colors kzread.info/dash/bejne/mKph2c6oaNy8mM4.htmlsi=ZXssbMtmTiO1fpvQ

  • @seannewell397

    @seannewell397

    28 күн бұрын

    Mmmm pasteurization - yummy milk 😜😅

  • @qwjd8s693pt4kaun

    @qwjd8s693pt4kaun

    28 күн бұрын

    @@seannewell397, literally didn't cross my mind they are spelled differently, thanks In my mother tongue it's the same spelling

  • @SimplyWondering

    @SimplyWondering

    27 күн бұрын

    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Ай бұрын

    As the son of John Posterization himself, I approve of this video 👍

  • @k_otey

    @k_otey

    28 күн бұрын

    i am ashamed that i searched up "john posterization"

  • @lukasjetu9776

    @lukasjetu9776

    17 күн бұрын

    ​@@k_otey just wanted to google it too

  • @Vextrove

    @Vextrove

    11 күн бұрын

    ​@@k_otey and I'm proud of you!

  • @AlessaBaker
    @AlessaBaker29 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    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

    24 күн бұрын

    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.

  • @Theunjduvqhfurbsi1102
    @Theunjduvqhfurbsi110228 күн бұрын

    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.

  • @WiseNoodleOfficial
    @WiseNoodleOfficial29 күн бұрын

    I think Lethal Company uses this effect for their style, I’m not certain

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    Yes it does! If I remember correctly they posterize Unity's built in volumetric fog in some weird way.

  • @Tetromiko

    @Tetromiko

    28 күн бұрын

    Acerola in one of his videos, analyzed what filters are used in Lethal company

  • @isheros
    @isheros29 күн бұрын

    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!

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    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Ай бұрын

    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
    @iamsushi105628 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    I'll look into those colorspaces soon!

  • @basiliotornado
    @basiliotornado29 күн бұрын

    That looks way better than i expected. Great technique

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    Thank you!

  • @miundamera
    @miundamera4 күн бұрын

    😢😢😢 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

  • @ghostlysander
    @ghostlysander28 күн бұрын

    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

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    Good luck with your pixel art journey!

  • @Aeduo

    @Aeduo

    24 күн бұрын

    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.

  • @Monody512
    @Monody51218 күн бұрын

    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

  • @foreign_objective2855
    @foreign_objective285520 күн бұрын

    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.

  • @wormcake_
    @wormcake_27 күн бұрын

    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)

  • @lucidattf
    @lucidattf29 күн бұрын

    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!

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    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.

  • @NickCombs
    @NickCombs12 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    12 күн бұрын

    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

    11 күн бұрын

    Yeah, that's a fair point. I do think a cleaner look is going to be a more popular style though.

  • @WiseNoodleOfficial
    @WiseNoodleOfficial29 күн бұрын

    Very cool effect! I will definitely be using this in future games!

  • @EmpinadoMaxbmdggTheSun
    @EmpinadoMaxbmdggTheSun9 күн бұрын

    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
    @ScyrousFX20 күн бұрын

    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.

  • @fa-pm5dr
    @fa-pm5dr23 күн бұрын

    as a mathematician, i think that the distinction between color model and color space is absurd

  • @acf2802
    @acf280223 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    23 күн бұрын

    Yeah that's a form of RGB posterization I guess!

  • @liz4133
    @liz413321 күн бұрын

    Such a cool video. I was playing with posterisation and wondering how I could make it better. Nice and concise video. ❤

  • @tdubmorris5757
    @tdubmorris57577 күн бұрын

    example 2 just reminds me of floating point errors when you go too far from 0, 0

  • @Daemonworks
    @Daemonworks5 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    5 күн бұрын

    That's really cool!

  • @RetroDead
    @RetroDead19 күн бұрын

    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

  • @lepsima
    @lepsima18 күн бұрын

    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

  • @JayFolipurba
    @JayFolipurba28 күн бұрын

    Banding has its appeal, I personally prefer dithering

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    Dithering can look noisy sometimes which is why I'm avoiding it here.

  • @wizard4599
    @wizard459916 күн бұрын

    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.

  • @GuyFromNet
    @GuyFromNetАй бұрын

    extremely underrated video

  • @nitro-gen-studios

    @nitro-gen-studios

    Ай бұрын

    nah youtube just hasn't given any impressions to it yet

  • @k_otey

    @k_otey

    Ай бұрын

    underimpressioned video 😭​@@nitro-gen-studios

  • @JuhoSprite

    @JuhoSprite

    29 күн бұрын

    Agreed

  • @chexo3
    @chexo320 күн бұрын

    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

  • @apersunthathasaridiculousl1890
    @apersunthathasaridiculousl189014 күн бұрын

    I feel like there are very little applications that’ll actually look good with this shader

  • @mcleslieplayz4921
    @mcleslieplayz492128 күн бұрын

    I love how it makes everything look like old video games graphics

  • @KazmirRunik
    @KazmirRunik28 күн бұрын

    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.

  • @Aeduo
    @Aeduo24 күн бұрын

    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

  • @codedeus
    @codedeus29 күн бұрын

    Wow this is magnificient :D Great video

  • @shaiz-o
    @shaiz-o25 күн бұрын

    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!

  • @Extner4
    @Extner4Ай бұрын

    So True! great explanation as well!

  • @Arctic_SnowyFox
    @Arctic_SnowyFox28 күн бұрын

    buckshot roulette uses posterization

  • @RoyceInsanity
    @RoyceInsanity24 күн бұрын

    I use this with low strength for low res logos to make them blend a bit better

  • @robbu2445
    @robbu244524 күн бұрын

    Valefisk used a similar effect in his game crypt

  • @nitro-gen-studios

    @nitro-gen-studios

    23 күн бұрын

    Yep that looks to be correct.

  • @sinom
    @sinom29 күн бұрын

    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

  • @thememecrusader6689
    @thememecrusader6689Ай бұрын

    i'm gonna use this in my game fr this looks FIRE

  • @nitro-gen-studios

    @nitro-gen-studios

    Ай бұрын

    I'd love to see that!

  • @vailias
    @vailias25 күн бұрын

    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.

  • @Dorktoast
    @Dorktoast26 күн бұрын

    The game "SCP:Infohazard" uses this effect and it's really cool-looking

  • @nitro-gen-studios

    @nitro-gen-studios

    26 күн бұрын

    Yeah it looks similar to Buckshot roulette!

  • @ChipboardDev
    @ChipboardDev25 күн бұрын

    basically rounding, one of the simplest post processing effects you can implement. useful in limited scenarios, quite possibly overused.

  • @nitro-gen-studios

    @nitro-gen-studios

    25 күн бұрын

    Rounding is posterization with the step parameter set to 1. You can do way more than that with this.

  • @ChipboardDev

    @ChipboardDev

    25 күн бұрын

    @@nitro-gen-studios rounding to the nearest multiple of, defined in steps instead of intervals, sure

  • @BahkaSheep
    @BahkaSheep27 күн бұрын

    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!

  • @LilyArlatto
    @LilyArlatto28 күн бұрын

    Crazy title to have right after lethal company came out lol

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    Think of "nobody" as "barely anyone" :D

  • @zapalniczkakaminski9990

    @zapalniczkakaminski9990

    28 күн бұрын

    ​@@nitro-gen-studios still incorrect

  • @QualityGarbage
    @QualityGarbage27 күн бұрын

    I use posterization to make Minecraft screenshots creepier (Limited colour palette textures do half of the work for me)

  • @davidzaydullin
    @davidzaydullin29 күн бұрын

    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

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    You're welcome! I have already seen that video when it released :D

  • @T.Florenz
    @T.Florenz27 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    26 күн бұрын

    They did not. It was just a hardware limitation back then.

  • @anci5272
    @anci527229 күн бұрын

    Not my ahh thinking this was going to be a Destiny 2 video💀

  • @Fadil_mn
    @Fadil_mn28 күн бұрын

    him: no body uses me: lethal company look even you tube says the same thing

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    Yes I know, 7:55 bottom right corner

  • @accendinet

    @accendinet

    26 күн бұрын

    "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.

  • @nitro-gen-studios

    @nitro-gen-studios

    26 күн бұрын

    @@accendinet I'd love to see proof of that claim.

  • @accendinet

    @accendinet

    26 күн бұрын

    ​@@nitro-gen-studios 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! 🙂

  • @hannesrahm
    @hannesrahm29 күн бұрын

    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 :)

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    Your game looks super cool good job!

  • @Stoneeeeemo
    @Stoneeeeemo28 күн бұрын

    LOVE COLOR QUANTIZATION

  • @JuhoSprite
    @JuhoSprite29 күн бұрын

    Omg true, i really miss this filter. It looks rly good and stylized, i love it

  • @brahillms1374

    @brahillms1374

    28 күн бұрын

    Didn’t you just say it looks like a cheap photoshop filter and that it was bad?

  • @JuhoSprite

    @JuhoSprite

    28 күн бұрын

    @@brahillms1374 hahah no i did never say that, I love the effect so much!!

  • @rysuq.

    @rysuq.

    28 күн бұрын

    ​@@JuhoSpriteyou did, it's in the top comment

  • @JuhoSprite

    @JuhoSprite

    27 күн бұрын

    @@rysuq. show proof

  • @rysuq.

    @rysuq.

    27 күн бұрын

    @@JuhoSprite on my (word that starts with c and ends with hannel)

  • @damncat2793
    @damncat2793Ай бұрын

    This video is gonna blow up

  • @nitro-gen-studios

    @nitro-gen-studios

    Ай бұрын

    hopefully :0

  • @MizhiBirb
    @MizhiBirbАй бұрын

    Great video!

  • @nitro-gen-studios

    @nitro-gen-studios

    Ай бұрын

    thanks!

  • @nin3_
    @nin3_25 күн бұрын

    such a great watch, what software did you use for the visualizations?

  • @nitro-gen-studios

    @nitro-gen-studios

    25 күн бұрын

    I made it all in Premiere Pro, with some Godot stuff for the 3D parts.

  • @pokefreak2112
    @pokefreak211227 күн бұрын

    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)

  • @nitro-gen-studios

    @nitro-gen-studios

    27 күн бұрын

    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

    27 күн бұрын

    ​@@nitro-gen-studiosYeah 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

  • @nitro-gen-studios

    @nitro-gen-studios

    27 күн бұрын

    @@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.

  • @jlewwis1995
    @jlewwis199526 күн бұрын

    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...

  • @nitro-gen-studios

    @nitro-gen-studios

    26 күн бұрын

    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.

  • @thygrrr
    @thygrrr28 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    It has been recommended a bunch of times, I will try it out!

  • @nicks4727
    @nicks47273 күн бұрын

    I would like to see if you could make any changes or improve this with OKLAB color space

  • @nitro-gen-studios

    @nitro-gen-studios

    3 күн бұрын

    Already did and it looks great! I'm going to show it off in the next video (which should be coming the next week)

  • @CoderDev6545
    @CoderDev654528 күн бұрын

    Nice video? Did you use motion canvas for the image affects?

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    Nope, it's just pure Adobe Premiere

  • @TheJamesM
    @TheJamesM8 күн бұрын

    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.)

  • @nitro-gen-studios

    @nitro-gen-studios

    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 күн бұрын

    @@nitro-gen-studios That makes sense

  • @philipp_surname
    @philipp_surname28 күн бұрын

    LETHAL COMPANY - I don’t remember, I think she uses a similar effect. on the "Acerola" channel there is an analysis of his graphics

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    Yes, I have seen that video, and if I recall correctly that game uses posterization on volumetric fog in some way.

  • @willd2609
    @willd260929 күн бұрын

    this is so cool!

  • @pantheonmaker9437
    @pantheonmaker943712 күн бұрын

    Using þese techniques as well as a smaller pixel ratio (like 160x144) could be interesting

  • @varigeri92
    @varigeri9229 күн бұрын

    Szép munka, Jár a keksz!

  • @leafee9611
    @leafee9611Ай бұрын

    Amazing!

  • @vektorz1spektro557
    @vektorz1spektro55726 күн бұрын

    I wonder if the results would be better using oklab / oklch colour space

  • @nitro-gen-studios

    @nitro-gen-studios

    25 күн бұрын

    Probably, but so far I haven't managed to implement it yet.

  • @ozi3756
    @ozi375629 күн бұрын

    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?

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    Yes, currently they render over everything, but I'm going to fix that using the depth texture later.

  • @ozi3756

    @ozi3756

    28 күн бұрын

    @@nitro-gen-studios cool! can't wait to see the changes :D

  • @SirRebonack
    @SirRebonack27 күн бұрын

    You probably want to use a stencil buffer instead of render layers (much cheaper). Similar to how enemy targeting outlines are created.

  • @nitro-gen-studios

    @nitro-gen-studios

    27 күн бұрын

    Godot doesn't support stencil buffers to my knowledge

  • @SirRebonack

    @SirRebonack

    27 күн бұрын

    @@nitro-gen-studios I believe it does in 4.2. I remember reading about it some time ago.

  • @nitro-gen-studios

    @nitro-gen-studios

    27 күн бұрын

    @@SirRebonack Yes I found it except it's not implemented into the main branch yet (?). github.com/godotengine/godot/pull/80710

  • @Roxor128
    @Roxor12824 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    23 күн бұрын

    Not really. It was more of a hardware limitation back then, rather than a design choice.

  • @Roxor128

    @Roxor128

    22 күн бұрын

    @@nitro-gen-studios 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.

  • @timthecringe
    @timthecringe14 күн бұрын

    voices of the void kind of uses posterization

  • @nitro-gen-studios

    @nitro-gen-studios

    14 күн бұрын

    I looked it up, and I really doubt it uses it unless we are talking about different games

  • @jacobprentice2649
    @jacobprentice264928 күн бұрын

    I think the brightness value would technically be gamma but i just learned that today so idk

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    No, they are two completely different things, just google it.

  • @jacobprentice2649

    @jacobprentice2649

    28 күн бұрын

    Good to know thanks​@@nitro-gen-studios

  • @jacobprentice2649

    @jacobprentice2649

    28 күн бұрын

    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

  • @VRchitecture
    @VRchitecture26 күн бұрын

    What tool(s) have you used for animations?

  • @nitro-gen-studios

    @nitro-gen-studios

    25 күн бұрын

    Premeire Pro, and Godot for the 3D stuff.

  • @VRchitecture

    @VRchitecture

    25 күн бұрын

    @@nitro-gen-studios Got it, thanks!

  • @tylercathey
    @tylercathey29 күн бұрын

    Whats the didference between this and cell shading

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    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.

  • @gaborfekete3777
    @gaborfekete377729 күн бұрын

    it seems you are using linear colors as the final output color, try using gamma correction: pow(finalRGB, vec3(1./2.2))

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    I'll try it out!

  • @WingofTech
    @WingofTech13 күн бұрын

    Reminds me a lot of Lethal Company!

  • @nitro-gen-studios

    @nitro-gen-studios

    13 күн бұрын

    That's because LC uses posterization on their volumetric fog!

  • @zsigmondforianszabo4698
    @zsigmondforianszabo469829 күн бұрын

    A magyar akcentus megcsapott ugyhogy jottem a komment szekcioba :D szuper video, igy tovabb!!

  • @therealpeter2267

    @therealpeter2267

    29 күн бұрын

    én is egyből kiszúrtam xD

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    xd

  • @Lars_Ziah_Zawkian
    @Lars_Ziah_Zawkian9 күн бұрын

    Alpha Minecraft lighting effect

  • @truemori6700
    @truemori670029 күн бұрын

    youtube compression type shader

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    real

  • @abdelrhmanhatem6872
    @abdelrhmanhatem687210 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    10 күн бұрын

    which shader and what is the issue?

  • @abdelrhmanhatem6872

    @abdelrhmanhatem6872

    9 күн бұрын

    ​@@nitro-gen-studios 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

  • @nitro-gen-studios

    @nitro-gen-studios

    9 күн бұрын

    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

    9 күн бұрын

    Thank you bro, the problem was me applying the shader to the objects instead of the camera lol! actually excited for new videos.

  • @hotdog9259
    @hotdog925912 күн бұрын

    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.

  • @nitro-gen-studios

    @nitro-gen-studios

    12 күн бұрын

    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.

  • @catfree
    @catfree24 күн бұрын

    My Flip Phone does this automatically

  • @MudraptorGaming
    @MudraptorGaming28 күн бұрын

    So.. color banding and bad print contrast as an aesthetic

  • @nitro-gen-studios

    @nitro-gen-studios

    28 күн бұрын

    Stylized rendering™

  • @zapalniczkakaminski9990

    @zapalniczkakaminski9990

    28 күн бұрын

    Yes

  • @BadmanYT-1254
    @BadmanYT-125410 күн бұрын

    I only new this from my 2DS lol

  • @titanic_monarch796
    @titanic_monarch7965 күн бұрын

    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
    @Scruffysnake29 күн бұрын

    Does using a LUT work for this?

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    You could probably make it work, but I'm trying to keep it all procedual.

  • @Scruffysnake

    @Scruffysnake

    29 күн бұрын

    @@nitro-gen-studios 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)

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    @@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

    29 күн бұрын

    @@nitro-gen-studios possibly yeah

  • @stormyfish404
    @stormyfish40421 күн бұрын

    Lethal Company:

  • @nitro-gen-studios

    @nitro-gen-studios

    21 күн бұрын

    Lethal Company

  • @ThatSkiFreak
    @ThatSkiFreak29 күн бұрын

    no shot

  • @guestc142
    @guestc14221 күн бұрын

    Just use windows 3.1 if you want the definitive quantisation experience.

  • @nitro-gen-studios

    @nitro-gen-studios

    21 күн бұрын

    So true

  • @markigames7313
    @markigames731329 күн бұрын

    Isn't that a cell Shader, that is used frequently?

  • @menaced.

    @menaced.

    29 күн бұрын

    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

  • @nitro-gen-studios

    @nitro-gen-studios

    29 күн бұрын

    @@menaced. Correct! I did add an outline shader in my game because combining the two effects looks really nice.

  • @GamerGuyplays
    @GamerGuyplays20 күн бұрын

    I think hylics uses this

  • @griefinnub3745
    @griefinnub374523 күн бұрын

    Hylics by @masonlindroth looks really similar to this

  • @nitro-gen-studios

    @nitro-gen-studios

    23 күн бұрын

    Yes, but I don't think it actually uses posterization. I think they just drew their assets to look that way.

  • @cccrit
    @cccrit25 күн бұрын

    hey this is my hidden mojo dont popularize now before i exploit it

  • @nitro-gen-studios

    @nitro-gen-studios

    25 күн бұрын

    same :) but also Lethal Company exists so we are kind of late on that

  • @TeletubProd
    @TeletubProd26 күн бұрын

    I use it!

  • @v2namusic
    @v2namusic27 күн бұрын

    Aren't you from Hungary by any chance? Your accent reminds me of the Hungarian accent 😅

  • @nitro-gen-studios

    @nitro-gen-studios

    27 күн бұрын

    yes I am xd

  • @v2namusic

    @v2namusic

    27 күн бұрын

    I heard you right! by the way, I really liked the video, it reminded me of the Acerola youtube channel.

Келесі