D-Buffer Decals changed my life! [UE5]

Sdílet
Vložit
  • čas přidán 22. 01. 2024
  • Heeeeyyya, today we're talking about the D-buffer! The D-buffer is a buffer for the D. Decals, that is! HAHA! But seriously, the D-buffer can be used to help blend your decals with the underlying materials better, or to create completely new and unique shader effects! Think of it like Vertex Paint at the pixel level. Yolo!
    ----------------------------
    Buy the Prismatiscape Interaction Plugin for $29.99!
    prismaticadev.gumroad.com/l/a...
    -----------------------------
    Patreon: / prismaticadev
    Twitch: / prismaticadev
    Discord: / discord
    CZcams: / prismaticadev
    Twitter: / prismaticadev
    ----------------------------
    Computer Specs:
    Ryzen 3900x 12-core CPU
    MSI Geforce RTX 2080 Super
    64GB Corsair RAM
    One of those fancy nvme m.2 SSD's
    Programs of choice:
    Unreal Engine - (Game Dev)
    Blender - (Animation and Modelling)
    OBS - (Video/screen capture)
    Davinci Resolve - (Video editing)
    Adobe Photoshop - (Graphics and Texturing)
    ProTools 11 - (Compositions and mixing)
    OldSchool Runescape - (The best game)
    Filmed using:
    Sony A7s2 body
    Sony 24-70mm f/2.8 GM lens
    Yonguo YN360 LED's for colour
    Yongnuo YN760 chip LED w/ Godox softbox for key
    My lovely cats names are Boycat, Girlcat and Ladycat :)
  • Hry

Komentáře • 88

  • @ZacDonald
    @ZacDonald Před 5 měsíci +32

    Deez tutorials have changed my life.

    • @ckay11002
      @ckay11002 Před 5 měsíci +6

      Nutz how such useful tools are hiding just beneath the engine's surface

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +4

      HAha

  • @somename371
    @somename371 Před 5 měsíci +7

    The idea of combining decals with height blending is just awesome

  • @OverJumpRally
    @OverJumpRally Před 5 měsíci +2

    Amazing stuff! I love placing decals around and these tricks can definitely come handy!

  • @Erfanbahrami
    @Erfanbahrami Před 5 měsíci +1

    You always do stuff that blow's my mind... Excellent video...keep up the good work

  • @MellowMornings-ox1yv
    @MellowMornings-ox1yv Před 2 měsíci +1

    You are awesome, dint watch the video yet but you have always been an uncredible and talented dev!

  • @YoanJallais
    @YoanJallais Před 23 dny +1

    Thank you so much for the tutorial! This is exactly what I needed for my project without even knowing it.

  • @gnom_anonim
    @gnom_anonim Před 3 měsíci

    love your content dude! very helpful and straight to the point

  • @AndrewWeirArt
    @AndrewWeirArt Před 5 měsíci

    Great video! I was very interested in all this at one point, and it seems you have covered pretty much all of the cool stuff. I don't know why this isn't used more, because with Nanite you can't do per-instance vertex colour . so this can feed into that system nice and easy.

  • @dembe3188
    @dembe3188 Před 3 měsíci

    Brother, you're majestic! Thanks for everything!!

  • @inflamethetreehouse
    @inflamethetreehouse Před 5 měsíci +2

    another banger! keep it up 🙏

  • @kevinhoward9930
    @kevinhoward9930 Před 5 měsíci +1

    Really good stuff. Thank you for your great tutorials 👍

  • @noah8162
    @noah8162 Před 5 měsíci +10

    Are you planning to do a video on render targets? Would love to learn how to play around with the mythic power of real-time texturing

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +4

      For sure - I'll be doing a video about Niagara2D (the output of which is usually a Render Target) but covering the original "Draw Material to Render Target" would be very handy as well

    • @Jayraj300Mind
      @Jayraj300Mind Před 5 měsíci +2

      i will be waiting for that
      @@PrismaticaDev

  • @zeropalooba8646
    @zeropalooba8646 Před 5 měsíci +2

    This is so awesome. The gunshot decal thing is a crazy idea 22:19

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +1

      It definitely has a lot of potential haha. You could even apply the decals at half-opacity so they gradually reveal more and more damage layers!

  • @pamparam3495
    @pamparam3495 Před 2 měsíci +2

    Awesome trick!

  • @matiasadrianmahler322
    @matiasadrianmahler322 Před 3 měsíci

    Would be cool to have a buffer id, so you can change how a material react when the decal is from an explosion or a blood splat...since you want it to break and show the bricks on an explosion but not from a blood splatter unless is acid blood

  • @vyacheslav1746
    @vyacheslav1746 Před 5 měsíci +1

    PrismaticDev you also can use Stencil buffer to isolate decals one of another to make more complex effects with decals (which will not affect other objects, like default decals do)

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +4

      Heyo! I saw a post in out Discord about this very thing (after my original decals video) and decided to include it in an "Advanced Decals" video, since it could apply to both D-Buffer and regular Decals. I'll also be covering POM/BumpOffset decals in it as well

  • @Lemniscate_Mike
    @Lemniscate_Mike Před 4 měsíci +1

    We need a "9-Minute Nodes" playlist that explains literally every node in UE5 now...
    K thx!

    • @PrismaticaDev
      @PrismaticaDev  Před 4 měsíci +1

      Hahah luckily there isn't any difference between the Material graph in UE4/UE5 so I don't have to remake eeeeverything :P However, there are some new additions!

    • @Lemniscate_Mike
      @Lemniscate_Mike Před 4 měsíci

      @@PrismaticaDev oh no no, I meant on the Blueprints side of things, mate. =D
      P.S. You're really doing God's work with your tutorials and such! Very quality videos!

  • @TorQueMoD
    @TorQueMoD Před 5 měsíci +2

    Amazing video as always! Sadly this does nothing to stop a mass of decals from being ridiculously expensive to render though. lol. But awesome to know we can make them better. Sad that Epic hasn't just built this in as default functionality though.

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +2

      Yeah haha it's unfortunate. I don't think there's anything technical stopping decals from being instanced (if the material is the same) but it just isn't implemented, to my knowledge. It may be a different case with Niagara decals, but I'm yet to test that. Will definitely report findings in a video!

    • @TorQueMoD
      @TorQueMoD Před 5 měsíci +2

      @@PrismaticaDevYeah, I'm hoping they do something like Nanite Decals so we can use an unlimited number :)

  • @glitchered
    @glitchered Před 5 měsíci +2

    so... the materials handle how decals will look on themselves? this is good stuff. a lil more computation per material, but i can see a use for that. dbuffer glass bullet hole refraction with a normal map. crimson wanted that a couple weeks ago. :)

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci

      This is just my very limited knowledge/assumptions speaking, but I think performance-wise it actually evens out. The old way would need each mesh/material to process the decals individually, sort of how Forward Shading lights work. So if 1 decal spanned across 3 meshes, all 3 of them would need to process the projection of that decal. With the new way, the decals' projections are calculated from the depth buffer and then read from the materials in screen-space. The extra buffer obviously adds a bit of overhead but yeah. I also don't see why decal instancing isn't possible if the D-buffer gets drawn in 1 go.

  • @user-gn8gr2qm4o
    @user-gn8gr2qm4o Před 2 měsíci

    "You can probably see where this is going". No dude, it's my first video on decals, I don't see where this is going :P

  • @martyr4861
    @martyr4861 Před 5 měsíci +1

    imagine having a dripping down decal for that bloody Decal on the Crick wall 10:30.
    Is the Material Node "Dbuffer" always been around or ist this somewhat new?

  • @The9PointStar
    @The9PointStar Před 2 měsíci +1

    Hi! i have a problem, i need to add wrinkles to a furniture with normals in the decal, but the normal of the wrinkles overrride the normal of the leather material base, is there a way to blend them together? thanks!

    • @PrismaticaDev
      @PrismaticaDev  Před 2 měsíci

      Hey hey - in the Decal material you can multiply the final opacity to make it "softer"

  • @mmertduman
    @mmertduman Před 5 měsíci +1

    If I setup my materials to have a custom bullet hole response on DBuffer roughness, then there is no way to use the roughness channel for other effects, right? i.e. the material doesn't know which decal the buffer values come from? I guess you can programmatically decide that some surfaces cannot get bullet holes and use the roughness for something else there, but that gets confusing very quickly..

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +1

      Some people have said you can use Stencil Channels to manipulate certain decals on certain surfaces, so there might some possibility there. But otherwise, yes haha. It would be really nice if Epic allowed you to make additional channels/rendering features easier. For example, I would love vec4 distance fields instead of Scalar. You could make meshes emit DF R but only receive DF G. Maybe one day...

  • @DominikLevitsky
    @DominikLevitsky Před 2 měsíci +1

    So am I correct to assume that used this way each decal is still causing an additional draw call?

    • @PrismaticaDev
      @PrismaticaDev  Před 2 měsíci

      I’m pretty sure - however I don’t see why batching them isn’t possible on a technical level. I’m curious about how Niagara decals work in that regard

  • @MelonadeFX
    @MelonadeFX Před 5 měsíci +1

    would it be possible to feed in angles of the decal in the material so you can lerp between different textures even, like a stretched out blood squib vs a top down splatter?

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci

      That's an interesting idea... It would definitely be possible with a construction/begin play script on the decal actor using a line trace against the surface dotted against the splat direction, but I'm not sure there is enough data to work with in just the material itself.

    • @MelonadeFX
      @MelonadeFX Před 5 měsíci

      Hence I asked, i've done this before for bullet impacts and using de dot product to create 3 angled masks and swap the material instance depending on the value, but it'd be ofc much easier to work with it just in one mat, albeit with the added cost of extra texture samples.@@PrismaticaDev do you know if this also works on animated characters/skelmeshes?

  • @Mittzys
    @Mittzys Před 5 měsíci +4

    wow this shits bananas this shits crazy i cant believe the d-buffer is real

  • @JieDu-yj2vd
    @JieDu-yj2vd Před 5 měsíci +1

    One of the problems is that if you want to mix with decal you need to set decal response to None, and then you have two decals on the same object, and you want one not to mix and the other to mix, and that's not going to work, because decal response is set to None, A dbuffer is required for all decals, otherwise they cannot be received

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +1

      To some extent, yes. However, if you just want to use one of the aux channels for extra effects (usually metallic, as it's kinda redundant) you can just apply the remaining channels as normal. However you do need to do it manually in the material or write a mat function to do it for you.

  • @Drakuba
    @Drakuba Před 2 měsíci

    i read decals are quite expensive, couldnt you have just a ball or field tell game where to change textures? That way you could have players react to colors changing (blood, damaged walls) adn NPC have programmed to react to the ball itself (if they are in the LOS)

  • @mendeleev_9H2PDsgXu7NmphCUEH
    @mendeleev_9H2PDsgXu7NmphCUEH Před 5 měsíci +1

    Can I create a new decal buffer and pass additional decal data alongside with default decal data? Or they are limited?

    • @vaillecgart1854
      @vaillecgart1854 Před 5 měsíci +2

      Looking at this aswell, because for now, I'm also facing the fact that , If I go custom D buffer response, this means I "give up" the possibility to use regular decal on the same surface, while also having to be careful where I place these "custom" decal projector, as they might bleed very weird values onto material that doesn't have a specific dbuffer material response.

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci

      @@vaillecgart1854 Correcto. There are certainly ways around it but you have to be careful and do some planning ahead of time.

  • @now_ever
    @now_ever Před 5 měsíci

    Talking about bullet holes: Does regular decals support "parallax occlusion mapping"? I believe, I saw a video where guy make bullet holes with parallax. But I can't find it now.

  • @wilsman77
    @wilsman77 Před 5 měsíci +1

    wow, this shit is bananas

  • @Cabinet445
    @Cabinet445 Před 5 měsíci +1

    wow this shit is bananas

  • @pebbers7060
    @pebbers7060 Před 5 měsíci +2

    activate windows!! just kidding but epic video

  • @thelittlethingsthatmatter6690
    @thelittlethingsthatmatter6690 Před 5 měsíci +1

    When do you think the next devlog will be?

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +1

      Probably in another decade or two :P

    • @thelittlethingsthatmatter6690
      @thelittlethingsthatmatter6690 Před 5 měsíci +1

      @@PrismaticaDev Lmao, I just really like the gameplay I was seeing. I've been watching the tutorial's to find the little bits I can. I love the progress that you've made from the first devlog, It's looking better then most AAA games.

  • @mikelkram
    @mikelkram Před 5 měsíci +1

    Spawning decals on glass surfaces (Blend Mode-Translucent) does not work properly in UE. If I'm not stupid and this question is really interesting, I could look at it in a video.

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci +1

      Hey there! Yeah it's a bummer, since translucent materials don't draw to the Depth pass they don't seem to interact with the D-buffer. There's a tickbox for drawing translucent materials to the Depth pass but it still doesn't seem to work. Will definitely include it in my next Decals video if I find a solution!

    • @Tylru
      @Tylru Před měsícem

      @@PrismaticaDev hey dude! Did you ever figure out a way to get dbuffer decals to draw into the depth pass? Doing similar experiments and came across this video in the search :D

  • @IstyManame
    @IstyManame Před 5 měsíci +2

    OK but why would you use traditional decals then?

    • @PrismaticaDev
      @PrismaticaDev  Před 5 měsíci

      Less complicated and doesn't require any setup, I guess haha. You can always do both

  • @medmel2160
    @medmel2160 Před 3 měsíci +1

    I'm wondering if you activated windows since.

  • @PresidentNelson
    @PresidentNelson Před 5 měsíci +1

    Bee-aye-in-aye-in-aye-ess

  • @Mittzys
    @Mittzys Před 5 měsíci +1

    DBufferDeez

  • @Pierraxl
    @Pierraxl Před 5 měsíci

    Go to settings to activate Windows.

  • @yvettenaomi3870
    @yvettenaomi3870 Před 5 měsíci +1

    d-buffer? I hardly know her

  • @swampdert
    @swampdert Před 5 měsíci +1

    simply 🍌🍌🍌

  • @VladyVeselinov
    @VladyVeselinov Před 5 měsíci +1

    Deez buffers

  • @KalikAP01
    @KalikAP01 Před 5 měsíci +1

    Wow this shit bananas this shit so crazy cant believe the dbuffer is rael

  • @capzor
    @capzor Před 5 měsíci +1

    r u actually jesus in disguise

  • @Vylocity
    @Vylocity Před 5 měsíci +1

    deez bufferz

  • @pygmalion8952
    @pygmalion8952 Před 5 měsíci +1

    deez-n

  • @xylvnking
    @xylvnking Před 5 měsíci +1

    Yes please feed me content