Modify mesh per face based on component normal

Modify mesh per face based on component normal

Stefmon
Contributor Contributor
811 Views
3 Replies
Message 1 of 4

Modify mesh per face based on component normal

Stefmon
Contributor
Contributor

Hi, got a very specific issue here.

I'm trying to create a new process for converting Xgen Interactive Groom primitives to Haircards. 

If I get this issue solved, I will post the whole hair authoring process for anyone interested. The idea is for it to allow quicker authoring of real-time hair cards from Vfx hair styles.


I'm pretty close but I have one issue I am unable to efficiently solve. I'll explain where I'm at below.

  • Authored Xgen hair (done)
  • Converted Hair into Geometry (simple planes following the form) (done)
  • Edit planes so that they are hair card shaped.     (Issue)

My issue is that I do not know if there is a way to modify every face at the same time, based on each face's own normals. Imagine transforming multiple objects by their component axis. Each would move based on their individual axis. I want to do the same, but instead of every object moving by it's own axis, I want to move every face by it's own axis. I hope that explanation makes sense. Below are images showing where I'm at. Below are images 

1.jpg

 I've cherry picked the strands I want from XGen and converted to one sided geo strands

 

2.jpg

This is what each strand looks like. If I am able to increase the with of each strand at the same time, I would Instantly have hair cards in the shape of the hairstyle.

3.jpg

This is what I want to do, for each face, based on its own face axis. I can then increase the with of each strand, and rotate it, at the same time.

4.jpgThe result I'm after. I did this in ZBrush by extruding the faces. The result is good but each strand now has 4 sides. Cleaning that up would take way too long, and this isn't even a complex hairstyle.

Any help appreciated

 

-------

Update:

So I've figured that all I need to do is scale and rotate each face by it's normal. To do this I need to select all faces as if each face is a separate component. The main question is thus: How to select all faces as if each face is a separate component?

0 Likes
812 Views
3 Replies
Replies (3)
Message 2 of 4

brentmc
Autodesk
Autodesk

Hi,

 

The closest thing I can think of to do this interactively is Edit Mesh > Transform

 

mesh_transform.gif

--

Brent

Brent McPherson
Principle Engineer
0 Likes
Message 3 of 4

Stefmon
Contributor
Contributor

Hey Brent thanks,

That's close to what I'm aiming for but the Axis for transforming the faces isn't in the best position for me to scale the face sideways, nor rotate it into position. Also I think that using Edit Mesh > Transform gives each island has it's own axis rather than each face.

5.jpg
6.jpg

0 Likes
Message 4 of 4

brentmc
Autodesk
Autodesk

In that case I think you may have to drop down to the Maya API to get the control you need.

--

Brent

Brent McPherson
Principle Engineer
0 Likes