No More Texture Repetition! Cell Bombing in Unreal Engine Materials

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 ธ.ค. 2024

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

  • @inwardocean
    @inwardocean 3 วันที่ผ่านมา +7

    Very timely! With displacement work so well for nanite, AND quixel ORD channels having displacement, I'm doing all kinds of heavily displaced materials. This is a super-useful (and pretty quick) technique for breaking up repetition at distance while keeping crazy detail up close. Thanks again!

    • @HojDee
      @HojDee  3 วันที่ผ่านมา +1

      @@inwardocean glad to help :)

    • @mia_bentzen
      @mia_bentzen 2 วันที่ผ่านมา +1

      Be careful of doing this too much, as it will start to affect performance

  • @MrYuzuro
    @MrYuzuro วันที่ผ่านมา

    Bro this is incredible. You have no idea for how long i have been trying to find this.

    • @HojDee
      @HojDee  5 ชั่วโมงที่ผ่านมา

      glad I could help

  • @YazdaniPlays
    @YazdaniPlays 2 วันที่ผ่านมา +1

    You are absolutely killing it bruh, I learned a lot from you

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      glad to hear that man :)

  • @John_atCTS
    @John_atCTS 2 วันที่ผ่านมา +2

    Awesome!! IMO, definitely one of the BEST Texture Bombing methods I've seen so far!
    Question: Based on your experience, I would be interested in knowing which Texture Bombing Method (say the 5 most common?) works best with which types of Textures.
    For example, I think I read that Cell Bombing works best with granular-type textures (fine stone, dirt, cement, etc??.) and others work best for more defined textures (Ground Twigs/Leaves textures), etc.
    Thanks again for the video!

    • @HojDee
      @HojDee  2 วันที่ผ่านมา +1

      I use cell bombing for any organic texture. rock, grass, ground with twigs, or anything.
      But in case of textures that have pattern, like brick or tiled wood, the bombing methods don't work correctly.

    • @John_atCTS
      @John_atCTS 2 วันที่ผ่านมา

      @@HojDee - thanks. Would be nice if Epic eventually makes it a built-in Node!

  • @loganasaurusrex8246
    @loganasaurusrex8246 3 วันที่ผ่านมา

    FINALLY! I’ve been trying to do something like this for AGES!

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      @@loganasaurusrex8246 glad I could help :)

  • @rileyb3d
    @rileyb3d 2 วันที่ผ่านมา +2

    Fantastic work! Recommending your channel to my discord.

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      @@rileyb3d thanks man! I appreciate it :)

  • @galravid-tal8517
    @galravid-tal8517 2 วันที่ผ่านมา

    Thank you so much for making this video!
    Your content is great and the way you explain things is so understandable.

    • @HojDee
      @HojDee  2 วันที่ผ่านมา +1

      @@galravid-tal8517 glad you liked it :)

  • @alltradesjack6594
    @alltradesjack6594 2 วันที่ผ่านมา

    Excellent bit of knowledge. Thanks a lot for sharing it!

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      @@alltradesjack6594 glad you liked it man :)

  • @boriskourt
    @boriskourt 2 วันที่ผ่านมา

    Thanks! This is a great explanation. Looking forward to de-tile my landscapes :)

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      glad it helped :)

  • @tomasgomez9925
    @tomasgomez9925 2 วันที่ผ่านมา

    Awesome! Will keep it when I create a new environment :)

    • @HojDee
      @HojDee  2 วันที่ผ่านมา +1

      great :)

  • @LexFomin
    @LexFomin 2 วันที่ผ่านมา +1

    Very cool, I use similar techniq in redshift. Thank you!

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      @@LexFomin you're welcome :)
      Yeah, it's math stuff. It can be done in any engine I think

    • @dimaananyev5336
      @dimaananyev5336 2 วันที่ผ่านมา

      Алексей, привет! Прикольно встретить здесь своего приятеля. Такого рода инструменты есть много где , в короне например, но для анриала урок весьма полезный.

  • @juanmilanese
    @juanmilanese วันที่ผ่านมา

    quality tutorial man...

    • @HojDee
      @HojDee  วันที่ผ่านมา

      thanks!

  • @manzoo_3096
    @manzoo_3096 14 ชั่วโมงที่ผ่านมา

    4:10 you don't need saturate node. The texture's Alpha output is already in the range 0.0 to 1.0

    • @HojDee
      @HojDee  5 ชั่วโมงที่ผ่านมา

      yeah. I just run everything I want to connect to the alpha of a lerp through a saturate. It's a habit I guess

  • @youngsiks5434
    @youngsiks5434 47 นาทีที่ผ่านมา

    Thank you for posting the video! I have a question.
    Is there a way to reduce Texture Repetition for textures with patterns (e.g. bricks or tiled wood)?
    If there is, I would like to ask if you can make a video!

  • @프록시안
    @프록시안 6 นาทีที่ผ่านมา

    내가 학생 때 이 영상을 봤었다면 지금 더 좋은곳에서 일하고 있었을 거야..

  • @Archviz_hosseini
    @Archviz_hosseini 9 ชั่วโมงที่ผ่านมา

    god bless youuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu 😭

    • @HojDee
      @HojDee  5 ชั่วโมงที่ผ่านมา

      thanks man

  • @ArchViz_PaXu
    @ArchViz_PaXu วันที่ผ่านมา

    Hi, Thanks for tut, I have problem when use displacement appear both texture cell , how to only make displacement for main texture?

    • @HojDee
      @HojDee  วันที่ผ่านมา

      I didn't exactly understand the question, but I think what you're talking about. If you increase the displacement magnitude, some areas may look bad, especially in the black areas of the alpha channel of the cell texture. I hide it by decreasing the displacement magnitude.

  • @Mikefiser
    @Mikefiser วันที่ผ่านมา

    Any notes on the performance? I noticed it samples the texture at least twice as much but I would be interested in the precise calculations and performance hits on a big terrain. It also needs to sample that voronoi texture but that doesnt have to have a huge resolution, right?

    • @HojDee
      @HojDee  วันที่ผ่านมา +1

      The most important thing is the increasing sample count, I think. I haven't gone deep into the exact performance calculations though. When using with landscape material, I'd use it only on layers where the repetition is really obvious and can't be hidden by foliage and stuff.

  • @ilyachernobrov
    @ilyachernobrov 3 วันที่ผ่านมา

    Thanks a lot!

    • @HojDee
      @HojDee  3 วันที่ผ่านมา

      @@ilyachernobrov you're welcome man :)

  • @gone41674
    @gone41674 21 ชั่วโมงที่ผ่านมา

    Does it work for an infinite world size? For example, if you set Size - Main Texture to 0.01, would it still avoid repetition?

    • @gone41674
      @gone41674 20 ชั่วโมงที่ผ่านมา

      You add an offset from the Voronoi texture, which has a fixed size, so I think it would repeat if the map is larger than the area covered by the Voronoi texture.

    • @HojDee
      @HojDee  5 ชั่วโมงที่ผ่านมา

      @@gone41674 the voronoi texture is also tiling. so it can go on forever. just make sure the relation between the texture size and the cell size is reasonable. like I mentioned in the considerations section of the video

    • @gone41674
      @gone41674 ชั่วโมงที่ผ่านมา

      @@HojDee Yes, I’m aware that the Voronoi texture is tiled, which is the problem. Tiling causes repetition, since the UV offset is read from the Voronoi texture, the final texture will also repeat. This repetition will occur if the world size exceeds the coverage of the Voronoi texture.

  • @Grigga
    @Grigga 2 วันที่ผ่านมา

    is there a way with simpler nodes to make random rotation? its to heavy the way you show it...

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      you can skip the rotation. or add a switch to turn it on or off. it works great with just the offset and the scale. or even just the offset

  • @VeganApps
    @VeganApps วันที่ผ่านมา

    TextureVariation node is also useful... oO

    • @HojDee
      @HojDee  วันที่ผ่านมา

      yeah. I'll make a video about it in the future

  • @arefrazavi6884
    @arefrazavi6884 วันที่ผ่านมา

    good job

    • @HojDee
      @HojDee  วันที่ผ่านมา

      thanks

  • @samonogram2631
    @samonogram2631 3 วันที่ผ่านมา +1

    what's the difference with using texture variation nodes?

    • @carlosrivadulla8903
      @carlosrivadulla8903 3 วันที่ผ่านมา +1

      I was about to ask the same. That node does the trick

    • @DamienRamirez
      @DamienRamirez 3 วันที่ผ่านมา +3

      In short: very little, the Texture Variation uses noise instead of cell & it blends the "visible lines" based on height rather than the same texture alone. The cost is similar but the result is cell can give more variation (without looking as broken). There is a little more to it, but that's the basics.

    • @HojDee
      @HojDee  2 วันที่ผ่านมา +1

      @@DamienRamirez thanks for the explanation

  • @전민영-p1q
    @전민영-p1q 2 วันที่ผ่านมา

    Thanks!!!

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      you're welcome man :)

  • @KaiserKaddu
    @KaiserKaddu วันที่ผ่านมา

    I cant find the voronoi texture in the files...

    • @HojDee
      @HojDee  วันที่ผ่านมา

      there was some issue with the file. I've fixed it. download the textures file

  • @tomastoegel4973
    @tomastoegel4973 2 วันที่ผ่านมา

    Ok, definitelly the way but should be as one material like a "plugin" with all parametres in it. I wait for something similar in 3DS max.

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      @@tomastoegel4973 in the end, I made it a material function. It can be used in any material inside unreal engine.
      For 3ds max, the principles are the same I guess. If you're familiar with its material system you should be able to create it

  • @omniplay4686
    @omniplay4686 2 วันที่ผ่านมา

    Does this have some impact on the performance?

    • @thutmosisSeven
      @thutmosisSeven 2 วันที่ผ่านมา

      Yes, a bit, because of the indirect texture call that may invalidate the texture cache.

    • @HojDee
      @HojDee  2 วันที่ผ่านมา +1

      and also the increasing sampler count. the impact is not that much. but you gotta watch out for it. especially if developing for mobile

    • @omniplay4686
      @omniplay4686 2 วันที่ผ่านมา

      @@thutmosisSeven Thanks for the info!

    • @omniplay4686
      @omniplay4686 2 วันที่ผ่านมา

      @@HojDee Appreciate it!

  • @alimirza-g4g
    @alimirza-g4g วันที่ผ่านมา

    I have a problem when I choose the modeling option, there are no tools

    • @HojDee
      @HojDee  วันที่ผ่านมา

      maybe the plugin is not enabled

  • @kovalevtimofei85
    @kovalevtimofei85 2 วันที่ผ่านมา

    Hi! can t find cell texture. Can you give direct link? thanks

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      hi! get it here: www.hojdee.com/courses-details/free-downloads
      and here's the tutorial on how to get it, if you run into any issues: th-cam.com/video/8yRxmuY9If4/w-d-xo.htmlsi=770df6CkfG-jx-Cj

    • @Cyberex
      @Cyberex วันที่ผ่านมา

      Yeap, me neither, can you provide the link for your website ?

    • @HojDee
      @HojDee  วันที่ผ่านมา

      @@Cyberex there was some issue with the file. I've fixed it. download the textures file

  • @SirRebonack
    @SirRebonack 2 วันที่ผ่านมา

    6:27 Why divide? Multiplication could be used to achieve the same result but with much cheaper instruction cost. Divide should be avoided where it's possible.

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      @@SirRebonack multiply is cheaper, you're correct. But with modern hardware, the difference is not that significant. If you wanna make it really optimized though, you should go with multiply for sure.

    • @nikoheino3927
      @nikoheino3927 2 วันที่ผ่านมา

      not sure how its handled here, but atleast in most programming languages, the compiler optimized most divisions into multiplications.

    • @SirRebonack
      @SirRebonack วันที่ผ่านมา +1

      @@nikoheino3927 The shader compiler cannot optimize this division because it is based on dynamic data (sampled texture). Division is fine to use on parameter values, which are able to be optimized. Division is significantly more expensive than multiplication.

    • @nikoheino3927
      @nikoheino3927 วันที่ผ่านมา

      @@SirRebonack oh okay, good to know.

  • @simonb1009
    @simonb1009 3 วันที่ผ่านมา

    What is difference between cell bombing and texture bombing?

    • @HojDee
      @HojDee  3 วันที่ผ่านมา +1

      @@simonb1009 the method is different. cell bombing is cheaper and works better in my opinion

    • @HojDee
      @HojDee  3 วันที่ผ่านมา +1

      @@simonb1009 watch this video to learn more about texture bombing
      th-cam.com/video/SfJY3e-3wwY/w-d-xo.htmlsi=v9Vs-QccW6OJlX7l

  • @indigochoiart
    @indigochoiart 2 วันที่ผ่านมา

    Is there any way to download or buy your cell bombing MF file?

    • @HojDee
      @HojDee  2 วันที่ผ่านมา +1

      @@indigochoiart I've put it on my patreon. The link is in the description

    • @HojDee
      @HojDee  2 วันที่ผ่านมา +1

      @@indigochoiart it's also available in the epic's city sample project, if you have it.

    • @indigochoiart
      @indigochoiart 2 วันที่ผ่านมา

      @@HojDee thanks for the good work

    • @HojDee
      @HojDee  2 วันที่ผ่านมา

      @@indigochoiart glad to help :)

  • @MarkEntingh
    @MarkEntingh วันที่ผ่านมา

    I think the most important question is, how expensive is this method on the GPU?

    • @HojDee
      @HojDee  วันที่ผ่านมา

      it increases the texture sample count. makes it twice. so that's the real bottleneck, I think. it's not optimized in that sense

  • @anotherreality7951
    @anotherreality7951 2 วันที่ผ่านมา

    I think going through all the material is very time consuming. epic should make auto texture edit plugin.

    • @HojDee
      @HojDee  2 วันที่ผ่านมา +1

      @@anotherreality7951 you could just make it once and reuse it anywhere you want