D-Buffer Decals changed my life! [UE5]

แชร์
ฝัง
  • เผยแพร่เมื่อ 3 ต.ค. 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....
    -----------------------------
    Patreon: / prismaticadev
    Twitch: / prismaticadev
    Discord: / discord
    TH-cam: / 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 :)

ความคิดเห็น • 93

  • @ZacDonald
    @ZacDonald 8 หลายเดือนก่อน +36

    Deez tutorials have changed my life.

    • @ckay11002
      @ckay11002 8 หลายเดือนก่อน +6

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

    • @PrismaticaDev
      @PrismaticaDev  8 หลายเดือนก่อน +5

      HAha

  • @somename371
    @somename371 8 หลายเดือนก่อน +8

    The idea of combining decals with height blending is just awesome

  • @LionUnchained
    @LionUnchained 2 หลายเดือนก่อน +1

    Ive been watching your tutorials for a bout a year while learning UEFN and its awesome finally being able to just sit down and actually be able to listen and absorb all the information you're talking about since im finally up to speed on what all these thing are and do.
    It's been quite the journey, i feel like im actually ready to learn and apply the content now 😅

  • @noah8162
    @noah8162 8 หลายเดือนก่อน +11

    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  8 หลายเดือนก่อน +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 8 หลายเดือนก่อน +2

      i will be waiting for that
      @@PrismaticaDev

  • @YoanJallais
    @YoanJallais 3 หลายเดือนก่อน +1

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

  • @MellowMornings-ox1yv
    @MellowMornings-ox1yv 5 หลายเดือนก่อน +1

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

  • @zeropalooba8646
    @zeropalooba8646 8 หลายเดือนก่อน +2

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

    • @PrismaticaDev
      @PrismaticaDev  8 หลายเดือนก่อน +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!

  • @OverJumpRally
    @OverJumpRally 8 หลายเดือนก่อน +2

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

  • @Erfanbahrami
    @Erfanbahrami 8 หลายเดือนก่อน +1

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

  • @dembe3188
    @dembe3188 6 หลายเดือนก่อน

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

  • @inflamethetreehouse
    @inflamethetreehouse 8 หลายเดือนก่อน +2

    another banger! keep it up 🙏

  • @AndrewWeirArt
    @AndrewWeirArt 8 หลายเดือนก่อน

    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.

  • @vyacheslav1746
    @vyacheslav1746 8 หลายเดือนก่อน +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  8 หลายเดือนก่อน +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

  • @TorQueMoD
    @TorQueMoD 8 หลายเดือนก่อน +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  8 หลายเดือนก่อน +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 8 หลายเดือนก่อน +2

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

  • @pamparam3495
    @pamparam3495 5 หลายเดือนก่อน +2

    Awesome trick!

  • @kevinhoward9930
    @kevinhoward9930 8 หลายเดือนก่อน +1

    Really good stuff. Thank you for your great tutorials 👍

    • @PrismaticaDev
      @PrismaticaDev  8 หลายเดือนก่อน +1

      Cheers! Thanks for watching :)

  • @Lemniscate_Mike
    @Lemniscate_Mike 7 หลายเดือนก่อน +1

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

    • @PrismaticaDev
      @PrismaticaDev  7 หลายเดือนก่อน +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 7 หลายเดือนก่อน

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

  • @nand3kudasai
    @nand3kudasai 2 หลายเดือนก่อน

    I love your tutorials man.
    I wish that you say the node or params names when connecting. Instead of 'we connect "this" in "here"'
    Sometimen im on my phone and cant read it. Or sometimes im multitasking and listening.

  • @matiasadrianmahler322
    @matiasadrianmahler322 6 หลายเดือนก่อน

    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

  • @glitchered
    @glitchered 8 หลายเดือนก่อน +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  8 หลายเดือนก่อน

      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.

  • @MilanDuric-v4o
    @MilanDuric-v4o 5 หลายเดือนก่อน

    "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 8 หลายเดือนก่อน +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?

  • @Mittzys
    @Mittzys 8 หลายเดือนก่อน +4

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

  • @Drakuba
    @Drakuba 5 หลายเดือนก่อน

    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)

  • @DominikLevitsky
    @DominikLevitsky 5 หลายเดือนก่อน +1

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

    • @PrismaticaDev
      @PrismaticaDev  5 หลายเดือนก่อน

      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

  • @titouchose6534
    @titouchose6534 24 วันที่ผ่านมา

    Hey thx for the video! What are the channel correspondances for the Roughness DBuffer decal ouptu? RGB A? I have a hard time figuring out the A channel on this buffer.

  • @now_ever
    @now_ever 8 หลายเดือนก่อน

    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.

  • @JieDu-yj2vd
    @JieDu-yj2vd 8 หลายเดือนก่อน +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  8 หลายเดือนก่อน +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.

  • @MGScheu
    @MGScheu 2 หลายเดือนก่อน +1

    Should this work plugged into the opacity mask? I'm having trouble getting it to mask out decal

    • @PrismaticaDev
      @PrismaticaDev  2 หลายเดือนก่อน

      It should be going in to the Opacity of the decal, although you have to "un-pre-multiply" it like I explain towards the end of the video

  • @The9PointStar
    @The9PointStar 5 หลายเดือนก่อน +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  5 หลายเดือนก่อน

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

  • @wilsman77
    @wilsman77 8 หลายเดือนก่อน +1

    wow, this shit is bananas

  • @Cabinet445
    @Cabinet445 8 หลายเดือนก่อน +1

    wow this shit is bananas

  • @PresidentNelson
    @PresidentNelson 8 หลายเดือนก่อน +1

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

    • @PrismaticaDev
      @PrismaticaDev  8 หลายเดือนก่อน

      Gwen Stefani has entered the chat

  • @IstyManame
    @IstyManame 8 หลายเดือนก่อน +2

    OK but why would you use traditional decals then?

    • @PrismaticaDev
      @PrismaticaDev  8 หลายเดือนก่อน

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

  • @medmel2160
    @medmel2160 6 หลายเดือนก่อน +1

    I'm wondering if you activated windows since.

  • @mikelkram
    @mikelkram 8 หลายเดือนก่อน +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  8 หลายเดือนก่อน +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 4 หลายเดือนก่อน

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

  • @thelittlethingsthatmatter6690
    @thelittlethingsthatmatter6690 8 หลายเดือนก่อน +1

    When do you think the next devlog will be?

    • @PrismaticaDev
      @PrismaticaDev  8 หลายเดือนก่อน +1

      Probably in another decade or two :P

    • @thelittlethingsthatmatter6690
      @thelittlethingsthatmatter6690 8 หลายเดือนก่อน +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.

  • @MelonadeFX
    @MelonadeFX 8 หลายเดือนก่อน +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  8 หลายเดือนก่อน

      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 8 หลายเดือนก่อน

      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?

  • @pebbers7060
    @pebbers7060 8 หลายเดือนก่อน +2

    activate windows!! just kidding but epic video

  • @Pierraxl
    @Pierraxl 8 หลายเดือนก่อน

    Go to settings to activate Windows.

  • @mmertduman
    @mmertduman 8 หลายเดือนก่อน +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  8 หลายเดือนก่อน +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...

  • @VladyVeselinov
    @VladyVeselinov 8 หลายเดือนก่อน +1

    Deez buffers

  • @KalikAP01
    @KalikAP01 8 หลายเดือนก่อน +1

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

    • @PrismaticaDev
      @PrismaticaDev  8 หลายเดือนก่อน

      For rael for rael

  • @mendeleev_9H2PDsgXu7NmphCUEH
    @mendeleev_9H2PDsgXu7NmphCUEH 8 หลายเดือนก่อน +1

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

    • @vaillecgart1854
      @vaillecgart1854 8 หลายเดือนก่อน +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  8 หลายเดือนก่อน

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

  • @yvettenaomi3870
    @yvettenaomi3870 8 หลายเดือนก่อน +1

    d-buffer? I hardly know her

  • @capzor
    @capzor 8 หลายเดือนก่อน +1

    r u actually jesus in disguise

  • @Ioydd
    @Ioydd หลายเดือนก่อน

    स्थानांतरण

  • @Vylocity
    @Vylocity 8 หลายเดือนก่อน +1

    deez bufferz

  • @swampdert
    @swampdert 8 หลายเดือนก่อน +1

    simply 🍌🍌🍌

  • @xylvnking
    @xylvnking 8 หลายเดือนก่อน +1

    Yes please feed me content

  • @Mittzys
    @Mittzys 8 หลายเดือนก่อน +1

    DBufferDeez

  • @pygmalion8952
    @pygmalion8952 8 หลายเดือนก่อน +1

    deez-n