Tutorial - How to Export Houdini Crowd Agents to Unreal Engine

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

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

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

    Fantastic workflow, love seeing use cases for TOPS - thank you!

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

    Thanks a lot for this tutorial...there were some issues for me with UE 5.2 when importing.. So I had to import them into UE 4.27 then migrate them into UE 5...and it works great....

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

    pure gold tutorial. Thanks a lot

  • @RichardRiegel
    @RichardRiegel 11 месяцев назад +1

    hm... I have this fbx import fail in UE: Multiple roots are found in the bone hierarchy. We only support single root bone. Any solution?

    • @tejareddy5732
      @tejareddy5732 6 месяцев назад

      Hey i have the same issue, any solution??

    • @zhangminxiang6142
      @zhangminxiang6142 2 месяца назад

      i have the same issue, any solution?? T^T

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

    Great vdo..but after exporting its nit getting imported in unreal..getting few error like no weights etc

  • @Honguito785
    @Honguito785 11 месяцев назад

    Hello!
    do you know why i am having this error? Multiple work items list the same file as their expected output.? and also some of them are failing

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

    How are triggering the animations? Like you i plan to render mine, so i will be wanting to play them in a sequence i have setup, but i really dont want to drag and drop 100+ animation clips into my timeline :(

  • @varunthapliyal8960
    @varunthapliyal8960 11 месяцев назад

    It's importing animation not skeleton mesh in unreal. Help

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

    Thanks for the tutorial. Just wanted to know how to export multiple primitives to give each of them a material in Unreal, for example a soldier with a spear, shield and hood to have a seperate material in unreal. Much appreciated.

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

      I don't have a test file at hand, but since the characters are unpacked as fbx when exported, if you have a sword or a shield or anything as a separate object in houdini, when added as an agent layer, it will come through as part of the agent like anything else. should just be an object like the agent character itself.

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

      @@ThomasKlyhnChristensen OK, thanks , I'll give it a try

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

      @@ThomasKlyhnChristensen I also tested this but no chance. I would greatly appreciate it if you could send me a test file. Thanks.

  • @springs2108
    @springs2108 11 месяцев назад

    Thanks for the tutorial! I'm having the same '@wedge' attribute problem as others and I am running my wedge node and selecting a work item but still nothing...don't know what I am doing wrong. If anyone has a link to that Facebook conversation about this that would be great. also side note...houdini isnt recognizing my null node reference either or my 'points' function.

    • @springs2108
      @springs2108 11 месяцев назад +1

      holy $shit...it was because i was using backquotes instead of quotes...seems to be working fine now.

    • @ThomasKlyhnChristensen
      @ThomasKlyhnChristensen  11 месяцев назад

      Yes, there is a lot of small pitfalls where people are so sure and assume they are doing it right, but because TOPs in involved, not everything works like you are used to. just one of those quirks, but great its working now!

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

    I'm typing `@wedge` on the split node and its not recognizing it? any thing i could be missing?

    • @ThomasKlyhnChristensen
      @ThomasKlyhnChristensen  2 года назад +2

      I believe this was resolved on Facebook, but the wedge sop needs to be run and a work item selected for the wedge attribute to show up in the split.

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

      @@ThomasKlyhnChristensen sure was :) wasnt expecting you to respond to my fb post lol great tutorial! Hopefully many more to come

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

      I had the same issue, is the a way to solve it?

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

      @@Azimuth_art read the comment above, run the wedge node in tops and select a work item. Nothing exists before it’s been run.

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

      ​@@ThomasKlyhnChristensen Thanks for quick reply, I think the topnet was running and appeared a v mark beside with the number 20, but still it is not showing at the split node.

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

    Hey Thomas, Thank you for the tutorial very helpful and clear.
    My "agentCharacterUnpack" node scales each agent up. My FBX animations were originally huge and they were auto scaled by the "convert units" in the "create_agent" node. Now the unpack scales them up again and completelu destroys the animation. Would you happen by any chance to know how to fix this?

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

      Hmm, that is usually a normal behavior I would think, can you just transform it after the unpack? I would think the animation would follow though, only the mesh scaling sounds odd to me. If you can package up and upload a hip file somewhere I can have a look.

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

      did you ever figure out the workaround for this? Having exact same problem

    • @sugarhady
      @sugarhady Год назад +1

      @@gmmcgale Unfortunately not, I couldn't export fbxs and I had to export an alembic which was huge and my render difficult but it worked.

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

      @@sugarhady got it. thanks for the reply

  • @JoseCarlos-zo3rx
    @JoseCarlos-zo3rx Год назад

    Hey, every time I type `@wedge`, it shows me everything, how can I fix it?thanks

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

      I'm not sure I understand what you mean by everything? it's important to remember that with tops, you won't see anything unless you have a work item selected, if this is why you are seeing different to what you are expecting?

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

    Is it possible to import these fbx objects into Blender?

    • @ThomasKlyhnChristensen
      @ThomasKlyhnChristensen  Год назад +1

      Sure, no reason why not. Blender reads fbx characters as well as any program

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

    Have you tried exporting them with usd? Maybe you get them as lightweight as fbx but still all one file like alembic.

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

      At the time of making this video UE wouldn’t read USD exported from Houdini correctly, static meshes yes, but not crowd agents using USD skeletons, even though on paper UE supports it, they never lined up. I haven’t tried with newer versions of UE5 and Houdini 19.5 yet, but maybe something to look at.

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

    Hello Thomas how did you fix the root problem that the locomotion joint creates? because right now Unreal sees it as multiple roots

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

      I'm not sure I understand what you mean? I don't think I have had this issue? any more detail you can share? how are you generating your locomotion?

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

      @@ThomasKlyhnChristensen Hello Thank you for replying to me. The proplem occurs on all rigs when exported with the fbx character output node when done the same way you did it in the video, I even got the same shelf tool. but when I loas the fbx into unreal it says “Multiple Roots found for this mesh” and then it fails to import. But if I export to 3ds max and directly export without any changes to the hierachy of the bones then unreal has no proplem importing anything.

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

      @@jonasmortensen1252 have you find any solutions inside houdini?

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

      @@straightotheplan No, unfortunately not

    • @straightotheplan
      @straightotheplan 2 года назад +5

      @@jonasmortensen1252 delete joints node will help you, just select useless ones and delete them

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

    Thanks a lot for this video, very efficient.
    I have a question relative to the sequencer use. Load all the character into it is ok, but assign each animation sequence is a real pain when you have something like 500 agents to bind.. do you have any idea how to solve this ? I thought about using python script but it's a bit too technical for me..
    Thank you !!

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

      The trick is to drag in all the animation clips in, not the models! The models will automatically load with the animation, not the other way around

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

      @ThomasKlyhnChristensen this doesn't work with the sequencer. For cinematics. you have to go in and attach animation sequences to each trac

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

    Many THX♥

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

    Would this method work with 1000s of agents or would we run into bad performance issues? is it limited to around 20 to 30?

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

      eventually it slows down because in this case where all the agents look the same, the smart way is to load the mesh once and then give them different animation clips, but the way Houdini exports these unreal has no way of knowing that they are different. So pretend that not all are identical looking, this would work great. I have done some tests with I think it was 600 or 800 agents and I still got 20+ fps in Unreal (given I have a pretty beefy machine), but the practical use for this isn't really for it to run fast, but for it to run at all for shot production, where you want to use Unreal Engine as a renderer and not a game engine. my previous attempts was loading agents in as an elembic cache and that gets crazy heavy and not what you want to do, 20-30 agents in that case easily gets to 20-30GB of alembic cache and unreal just dies. So this for me is a much much more efficient way

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

    Really smart workflow. Thanks PS: Have you by any chance reached a limit on the number of agents who run well in UE?
    it would also be interesting to use the VAT labs tools to convert agents

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

      Thanks! Err I think the highest I have tested so far was 400 agents, and it felt slow ish in the viewport but as soon as I hit play in UE, it still ran with 20-25 fps, which again remember the idea is to use it for rendering, so 5 fps is freaking insane when that is the goal. You can throw a lot at it! Of course your system memory and gpu will eventually matter I’m sure.

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

      @@ThomasKlyhnChristensen Thanks for the fast reply... yeah 400 its great