Crafting a Better Shader for Pixel Art Upscaling

Поділитися
Вставка
  • Опубліковано 25 гру 2024

КОМЕНТАРІ • 369

  • @samuelmediani
    @samuelmediani Рік тому +356

    The quality and clarity of this video is surprising. You are both a great programmer and educator

    • @loco-ok5bi
      @loco-ok5bi Рік тому +3

      and animator

    • @X22GJP
      @X22GJP Рік тому

      Saying to somebody, "I'm surprised you did so well" is actually kinda' insulting, no matter how good the intent.

    • @t3ssel8r
      @t3ssel8r  Рік тому +8

      no harm no foul

  • @aarthificial
    @aarthificial Рік тому +319

    Fascinating video! I'm currently using the naïve method of first scaling up by the floored ratio using nearest neighbor and then scaling up the result with bilinear filtering. I need to give your method a try.

    • @t3ssel8r
      @t3ssel8r  Рік тому +138

      yo ty for the motion-canvas it made those code animations so painless (unlike almost everything else about making this video lmao)

    • @CloudPhase
      @CloudPhase Рік тому +12

      I was literally thinking about you throughout this entire video, I even considered reaching out to you about this video as I would love to see you implement something like this in your own game so this is great to hear.

    • @clankfish
      @clankfish Рік тому +15

      i mix you two guys up constantly

    • @floppypaste
      @floppypaste Рік тому +1

      ​@@clankfish😂 same

    • @meme-tastic6089
      @meme-tastic6089 Рік тому

      @@t3ssel8r BROOO I WAITED FOR 2 YEARS U STILL DIDNT GIVE OUT UR 3D TO 2D ART MAKERRR. PLSS MAKE IT AVAILABLE TO BE DOWNLOADED.

  • @MercurySteel
    @MercurySteel Рік тому +486

    I didn't understand a single thing but it was fun to watch

    • @JJalmanke
      @JJalmanke Рік тому +9

      동감한다

    • @MercurySteel
      @MercurySteel Рік тому +16

      @@JJalmanke
      я не говорю по-китайски

    • @ciso
      @ciso Рік тому +12

      ​@@MercurySteel I think he he said that he agrees

    • @D01Light
      @D01Light Рік тому +7

      T'as pas tord

    • @Jlewismedia
      @Jlewismedia Рік тому +6

      ​@@ciso booga wooga ooga

  • @ChillestDudeEver
    @ChillestDudeEver Рік тому +65

    After discovering this channel, I binged the content so hard. Concise explanations, logical flow through the explanations, high production quality, practical applications of concepts... These videos are just superb from both an educational and entertainment perspective. Kudos!

  • @sgtreckless5183
    @sgtreckless5183 Рік тому +38

    This might have been the first complex shader video that I've seen that I was able to follow each step of. Really great vid!

  • @pixelarp
    @pixelarp Рік тому +20

    Been waiting for a new upload from you! Last video was a treat! Keep it up, both your game and yout videos!!

  • @LordFaultier
    @LordFaultier Рік тому +24

    Your overview of these mechanics have been very helpful and pretty insightful for my own projects. You are truly brilliant! Thanks for putting out such a wonderful content :)

  • @BenjaminCode
    @BenjaminCode Рік тому +5

    The amount of work you put in this video to teach us something that should be so hard to grasp is insane. As a UA-camr myself, I see all the work there is behind this video and it makes me even more grateful.
    As usual Tim Soret's recommendations are dope.

  • @capsey_
    @capsey_ Рік тому +7

    Never thought of using bilinear sampling as box average. Love your videos, they are unique that you deep dive into heavy math and technical details about niche problems while keeping it extremely approachable and entertaining! Visualizations are well made

  • @MrA6060
    @MrA6060 Рік тому +7

    Dicovered this channel with the absolutely brilliant animation with math video, and it just keeps on providing cool, informative and very well made videos

  • @semmu93
    @semmu93 Рік тому +6

    the animations in this video are seriously jaw-dropping. such a high quality work, very easy to understand and follow, well done!

  • @j_smith_
    @j_smith_ Рік тому +5

    Congratulations on the #some3 win!

  • @interessts5033
    @interessts5033 Рік тому +2

    I have been watching youtube videos for about 10 years or so and this is no joke the very best one I have ever seen. The amount of work you must have put into this seems so much! Congratulations!

  • @snesmocha
    @snesmocha Рік тому +214

    always love a nonbullshit full explenation of a system!

    • @Jake28
      @Jake28 Рік тому +3

      explanation*

    • @snesmocha
      @snesmocha Рік тому +1

      @@Jake28 um, comments already hearted so ummmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm 💀

    • @Jake28
      @Jake28 Рік тому +6

      @@snesmocha just let people discover the correction in the replies on their own

    • @snesmocha
      @snesmocha 8 місяців тому

      @@Jake28I return to this comment 10 months later and am just face palming rn 😂

  • @JayFolipurba
    @JayFolipurba Рік тому

    no video in 10 months, I randomly check out this channel and here you are.
    I just realised that this is probably how all 3D texture editors work, like blender textured view and substance etc. At least it has the same effect.
    The effect it has on your game is perfect!

  • @OrangeJambo
    @OrangeJambo Рік тому +1

    I cant tell you how exciting it is to get another video from you! Leaving another comment after watching. :)

  • @GGCannon
    @GGCannon Рік тому +3

    Holy... I started re-watching your older videos yesterday, wondering when you'd post a new one because it had been a while and just woke up today to this *GIFT*.
    Love your content and one of my wish is to develop the skill set to do something similar to what you do.
    Thank you for the video.

  • @hypersphericalmanifold
    @hypersphericalmanifold Рік тому +1

    You're back! I'm going to have to try this for one of my projects.

  • @bobthedeleter
    @bobthedeleter Рік тому +2

    always a good day when this guy uploads. keep up the videos, you have a talent for explaining these concepts in such a concise way!

  • @retro_marco3363
    @retro_marco3363 Рік тому +2

    Man, you are on some big brain stuff. Amazing results for next level pixel art!

  • @xlkfromsmwc
    @xlkfromsmwc Рік тому

    Wow! I made a similar implementation when trying to make multi-colored SDFs, and while I directly went with the fwidth() approach, I hadn't considered updating the uv gradients nor the sampling window!
    Also having the explanation as to why this works in the first place was amazing! Thank you so much for these videos!

  • @therealgamewizerd
    @therealgamewizerd Рік тому +4

    I'm probably never going to use this specific type of shader ever, but the quality of the video was so good and the production value felt so high that I feel you earned a sub regardless. Incredible video

  • @antoniomiguel9920
    @antoniomiguel9920 3 дні тому

    your videos are amazing to watch, they make me want to become a game maker in the future even more and i started to love this pixelated 3d style. i really hope you continued this career and finished your game, i wish i could support you in more than liking and sharing your videos, but i dont have money nor work, because im still a kid. Every now and then i come back to watch these masterpieces.

  • @1000orks
    @1000orks Рік тому +3

    I feel very stupid for having the same problems (for dynamic UI scaling actually) and going with the first algorithm thinking this is good enough.
    Then encountering all the problems you have adressed in your solution and now realizing I should have just watched until the end and not just vaguely remember.
    Thank you - this really helped a lot!

    • @t3ssel8r
      @t3ssel8r  Рік тому +3

      thanks! I was motivated from hearing similar struggles from several different teams (RadicalFish, Tim Soret, Aarthificial, ...) so I thought I would really cover all the details one is likely to run into when doing this.

  • @drawnsequence
    @drawnsequence Рік тому

    I'm absolutely floored by the quality, skill, and knowledge on display here.

  • @warmechanic8186
    @warmechanic8186 Рік тому +1

    I've always loved how your videos explain topics in detail while making good use of visual demonstration. Where I would have been stuck on how perspective effects anti-aliasing, I understood in seconds with the warped quadrilaterals.

  • @ThatTrueCJ201
    @ThatTrueCJ201 Рік тому +1

    This guy is slowly teaching me math better than some of my professors. What is referred to as the deformation gradient in the video, is more generally called a Jacobian.

  • @nibbler7
    @nibbler7 Рік тому +5

    BABE WAKE UP, t3ssel8r UPLOADED A NEW VIDEO!!!

  • @PMA_ReginaldBoscoG
    @PMA_ReginaldBoscoG Рік тому +1

    Congrats on getting the first place in Grant Sanderson' favourite 25 videos of #some3🎉

  • @beastbomber2316
    @beastbomber2316 Рік тому +1

    So happy you are back!

  • @Tubeytime
    @Tubeytime Рік тому +4

    As a digital artist, I understand this concept intuitively, but not mathematically. Fantastic explanation, I'm sure.

  • @mischahordijk9385
    @mischahordijk9385 Рік тому +1

    Amazing vid and your game at the end looks sick, can't wait for the next update on that project. Keep up the stellar work!

  • @OrangeJambo
    @OrangeJambo Рік тому +3

    So many titles fail at this scaling issue & when im working & seeing titles come through.. it's a huge pet peeve that these studios cannot figure out what you worded so clearly.
    Great video! Glad to see this topic arise more, modern pixel genre games all need to take note.

  • @normalperson4925
    @normalperson4925 Рік тому +2

    good to see you again!

  • @sw97058
    @sw97058 6 місяців тому +1

    This was a game changer. I am working in Godot and with a simple translation this shader is working better than any other option, including heartbeasts jitter-free scaling shader. This is perfectly upscaling my 720p pixel art to 1080p.

  • @alextheshinymonkey
    @alextheshinymonkey Рік тому

    Keep it up! Love how much your content has grown, from the twitter gifs to here, it's great

  • @danielsiriste917
    @danielsiriste917 Рік тому +1

    Your video editing, the way how you explain things and subjects are pretty impressive. You are very talented man!

  • @ShiftyTheDev
    @ShiftyTheDev Рік тому +1

    Wow, this was a phenomenal video! Seeing how far your game has developed over the past few years has been great, but these explanations are something in a league of their own. Excellent job!

  • @EricBatlle-k7u
    @EricBatlle-k7u Рік тому

    Please never stop doing this so high quality explanatory videos, I'm just amazed

  • @Veptis
    @Veptis 2 місяці тому

    I am very happy to come across this video. It shows a ton of sampling concepts with great examples. Will send it to other people as reference

  • @luckyknot
    @luckyknot Рік тому

    I would need a few lives fully dedicated to study shaders to understand this, but even if I got a 2% that's new knowledge for me. Thanks for this superb visuals presentation, and btw your game is shaping up to be a major hit, best luck sir!

  • @starbi
    @starbi Рік тому

    I really appreciate the way you go into great detail about technical aspects that might not seem as important in the grand scheme of things - really perfecting them. I'm sure when this all culminates into your game, you will be able to feel that extra layer of polish. Looking forward to disecting this when I get my hands on it! Great work as always. :^)

  • @FriedBacon88
    @FriedBacon88 10 місяців тому +2

    I love your videos. Hope everything is good on your end

  • @yannickleroy7419
    @yannickleroy7419 Рік тому

    Love how in-depth you go in these videos

  • @gogokowai
    @gogokowai Рік тому

    With so much of modern gaming being for-profit shovelware where the devs just throw together premade asset packs and slap microtransactions on it, I have really learned to appreciate the real game dev pioneers figuring out the math and spending hours on problems that others just live with because fixing it would be too much work. Your game has so many interesting systems that the industry typically deems not cost effective or impactful enough to work on, but they're compounding into something amazing that you typically only see from AAA titles that give their developers the time/money/freedom to add polish (which is extremely rare). Most games would only have 1 or 2 of the features your videos cover and base their entire gameplay around it because of how cool it is, and here you are cramming them into a single game just for small aesthetic boosts. I can't wait to see the end result..

  • @goldyloxeg
    @goldyloxeg Рік тому

    absolutely incredible. you have a gift for this. amazing visualizations

  • @DarshUK1
    @DarshUK1 Рік тому

    I have no idea what you're on about but the video is weirdly relaxing and the editing is really nice. Great job

  • @Mefrius
    @Mefrius Рік тому

    I am so happy to see you come back! Your videos are really hard but very useful!

  • @AntoCharles
    @AntoCharles Рік тому

    Awesome! Always a treat when you upload! love the detail and editing that goes into these explanations. I could imagine this'll help a lot of people.

  • @1ogic948
    @1ogic948 Рік тому

    I love learning about technical details like this. Excellently presented.
    Also, looks like a lot of work got done on the gameplay and such, which is looking very exciting!

  • @justlearning1881
    @justlearning1881 Рік тому

    glad to see you dev blossom, been subbed

  • @jeffreystephens2658
    @jeffreystephens2658 Рік тому

    Excellent presentation. Very clear, very easy to understand, and absolutely zero frills. This is fantastic content.

  • @xx_Ashura_xx
    @xx_Ashura_xx Рік тому

    been watching this series since day 1 and i cant wait to see the final product i love every video

  • @GonziHere
    @GonziHere Рік тому

    That video is fully amazing, loved every second and stored as a reference.

  • @nameno7032
    @nameno7032 Рік тому

    God like explaination, please make more of this math related content, the transformation into fwidth is so smooth!

  • @denisbryukhachev3663
    @denisbryukhachev3663 Рік тому +1

    Maaaan instant subscribe to your patreon, wish you good luck with your project!
    Don't forget to add some content before release (weapons, abilities, enemies), this beatiful game must be played by a lot of people))

  • @pheelgad5455
    @pheelgad5455 Рік тому +2

    THIS GUY IS SO FREAKING SMART DAM

  • @hafl-evil333
    @hafl-evil333 Рік тому

    The legend has returned.

  • @PleepusPlopus
    @PleepusPlopus 5 місяців тому +19

    where'd bro go :'(

    • @poly_xp
      @poly_xp 4 місяці тому +1

      The video take alloooot if time to make man.

  • @niklas5336
    @niklas5336 Рік тому +1

    This scaling method is also useful in video/image display, in particular for solving the issue of temporal aliasing. The popular video player mpv had the (simplified) version of this scaling method for 10 years, as the name “oversample”, for both scaling and frame mixing. VLC 4 has had it a few years also.

  • @alexpic9821
    @alexpic9821 Рік тому

    I really love watching your videos. Keep up the great work! Can't wait to see more.

  • @veromolpa
    @veromolpa Рік тому +1

    My guy, your videos are amazingly helpful and well done

  • @SpaceflightSimulator_Official

    The production quality of this video is absolutely amazing.

  • @NickRoyOfficial
    @NickRoyOfficial Рік тому

    the king has returned

  • @AntoCharles
    @AntoCharles Рік тому

    Congrats on the golden pi creature was a nice surprise to find your video mentioned !!

  • @Donahue9389
    @Donahue9389 Рік тому

    You are such an incredible creator and thinker. Just so deeply impressed 🙇‍♂

  • @davidrichey2034
    @davidrichey2034 Рік тому +1

    such a high quality video, love it!

  • @christopherheardalmagrande1372

    Incredible videos. The 3blue1brown of game dev. Tremendously grateful for your efforts!

  • @literallyjeff
    @literallyjeff Рік тому +1

    Great video, really stellar visualizations

  • @mikkelens
    @mikkelens Рік тому

    I was pretty unsure at first if your technique was actually prettier than nearest neighboor in my opinion, but turns out that was only an issue because you were zoomed in on a low resolution upscaling. I think your usage of this in the footage you showed of your game was very pretty, super impressed.

    • @t3ssel8r
      @t3ssel8r  Рік тому

      ahh yeah it's a bit tricky to balance in a youtube video since everyone could be watching on vastly different devices. I might have over-optimized for small phone screens

  • @bigmojito1765
    @bigmojito1765 Рік тому

    This is cool! I've been stuck on working with OpenGL stencil buffers to achieve something similar to octopath, but its inspiring to see progress in this art style

  • @fletchcanny717
    @fletchcanny717 Рік тому

    Thank you! I stg it is impossible to find anyone saying that you can scale pixel art to non integer resolutions! The only exceptions seem to be Casey Muratori, a shader on shader toy, shovel knight, and a video about doing it in Godot by HeartBeast, and even the Godot documentation says it can't be done! Thank you so much for the simple description!

  • @momiko934
    @momiko934 Рік тому

    Return of the king !

  • @thygrrr
    @thygrrr Рік тому

    I've used several of these techniques, but only had an intuition. Your explanations really expanded my understanding. Your3D stuff looks absolutely stunning, and I'm considering some kind of pixelated look after switching engines from unity to Godot.

  • @BirdieDev
    @BirdieDev Рік тому

    This is unbelievably rad, great work.

  • @AbachiriProduction
    @AbachiriProduction Рік тому +1

    bro you are amazing, your are the one that inspired me to build my game in similar style to yours . keep going bro 🖤

  • @Eleazarus07
    @Eleazarus07 Рік тому

    Yeah! I will play this game. Seeing the techniques is wonderful.

  • @yellowpie
    @yellowpie Рік тому

    I’m about 6 weeks into a class on graphics programming, and this video is a really neat intersection of things I totally understand and things I don’t get at all

  • @heliusuniverse7460
    @heliusuniverse7460 Рік тому +1

    I think this will be very useful for my rendering engine. thank you for the amazing explanation

  • @ersatztutor
    @ersatztutor Рік тому +1

    Awesome as always!

  • @Jay-dk6hf
    @Jay-dk6hf Рік тому

    Amazing production quality

  • @MusicalSkele-
    @MusicalSkele- Рік тому +1

    omg a new video after years

  • @Iuigi_t
    @Iuigi_t Рік тому +1

    YOOOOO, GUYS, HE'S BACK!!!!

  • @ro-ce8vg
    @ro-ce8vg Рік тому

    congrats on winning in SoME3!

  • @orbatos
    @orbatos Рік тому +1

    Great approach, and easy to understand.

  • @rorypenstock1763
    @rorypenstock1763 Рік тому +1

    Wow. Very clever, and very well-explained.

  • @astrid.5973
    @astrid.5973 Рік тому

    you make some of the best videos on game programming implementation ❤

  • @imrawasf
    @imrawasf Рік тому

    This video deserves more views

  • @zanarkandmusic
    @zanarkandmusic Рік тому

    I love your art style for your own game! I want to play it!

  • @dogzer
    @dogzer Рік тому +1

    It looks really good. I really like this style

  • @Sporkabyte
    @Sporkabyte Рік тому

    Great video, the jacobian saves the day once again

  • @ben256dev
    @ben256dev Рік тому

    This video was very well made! Game looks awesome too as always

  • @Y1001
    @Y1001 Рік тому +1

    High quality work, thank you! :)

  • @wolfpox
    @wolfpox 8 місяців тому +1

    😵‍💫 so cute graphics are actually rocket science

  • @yankilo
    @yankilo Рік тому +4

    It's nice to see smooth pixel art upscaling instead of the blurry one.
    The video and your work is very inspiring btw.

  • @INDABRIT
    @INDABRIT Рік тому

    Another great video. Your game looks stunning, I hope to play it someday

  • @mondzahn
    @mondzahn Рік тому +1

    i love this channel

  • @diligencehumility6971
    @diligencehumility6971 Рік тому +1

    You are the 3D pixel art master

  • @iamahtic
    @iamahtic Рік тому

    Not only bro is good at making games but the editing is crazy too

  • @JoseALugoR
    @JoseALugoR Рік тому +1

    You do a great work by sharing your knowledge in such a clear and helpful waym thanks a lot. This is why we humans are awesome.