Dynamic Material Instances Per Actor, Pro Tip!

Поділитися
Вставка
  • Опубліковано 5 січ 2025

КОМЕНТАРІ • 48

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

    For those who can't find this button, it's not a part of a vanilla UE. It is a part of a "Virtual Camera" plugin. Install it and the button will appear.

    • @radivarig
      @radivarig 7 місяців тому +1

      @GUMLIVES put this info into the description please

    • @GUMLIVES
      @GUMLIVES  6 місяців тому

      Ok, Ill add it.

  • @vid828
    @vid828 3 місяці тому +1

    My god man, how is this the only tutorial on yt that explains this important feature? Ive been pissing about with custom primitives and blueprints to try and achieve this very simple feature. Thank you so much for this!

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

    That's cool! But how can i find that button to 'create dynamic material'.
    I can't find that...
    And Can you tell me how to show stats override UE window like your window?

    • @刘佳辉-x7v
      @刘佳辉-x7v Рік тому +3

      +1

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

      The materials needs to be a material instance and with overrides on for the parameter you want to edit.

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

      Create a material instance. Or try it with a Megascans material instance.

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

      Hi I also cant find the button, had Material Instance and checked the properties I want to override but still nothing. Im using 5.1. I want to change 1 property on my static mesh material.

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

      @@VHShark This is a part of the "Virtual Camera" plugin

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

    thanks , i came across this button and forgot about it for a few days and then saw it again and had to know what it did

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

    Hello
    I don't have this button. How to add it?

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

      Did you found a solution?

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

      @@Monochrome010 No 🤷‍♂️

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

      Also looking for this option that I had on certain of my projects but not others... Incomprehensible! 😤
      I finally tried to debug between a project that had the option and a new project without anything, and I finally found that it's a plugin that adds the option.
      It's the “Virtual Camera” plugin!
      Voilà, good luck for the future 😉

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

      I looked into this further. Virtual Camera uses 2 other plugins, important one being VirtualCameraCore. VirtualCameraCore uses 12 other plugins. The important one being "VirtualProductionUtilities". This VirtualProductionUtilities is the one that contains the relevant code/section for "Create Dynamic Material" if you want to include the minimal amount of indirect plugins. Since I didn't want to include everything that VirtualCamera indirectly activates.
      Even that one includes too many so I'm liking to rip out the materials editor module and port over to my own.
      tl;dr; You actually want "VirtualProductionUtilities"

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

    I don't have this button in 5.2 when using a Material Instance :(

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

      Also looking for this option that I had on certain of my projects but not others... Incomprehensible! 😤
      I finally tried to debug between a project that had the option and a new project without anything, and I finally found that it's a plugin that adds the option.
      It's the “Virtual Camera” plugin!
      Voilà, good luck for the future 😉

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

    I never knew what the button was for until today! Thank you gabe!!

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

    That is a very cool tip! That is not something I've noticed being there so thanks very much for sharing.

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

    Haha this so helpful. Hehe does this have additional cost when you have several different settings for different actors but using the same material instance? Good job on the thumbnail, straight to the point. Thanks

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

      Many thanks for your comment.

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

    Does anyone know where this button is in 5.3.1 ?

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

      Also looking for this option that I had on certain of my projects but not others... Incomprehensible! 😤
      I finally tried to debug between a project that had the option and a new project without anything, and I finally found that it's a plugin that adds the option.
      It's the “Virtual Camera” plugin!
      Voilà, good luck for the future 😉

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

      @@LeamonPro Thank you! This worked for me! \o/

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

    Awesome, Thank you

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

      Thank you for subscribing

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

    Thank you so much, this is actually very helpful tip !!!!

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

    First of all , thank you for sharing , do you have any info on the cost of doing this? does using dynamic material instance takes a hit on the performance somehow?

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

      My guess is that as long as you have one material per actor it shouldn't be much of an impact.

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

      Hey this depends on your scene:
      - The instance itself will take up a tiny amount of ram and vram.
      - The mesh will break auto instancing if you use a dynamic material (unreal will try to combine the same mesh with same material into one drawcall, nanite on the other will combine all the same materials into one draw call, even different meshes, so this might affect nanite even more)
      - so don't overdo it and assign it to each pebble but when your scene has only a couple here and there there should be no performance difference
      - if you want better performance and don't break instancing, but have a per instance control you can use "custom primitive data" in the material

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

      @@kettenotter thanks man! :)

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

      ​@@kettenottercan I use custom instanced data on a non instanced mesh?

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

      @@dr_j0nes No. There is per instance custom data which you can't use.
      But you can use per primitive custom data. Its a little bit confusing.
      For per instance custom data you need instanced static mesh (ISM) component or any of it's children.
      Per primitive custom data you can use on any mesh. Even on ISM but then all instanced will get the same input. But if you use it on a static mesh actor you can controll it per instance and it should still combine draw calls with unreal engines auto instancing if you don't use nanite and with nanite it should draw them in one drawcall anyway.

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

    Is it correct to assume that all exposed parameters can be key-framed in sequencer?

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

      Yes, but be careful that that will create another dynamic material. Is the same deal but with a different tool.

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

    the purpouse of this is to not have 10 instances but just one with multiple colors on the single objects?

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

      Yes, not only colors but per actor changes on every parameter override in the material instance. Although must be used after the material is done because as you see new overrides or even new parameters wont be added to the dynamic materials, until you reset it.

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

    Is that a 5.2 thing? Damn, that isn't even on the roadmap.

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

      Nope, is there since 5.0. But now you know, hehehe.

  • @stubbornox9522
    @stubbornox9522 3 місяці тому +1

    It's not optimization

    • @GUMLIVES
      @GUMLIVES  3 місяці тому

      Creating a separated Material Instance will create a Draw Call, Dynamic Instances wont.