Way to automate Baking multiple version of a Digitial Asset

   157   11   1
User Avatar
Member
29 posts
Joined: Jan. 2016
Offline
Lets say I have a digital asset for a wall for unreal. I have a few parameters available for changing the size and stuff.

If I know I need to generate 100 different variations of those parameters for a modular system, is there a way to script baking all of them with one button click. So if I have to change my base asset I do not have to create all my variations one by one in the editor?

Are there existing methods to deal with this type of workflow?

Thanks.
User Avatar
Member
7 posts
Joined: Jan. 2017
Offline
use frames and each frame have to be 1 version of wall and bake 100 frames
User Avatar
Member
29 posts
Joined: Jan. 2016
Offline
MightyKaziu
use frames and each frame have to be 1 version of wall and bake 100 frames

Thanks. I will try that.
User Avatar
Staff
85 posts
Joined: Sept. 2016
Offline
You could put your asset inside a foreach loop in houdini and have iteration-based expressions on the asset parms. Then you pack so you end up with 100 packed geos. This will show up in unreal as separate meshes.
User Avatar
Member
29 posts
Joined: Jan. 2016
Offline
chrisgreb
You could put your asset inside a foreach loop in houdini and have iteration-based expressions on the asset parms. Then you pack so you end up with 100 packed geos. This will show up in unreal as separate meshes.

Would it be possible to see a simple example of this in an hda file? Or is there a good tutorial out there that shows how to accomplish this?

Thanks.
User Avatar
Staff
85 posts
Joined: Sept. 2016
Offline
Here you go. You end up with 10 different messed-up looking meshes, the mountain time parm is an expression
detail("../foreach_count1/","iteration",0)
Edited by chrisgreb - Jan. 11, 2018 15:53:30

Attachments:
variations.hda (11.5 KB)
Capture.PNG (35.4 KB)

User Avatar
Member
29 posts
Joined: Jan. 2016
Offline
Aladin Sane
chrisgreb
You could put your asset inside a foreach loop in houdini and have iteration-based expressions on the asset parms. Then you pack so you end up with 100 packed geos. This will show up in unreal as separate meshes.

Would it be possible to see a simple example of this in an hda file? Or is there a good tutorial out there that shows how to accomplish this?

Thanks.

ok I have figured out a way to do this. I am attaching a simple project in case anyone else is interested.

It includes a simple manual node tree which works, but it also has a foreach loop with an attribute wrangle to setup all the output values.

Attachments:
multipl_output_testing.hdalc (28.9 KB)

User Avatar
Member
29 posts
Joined: Jan. 2016
Offline
chrisgreb
Here you go. You end up with 10 different messed-up looking meshes, the mountain time parm is an expression
detail("../foreach_count1/","iteration",0)

thanks Chris. I will explore that and see if it better than what I have come up with. I have posted my attempt in my previous post.

Thanks again. I appreciate the help.
Edited by Aladin Sane - Jan. 11, 2018 18:50:22
User Avatar
Member
29 posts
Joined: Jan. 2016
Offline
chrisgreb
Here you go. You end up with 10 different messed-up looking meshes, the mountain time parm is an expression
detail("../foreach_count1/","iteration",0)

I cannot load variations.hda. Tells me invalid hip file header (probably cause I have indie license).
User Avatar
Member
29 posts
Joined: Jan. 2016
Offline
chrisgreb
Here you go. You end up with 10 different messed-up looking meshes, the mountain time parm is an expression
detail("../foreach_count1/","iteration",0)

I have been messing with this some more. It does not seem to honor my collision groups or socket creation. Also UVs are empty and the second lightmaps are not created.

I have tried it with and without the unreal_split_instances.

It is giving me seperate geometry but it is not useable if I cannot get socket and collisions working.

I also tried transfer attributes and transfer groups on the pack node and it did not seem to make any difference.

Any ideas?

I have posted an example that shows the problems with sockets and collision. If someone can point out what I am doing wrong or confirm that there is a problem generating sockets and collision this way?

Thanks.
Edited by Aladin Sane - Jan. 11, 2018 21:34:46

Attachments:
multiple_output_testing.hdalc (35.5 KB)

User Avatar
Staff
85 posts
Joined: Sept. 2016
Offline
There does indeed seem to be a problem. The group information is being lost on the plugin side for packed primitives. I've added a bug to look into this.
User Avatar
Member
29 posts
Joined: Jan. 2016
Offline
chrisgreb
There does indeed seem to be a problem. The group information is being lost on the plugin side for packed primitives. I've added a bug to look into this.

Thanks, I appreciate it.
  • Quick Links