Creating an Interior Mapping Shader using Unity's Shader Graph - Game Dev Sandbox

Поделиться
HTML-код
  • Опубликовано: 25 янв 2025

Комментарии • 312

  • @Danidev
    @Danidev 4 года назад +950

    This was really interesting, good job man!

    • @yousifragab479
      @yousifragab479 4 года назад +96

      Why you don't try and add this to Karlson (or you can't do that)

    • @supriyakhanra9068
      @supriyakhanra9068 4 года назад +11

      @@yousifragab479 why u bully him ?

    • @yousifragab479
      @yousifragab479 4 года назад +27

      @@supriyakhanra9068 Not bullying, he made a game called Karlson because someone challenged him and said that he can't make a 3d game and since then many people comment on his videos like this lol. I'm just joking, I do love his videos.

    • @rklehm
      @rklehm 4 года назад +5

      You should try it... (You know to finish it, don't you?)

    • @MicMan2710
      @MicMan2710 4 года назад +5

      @@yousifragab479 It would look pretty good in Karlson. Once he developed that he can also just throw it into Milkman Karlson as well.

  • @erz3030
    @erz3030 4 года назад +259

    Wow, this was way more impressive than I expected. You could flesh this out a bit and sell this as an asset I bet. Keep up the excellent content, cheers :)

  • @reezuleanu1676
    @reezuleanu1676 4 года назад +133

    Local hero teaches game designer wannabes how to pull off rad effects. Thank you sir.

  • @dawdledev
    @dawdledev 4 года назад +100

    Awesome tutorial! I really appreciate that you both explain the shader and include a full view of the shader graph so it can easily be recreated! The struggle to recreate a shader using nothing but gifs of the finished product and maybe some code that doesn't work anymore is the worst part of game dev.

  • @markscott6927
    @markscott6927 3 года назад +17

    Back in the day when I worked for a larger game publisher, central tech did a presentation on several shader options for the XBox and PS3. What they called a ' depth shader' is what we have here. This was ~2004. After playing with all our nice new shaders we were immediately informed that they were too expensive to use.
    And such is the life of a game artist

    • @standardLit
      @standardLit 4 месяца назад +2

      Senior game artist:
      "I am limited by the technology of my time, but one day you will figure this out"

    • @IAmSoMuchBetterThanYou
      @IAmSoMuchBetterThanYou 4 месяца назад +1

      ​@@standardLitExactly. Cheers

  • @KentHambrock
    @KentHambrock 4 года назад +2

    There's free drop in resources on the Unity Asset Store for this, but I love that you built it from scratch and showed the process for those of us who want total control over the process.

  • @ZackLondres
    @ZackLondres 4 года назад +2

    i made a new playlist just because of this video called "stuff i should put in a game" Just seeing a practicle demonstration of this helps understand ideas that are within ones grasp. Thank you for reminding me of that.

  • @andrewpiltenko9432
    @andrewpiltenko9432 4 года назад +135

    People install Windows to play games, this guy installs games to play with windows.

  • @Hamentsios10
    @Hamentsios10 4 года назад +2

    Things like that are what makes game developing so much interesting and fun to mess with these innovations are so interesting to come up with even in smaller scales. it does make it more difficult than challenging to accomplish but it adds more magic to it and makes everything so interesting.

  • @GameOnBudget
    @GameOnBudget 2 года назад +1

    Want this city you made 😍

  • @avatar098
    @avatar098 4 года назад +5

    I'm a software developer by trade, but video game developers have always inspired me. Y'all are literally the intersection between art, story telling, and computer science. So I've been dabbling a bit in video game development, and man, what you guys do is NOT easy. Much respect for content creators like yourself!

    • @alexpaww
      @alexpaww 4 года назад

      Sadly, professional video game developers are chronically underpaid and overworked. Not a great industry to work in.

  • @Crystan
    @Crystan 4 года назад +20

    I was today years old when I realised Spiderman didn't have rooms rendered behind those windows. This is an amazing technique, and one which I would love to make use of in future projects!

    • @stylie473joker5
      @stylie473joker5 2 года назад

      I remember seeing someone on reddit posting about how Forza horizon 4 Devs had attention to detail when they modeled the interior of building windows he'd be disappointed if he knew the truth XD

  • @coderious4568
    @coderious4568 3 года назад +2

    That is true dedication, great job!

  • @ml5111
    @ml5111 4 года назад +2

    This is a brilliantly presented video on a really interested topic, deserves so many more views!

  • @rickloyd8208
    @rickloyd8208 3 года назад

    It took me a year to find a time and watch this video saved in my downloads. I do not regret that since I am learning shaders in details and I can better understand how powerful this trick is. Thank you for another great video!

  • @MertKirimgeriGameDev
    @MertKirimgeriGameDev 4 года назад +4

    That's a nice one! For a few months ago, when I was creating my version of this tutorial, I followed similar steps to your thought process. Happy to see it kinda converges with others like a common sense :)

  • @DagothDaddy
    @DagothDaddy 4 года назад +23

    Forget "No loading between buildings." Or "you can climb those mountains." Give me "See that window? You can look through it."

  • @GameDevEFacil
    @GameDevEFacil 2 года назад

    This shader looks really amazing, good job

  • @TNTCProject
    @TNTCProject 4 года назад

    Incredible analysis and final result! Love it. Goooooood job!

  • @timothysnave
    @timothysnave 3 года назад

    That's really cool. Just a note - the pacing in these sandbox videos is, IMO, way better than your other videos (from what I've seen so far). Sometimes I can't keep up visually in your other videos. This weird concept exploration format is gold, though.

  • @ThousandAnt
    @ThousandAnt 4 года назад +1

    This is sooooo cooooooool! Great work Matt! I always loved this technique and you've done a great breakdown here.

  • @AstroSamDev
    @AstroSamDev 4 года назад +1

    nice work! good job!

  • @flyingjudgement
    @flyingjudgement 3 года назад

    Waoo you actualy cover complicated topics and you do them realy well Thank you. Your works are realy amazzing, cant wait to watch what pics you interest.

  • @graffiti9145
    @graffiti9145 2 года назад

    It adds life and a soul to the game's ambience

  • @piotrw1745
    @piotrw1745 4 года назад

    Awsome video! I love this type of video, which shows the whole creative process, showing problems encountered and searching for information.

  • @CodingWithUnity
    @CodingWithUnity 4 года назад

    Great info as always! I really enjoyed the watch!

  • @thedeveloper2771
    @thedeveloper2771 4 года назад +2

    Thank you for sharing it with the community! Great job!

  • @dimitribobkov-rolandez5729
    @dimitribobkov-rolandez5729 4 года назад

    I'm just gonna borrow this for a second... nice video man!

  • @neenaw
    @neenaw 4 года назад

    Your videos are so next level 🤯

  • @crapgames6795
    @crapgames6795 4 года назад +3

    Holy crap, this is amazing! God bless the algorithm for recommending this.

  • @mohhammadmohsin7
    @mohhammadmohsin7 4 года назад +1

    Man u make some real tutorials...... Love it 😍

  • @Sevendogtags
    @Sevendogtags 4 года назад +1

    Nice! It really adds a lot to a simple environment.

  • @AaditDoshi
    @AaditDoshi 4 года назад +4

    Great video! I appreciate your efforts! I just wish you went into a little bit more detail about why something went wrong, and how changing it fixed it, an example is around the 4:15 mark

  • @brandonz404
    @brandonz404 4 года назад

    You spent a ton of time on this obviously and this is really interesting. Great work!(:

  • @tehuster
    @tehuster 4 года назад

    Great video dude, very informative bit also fun to watch!

  • @gone8792
    @gone8792 4 года назад +1

    Bro, the fact that I was just looking for a video like this 3 days ago is crazy lmao

  • @RiversJ
    @RiversJ 3 года назад

    Thank you for this video, i won't be using this for windows but i will be using the basic techniques for something else that will be far better than my initial implementation!

  • @RoseIllo
    @RoseIllo 4 года назад +1

    Fun fact! One of the examples you gave for blackout windows, Cities Skylines, does actually use a technique similar to this, with the exception that it only shows the floor inside the window, that fades into the distance. So you have interiors, but the interiors are all empty wooden floors and nothing else.

  • @harveyduenas8745
    @harveyduenas8745 4 года назад

    Woohoo! Nice job. Now I'm off to create my own interior mapping shader, and hopefully learn from your tribulations. Keep up the awesome content!

  • @ThomasJeff4s0n
    @ThomasJeff4s0n 4 года назад

    I was JUST thinking about how to do this same thing! Great video! Thanks!

  • @connoraustin22
    @connoraustin22 4 года назад +1

    Great tutorial as always, you have some of the highest quality game dev content on youtube. Another suggestion that I would think would be helpful, and go along with your strategy/city builder game theme that comes up in some of your videos, would be a tutorial on how to create a 3D based grid map system, Where buildings/units/roads are snapped to a grid when placed. This would be a great niche to hit, as the current tutorials for this on youtube are either poorly made or use an inefficient method to create this. Cheers

  • @jacobmartincontreras
    @jacobmartincontreras 4 года назад

    This is the type of thing that makes this game next gen

  • @tajaloe
    @tajaloe 4 года назад +34

    My brain: render out a room in one image with a depth map. Use those textures on a model and use inverse camera mapping to displace using a parallax node. idk if that works lmao I haven't tried it, but someone should. Probably not as performance Friendly though, but hey, you get per object depth information at the sub pixel level, so that's cool I guess

    • @KusalGunasekera
      @KusalGunasekera 4 года назад +17

      That's exactly what I was thinking, we could improve the illusion of depth specially for the things that stick out. But then again, if you're using it for something that will whizz by at 250kmph then there's no point XD. Maybe for something like spider man, they can replace the faked room with a full 3d room once he gets close enough to the window

    • @stan_p
      @stan_p 4 года назад +1

      you can get a real struggle doing this, cauz you adding things you shouldn't. Depth map cant be baked on the UV of cubemap, so this is first problem to solve if you about to mix those pipelines.

    • @lukabrasi001
      @lukabrasi001 3 года назад

      @@KusalGunasekera honestly, in Forza Horizon 5, the normal cubemap approach works really well, things look 3D enough with a little trickery

  • @shivin12
    @shivin12 4 года назад

    Really like your channel ,please post more often

  • @xqrdot
    @xqrdot 4 года назад

    That is incredible! Thank you for that video, it was really interesting to watch

  • @MicahTheManiac
    @MicahTheManiac 4 года назад

    This is very cool. I wish that more games would use this technique, it seems like something like this isn't that resource intensive given that Spider-Man for the PS4 uses it.

  • @jojoyoustudio
    @jojoyoustudio 4 года назад

    You have so professional game devs and ideas ♥

  • @AmanKumar-tu2og
    @AmanKumar-tu2og 4 года назад

    This is really interesting and intriguing!! Thanks for the amazing explanation.

  • @marcocacone
    @marcocacone 4 года назад +1

    You are amazing! Thank you for sharing your knowledge

  • @Th3Shnizz
    @Th3Shnizz 4 года назад

    This is incredibly cool. Thank you for sharing!

  • @waymanharris1284
    @waymanharris1284 4 года назад

    Wow, good job! This is nice, thanks for sharing.

  • @safrio802
    @safrio802 4 года назад +1

    Wuaoooo sin palabras.... Excelente tutorial me sentí emocionado por el shader y el resultado logrado..

  • @anand.suralkar
    @anand.suralkar 3 года назад

    Man u r opening my eyes to AAA level game graphics

  • @siavashaliyari3458
    @siavashaliyari3458 4 года назад

    Awesome work man

  • @Jewalify
    @Jewalify 4 года назад +1

    This is so cool. It only works in 2D. In VR this wouldn't work, you would be able to tell that it's a flat surface but it would still kind of look like it had depth

  • @DARK_AMBIGUOUS
    @DARK_AMBIGUOUS 2 года назад +1

    1:29 how did the room change???

  • @monawoka97
    @monawoka97 4 года назад +2

    I would LOVE to see a video on projection decal shaders. I know that HDRP has these built in, but I would love to have it decomposed in shader graph so I could do some more custom processing on the texture that gets projected.

  • @magneticanimalism7419
    @magneticanimalism7419 4 года назад

    This was really interesting to watch, I'm highly unlikely to ever use it but it was awesome. Thank you.

  • @GrandHighGamer
    @GrandHighGamer 4 года назад +4

    Nice. The front glass should be part of the shader though, no need for all that overdraw.

  • @Dogedevnet
    @Dogedevnet 4 года назад

    Awesome, my brain is screaming out of confusion but in a good way, great job :D.

  • @GameWorkflow
    @GameWorkflow 4 года назад +1

    Really cool stuff. It would be cool to do some kind of comparison test with this way and the more traditional method. I'm curious to see the performance of this technique vs the simpler one.

  • @Stxhen
    @Stxhen 2 года назад

    beautiful, good job

  • @mohammadsadeghlavaie5560
    @mohammadsadeghlavaie5560 4 года назад

    you know how much we love you?

  • @javimania111
    @javimania111 4 года назад

    In 2005 this technique was used in a game called Trackmania Sunrise, in buildings in the bay enviroment. The effect didn't look as good as in current games, but it's still quite surprising considering the time.

  • @freeju2001
    @freeju2001 4 года назад

    This is amazing !

  • @damiangonzalez_esp
    @damiangonzalez_esp 4 года назад

    Excelent video! Thank you for sharing this knowledge

  • @YognaughtAce
    @YognaughtAce 4 года назад

    wow, that is incredible

  • @juanquireyes6703
    @juanquireyes6703 4 года назад

    must be nice to be a genius like you

  • @MarcelGrolms
    @MarcelGrolms 4 года назад +1

    Amazing! Would also be interessted in how the script works to get the cubemaps for the rooms. I already learned so much from your videos, thank you!

    • @GameDevGuide
      @GameDevGuide  4 года назад +1

      It's literally the editor script shown in the video. That's all there is to it. It uses the default Camera.RenderCubemap feature as I mentioned.

  • @nolanjoseph1553
    @nolanjoseph1553 4 года назад

    I actually first noticed this when playing on Naboo in Battlefront 2. Interesting stuff!

  • @julienheijmans
    @julienheijmans 4 года назад +1

    Really nice video !
    I was thinking that something that could be cool and give it a sense of increased fidelity would be to display some curtains that are displayed with a smaller parralaxe offset in front, on the sides of the windows. That would give the illusion that the player can see what is behind the curtains. (Said curtains should then be in a different texture, not integrated in the cubemap, of course)

  • @ChupachuGames
    @ChupachuGames 4 года назад

    Fantastic video, thanks so much!

  • @Bobby_Go
    @Bobby_Go 4 года назад

    Do you still need to flatten the objects along the walls after you negated the tiling values at 6:56? Wouldn't that also fix the skewing of any objects in the room, like at 6:08? Or will that always be the nature of this type of projection?

  • @njebs.
    @njebs. 4 года назад +38

    Really cool video! As a followup, could you potentially create a system that automatically randomises each room for every iteration of the cubemap, just to add that extra bit of variation?

    • @GameDevGuide
      @GameDevGuide  4 года назад +17

      Yeah, there's a lot more you could do with it. In theory, you could expose the Cubemap properties in the Shader and set them on an instanced material using a script for something like that.

    • @Bolt6265
      @Bolt6265 4 года назад +2

      You could also use a texture array for the cubemaps and sample from it using some simple rng to make it less tiled. Idk, food for thought.

  • @AlexTuduran
    @AlexTuduran 3 года назад

    Nicely done.

  • @Nico-jc7zr
    @Nico-jc7zr 4 года назад

    this is really cool

  • @swagguy47
    @swagguy47 4 года назад +1

    The Crew 2 does this effect really nicely.

  • @cudiedgar
    @cudiedgar 4 года назад

    wow what a quality video, thank you

  • @TheKevphil
    @TheKevphil 2 года назад

    There is a UE5 demo floating around which uses parallax mapping to "populate" the interior of rooms in a mostly static street scene, so I came here to try to understand it. (Too much math and scripting; my head hurts!) But your result is excellent!

  • @adamking816
    @adamking816 4 года назад

    nice work !

  • @Doomness2k
    @Doomness2k 4 года назад +1

    Wouldn't using a orthographic camera instead of a perspective camera to capture the cubemaps work better and fix the whole "having to squish things down"?

  • @judgaming3041
    @judgaming3041 4 года назад

    Wow, this is really interesting.

  • @SirFency
    @SirFency 4 года назад

    Well done sir.

  • @TAPEWXRM
    @TAPEWXRM 4 года назад

    you should try to make corners be the same room to make it seem more realistic

  • @lukezhou6349
    @lukezhou6349 4 года назад +1

    I guess how the interior mapping shader works is by intersecting camera rays with imaginary cubes behind the plane. Moreover, I think that by pulling the camera out of the window and un-squishing all the geometry may produce better results (which means that you can't simply use a cubemap anymore).

  • @jakeecake
    @jakeecake 4 года назад +2

    This is really cool, was wondering if you could plug in an animated image and have a person in some of the rooms? maybe someone on their computer making minute movements so they don't break that depth illusion

  • @simulacrasimulation9070
    @simulacrasimulation9070 4 года назад

    Beautiful

  • @piromansadran
    @piromansadran 4 года назад

    bruh thats amazing

  • @pranshu05
    @pranshu05 3 года назад +1

    Awesome video I will add it to my game (because Dani wouldn't)

  • @Daedalus29
    @Daedalus29 4 года назад

    Gotta try this with spaceship windows, I hope it will bring a better sense of scale compared to the drawed windows on huge ships

  • @michelveraliot
    @michelveraliot 4 года назад

    Wooow this is awsome thank you mate

  • @Geekronista
    @Geekronista 3 года назад +1

    Hi Matt! This video is just awesome, the only thing I can't seem to understand how it works is the cube you made in blender with the rearranged UVs. How did you do it? Thank you so much for all the work you do!

  • @David-gu8hv
    @David-gu8hv 2 года назад

    Pretty impressive

  • @LoukoporJogos
    @LoukoporJogos 4 года назад +1

    What game is that in 0:30?

    • @DopeyFish
      @DopeyFish 4 года назад +1

      Agents of Mayhem, I believe.

  • @chuukoart3869
    @chuukoart3869 4 года назад +1

    I'm pretty sure you can just use a reflection probe to bake a cubemap from a scene as long as the objects are static. That's what I did for a game I worked on and it saves as exr which I could just open up in ptohoshop and edit

  • @senaesul3128
    @senaesul3128 4 года назад

    Because light from the sun is much brighter than any light coming from the rooms, it would be cool to see the textures darken in certain conditions that involve competing light sources.
    Side note: I really feel like total reflection on windows (when viewed from a steep angle) is super unused. There were many cases in the video where I thought, "In real life, that would probably be impossible to see into because of the reflection".

  • @AL2009man
    @AL2009man 4 года назад

    Geez, imagine a combo of procedure generated rooms and this shader. It would be amazing!

  • @SpootyMcGee
    @SpootyMcGee Год назад

    7:29 wheres that video?

  • @sanderoneil6998
    @sanderoneil6998 4 года назад

    this tripped me out bro

  • @arsizhifenerprozhod
    @arsizhifenerprozhod 2 года назад

    Man, great work! so you made AAA paralax windows