Simple Mesh Generators (using Houdini Engine)

houdini

#1

Hi folks. Taking inspiration from the awesome curve sweeper tutorial and setup from @Partikel and chatting to @Keyserito at GDC I thought it might be nice to have some handy tools that generate the simple meshes we often use for vfx. The focus is on a tool that will generate the mesh, layout the uvs and add vertex colour. And ideally you could do this in the game engine instead of having to go back and forth with your DCC package.

As a first pass I’ve created a cylinder and disc generator that have a bunch of controls to create the kind of variations you see in the video below. I’m curious to know what other simple mesh shapes you find yourself constantly making so I can expand the toolset. And hopefully soon I can release these simple HDA’s for feedback.

mesh_generators_preview_small

And… I’ve just realised @frontakk started doing something similar.


#2

Sphere/oval -> hemispheres
Curved planes for smoke trails
Funnels/cones
Spikey function for flashes, like muzzles or ice shards
Meteor/comet/asteroids (make bumpy sphere)


#3

So nice!
Although it is Japanese, maybe this tutorial may also be useful.


How to make primitives with wrangle.:smiley:


#4

Maybe and this mesh


#5

Very good idea !

I’ve never used it personally but it seem a tornado mesh is a useful thing:


#6

I think our definitions of simple are quite different! :wink:

But I was looking at adding a twist parameter. I think that could be helpful. And possibly some noise.


#7

You know how users are… they always want more!
Sorry I had replaced “simple” by “generic” in my mind.

Let me try again.
Maybe a sphere with even UVs (to avoid the pinch on the poles)
image

and a half cylinder (or I mean, an option to remove some of the faces so you can get 3/4 or whatever it is you need).

[was that better?]


#8

I feel like that and the cross mesh are one-offs. You don’t really need to modify them from that basic idea.

Here’s a video showing the generators in action. Hopefully that makes it clearer what’s possible. Just with a disc and a cylinder I was able to hit most of the suggestions people had.


#9

Mike, this is fantastic! This is gonna be a bread-and-butter tool in my daily workflow.

On the topic of additional shapes, Andreas’ curve sweeper is a good start, but has limitations, such as no curve graph driving rib rotation along its length, no noise, and no control over the cross-section’s profile.

Those may be minor gripes, but the real issue i found with it was performance. Editing a parameter had a few-second delay before updating in the level. Paul Ambrosiussen mentioned it could be optimized by swapping nodes out with custom code.


#10

My mind has been going on and on with ideas about UVs, and how I commonly manipulate them on meshes:

Snapping to a 90 degree rotation of the UVs is hugely valuable. Different projects orient their beam/trail type textures differently (and sometimes differently within the same project). Being able to accommodate top-to-bottom, or left-to-right on the fly is a must have.

For more fine-tuned controls, how difficult would it be to “squash” the UVs along all 4 extremes toward the edges of the map? So, if I wanted to have points gathered along the U axis toward the right, left, or both. Same with V. This varies the timing of the motion when scrolling the UVs. I find myself using it fairly regularly.

Also, randomly distorting/offsetting the UVs with a noise pattern is very useful, especially when combined with the noise offset you’ve got going on the vertices. In the big scheme of features, though, this is more of a luxury item. Not super frequently used, just nice to have.

Can’t say enough how cool it is you’re iterating on this. I’m excited to see where it lands, so I can tinker around with it!


#11

Rotating the UV’s 90 degrees is pretty easy.

I was looking at your sunfire cape breakdown and thought it might be helpful to have some UV controls. It should be pretty easy to add something like a cornerpin for each four corners and then a power/gamma type control to shift the uv’s towards one side.

And adding noise to the uv’s is possible. I agree that it might be a little more specific but I can take a look if I have some time.


#12

I wanted to do these things. I think building a general-purpose mesh is a good process.
Thank you for the @frontakk link. I think it will be a good study.


Attach my work.
I made this referring to @Partikel work.


#13

Very nice, thanks a lot!


#14

Hi!
I am using my own mesh generator and super handy so I really think it is good idea!

anyway I guess it won’t/can’t be in Houdini engine but I would like to suggest this.
those video’s are what I am trying lately.
just generate mesh in houdini and also animated. I think this way make particle effects more flexible.

thank you!!


#15

Hi Mike! I love this. Gonna try to generate my own, but i was wondering one thing… Once you’ve used the HDA to generate the meshes, can you make them into static meshes? so they can be used inside UE4’s particle system, i mean. Or this setup is limiting in that sense? It’s really inspiring thanks for sharing!


#16

I’ve used that noise/twist setup a bunch, it’s super handy and gets good results


#17

@Kentuc those examples are awesome! So great to see you using Houdini to generate meshes in such a novel way.

@Khaliszt you can bake the result down to a static mesh. And as long as the name stays consistent there’s a link between the static mesh and the tool. So you could tweak your settings then hit ‘bake’ and see the changes in the particle system.

@Travis I take for granted how useful noise can be. :slight_smile:


#18

I like it because it twists, so I only have to (usually) worry about pan speed in one direction, and it gives a much more broken up silhouette. Throw in texture that has black in the alpha or emissive texture, and it’s really hard to tell what the mesh is shaped like :slight_smile:


#19

Inspired by each of the post above decided to add this helix tool in my asset library! Thank you @Partikel for wonderful tutorial and all you guys! :rofl:

Excited to use it for my effects in future :wink:


#20

Hey folks. I’ve released the mesh generators as part of the Game Development Toolset for Houdini.
I would consider this the first pass. I’m looking for feedback on how to improve the tools and any issues you might have in the different packages.