Reducing Polygons

   10292   10   1
User Avatar
Member
82 posts
Joined: Nov. 2009
Offline
I have a mesh with bones that I have animated. I am exporting it to Torque, though I don't think that is important to my question. Torque can have multiple levels of detail. You set them up by pointing each level of detail to a different mesh.

Well, I already have my main mesh that is all set up. I made a copy of it in my object. It still animates just like the main one does. So far so good.

So now I want to reduce the number of polygons on the new mesh. I don't want to loose all of the bones weighting and such if I can help it. What kind of node can I add inside of the mesh object to do this? I tried inserting a PolyReduce, but as soon as I change the percent to keep the mesh disappears.

How do I do this?
User Avatar
Member
8083 posts
Joined: July 2005
Offline
Don't insert the PolyReduce into your network. You should *branch* off of your original skin (no weights) geometry into PolyReduce. Now append an AttribTransfer. For the _Right_ input of the AttribTransfer, pipe in the full geometry (with weights). Now enable all the checkboxes so that AttribTransfer will transfer all types of attributes. This should give you a rough weighting of your low poly mesh. To your AttribTransfer SOP, append a Deform SOP for testing. Tweak the attribtransfer values to your liking.
User Avatar
Member
82 posts
Joined: Nov. 2009
Offline
Thank you.

Being new to Houdini, I am sure I will have questions when I try this tonight. If you have the time to make up an example, that would be very helpful.
User Avatar
Member
82 posts
Joined: Nov. 2009
Offline
Well, I tried this and it didn't work quite right. I had my mesh with all of the captures down to a deform at the bottom. I have some animation based on bones.

So I added the PolyReduce and *branched* from the raw mesh into the polyreduce. I then put an attrib transfer with the polyreduce coming out of it and the bottom of the captures and weighting into the right side as you said.

I then added another deform under the attribtransfer. When I turn that one to visible I see the model with the material and can reduce the poly count and see it working.

What doesn't work is the animation. The bone captures don't work at all. The mesh is in its base position and doesn't change. I tried checking all of the check boxes. I didn't know what to pick in the different entries, however. The other thing that happened is that suddenly it takes forever to change anything.
User Avatar
Member
8083 posts
Joined: July 2005
Offline
When you middle-click on the input nodes into your polyreduce and attribtransfer, make sure it says NOT time dependent. Otherwise, things will be very slow because it will be recooking these expensive operations every frame. I've attached a 2 min example.

Attachments:
xferCapt.hipnc (75.2 KB)

User Avatar
Member
82 posts
Joined: Nov. 2009
Offline
Thank you for the example. The input from the weighting capture side is a capturelayerpaint and it DOES say time dependant. How do I change that? Do I want to?
User Avatar
Member
82 posts
Joined: Nov. 2009
Offline
I have a related question…

I am exporting this to Torque DTS format. Because of the way the torque engine does its thing I am having to set the export scale to 0.03 because it is too big in my game and the scaling of the game doesn't seem to work when I add one of the comonent from the engine.

Anyway, how do I scale EVERYTHING in my object down? I need to scale down the skin, the bones the weighting (if needed), everything to 0.03 of its current size so that I can export using 1 instead of 0.03.

The reason I need to do this is because the torque exporter doesn't seem to use the details LOD correctly when you scale it down with an export scale.

So basically I want to scale it in Houdini so the export is 1 to 1
User Avatar
Member
8083 posts
Joined: July 2005
Offline
tpitman
Thank you for the example. The input from the weighting capture side is a capturelayerpaint and it DOES say time dependant. How do I change that? Do I want to?

That sounds wrong. In absence of looking at why your capture weighting is time dependent, try just locking (click on the red button on the node) on the AttribTransfer once you have it to your satisfaction.
User Avatar
Member
82 posts
Joined: Nov. 2009
Offline
Never mind on the scaling question because I just figured out how to get the export scaling to work. I have to manually create a bounds object and then the scaling exports the details correctly. I guess the automatic exporting of a bounds doesn't work right.
User Avatar
Member
82 posts
Joined: Nov. 2009
Offline
Locking it works great. Everything is working now. This is awesome. You dah man!
User Avatar
Member
8083 posts
Joined: July 2005
Offline
tpitman
Anyway, how do I scale EVERYTHING in my object down? I need to scale down the skin, the bones the weighting (if needed), everything to 0.03 of its current size so that I can export using 1 instead of 0.03.

Find (or create) some object that is the parent of all your objects (ie. every single object has it as an input). Now scale that to 0.03. For the biped autorig, just change the Animation > Character Placer > Scale parameter.
  • Quick Links