Sub-D is so slow


#1

I usually go back an forth between Standard and Poly-Proxy mode in Sub-D modeling, but it gets sooo slow. Is it just the nature of Sub-D modeling or do I have a wrong topology or something? I keep everything in 0 level so that I can go to Poly Proxy mode and subdivide surfaces with split-poly tool and other tools. I appreciate anybody could give me a good workflow in Sub-D modeling for faster process.

Because of it’s slow operation and limited functions of texture map, Sub-D in Maya 4 does not really attract me for now.
I would like to know what other people think.


#2

Have u tried deleting history? After awhile, you’ll see a bunch of your past modifications on your object under the obj. editor on the right hand side. Deleting history should clean it all up.


#3

There is a work around for sub d slowness. It is actually found right here on CG Talk. Here is the link: http://www.cgtalk.com/showthread.php?s=&threadid=23829

Just scroll down until you see cure for sub d slowness.


#4

turn off construction history B4 you start modeling…unless you have a reason for keeping it.


#5

The best way for modeling in sub d’s in maya is to start using polygon mode for the basic structure of the character and or object. Make sure everything is good and then go into standard mode for fine detail. This is the way I do it, others might model with sub d’s a lot differntly. Turning off history before you model might result in maya not letting you extrude faces (thats happened to me before). The sub d’s in maya are really good. Of course there are still some faulty things about it, but its still good. If you do not want to use sub 's then there is a mel script you can use to simulate a smooth proxy, therefore not really using sub d’s. The mel script is found at www.highend3d.com. If you had maya 4.5, you wouldnt need to worry about the script because the smooth proxy tool is an option in 4.5 in the polygon tools.

Here is the method for curing sub d slowness found on cg talk:

Cure for subdivision SLOWNESS

1.) Open the Hypergraph. Options > Display > Shape Nodes.

2.) Select the shape node for your SubD model , and “show up-and-downstream connections”.

3.) Right-mouse over your SubD model in the viewport and go to Poly Proxy mode.

4.) In the Hypergraph, you should see the downstream connections change to a historyshape node (the
poly proxy) and a bunch of blindData nodes.

5.) Delete the blindData nodes. If you move vertices on your model, you should already see a slight
increase in speed.

6.) Create two layers.

7.) Select and assign the the poly proxy (historyShape) and the subd shape node to seperate layers.

8.) Hide the layer with the Subd shape node

9.) Middle mouse drag the Poly Proxy (historyShape) node over the shading group (at the right end of the
network in the hypergraph) to give it a material, so it is shaded in the viewport.

10.) Now move some vertices on your poly proxy and you should have full interactivity! You can hide
and show both layers whenever you want. (Note that the greatest performance increase comes from
hiding the SubD layer.)

You can also bind the poly proxy to a skeleton and animate it. That way you can alter and assign UVs on
the SubD model after the poly proxy is skinned. When you want to render, just hide the poly proxy and
show the subd! Walla!

Hopefully this will work for everyone. If it doesn’t and you have questions, post them. I’ll try to solve
them. Note that you must repeat the steps concerning the Poly Proxy node if you switch back to standard
mode and then back to Poly Proxy node (deleting blindData nodes, assigning to the layer and assigning a
shading group, etc).


#6

I’ve probably misunderstood something here, but why don’t you just stay modeling in pure polygon mode, just checking briefly and occasionally what the surface looks like as a SubD, then Undo and go back to modeling the polys? Make a couple shelf buttons for converting back and forth.
Sometimes I stay editing in SubD mode for a while before I convert back, but never in polyproxy mode, always in Standard. Doing anything in polyproxy mode is dead slow on heavy geometry, I agree.


#7

Yes that is true in poly proxy mode. Recently what I do is pretty much use just polygon modeling, and smooth it to see how it looks like. Then I made a shelf to smooth and delete history so I won’t get too much of construction history information. But as long as I stay on Standard mode i like how it works.


#8

Personally, I found subdivisions to be so slow I abandoned it altogether. Even after deleting the blind data nodes and making sure my model didn’t have any n-sided polygons, I still was getting massive slowdowns.

What I ended up doing is not using SubDs at all. Rather, start modeling just in polygon mode and before going too far, select Modeling>Polygons>Smooth Proxy. This creates two layers (that you can see if your Layer Editor) - one that has the smoothed (subdivided) version of your low poly cage. You can hide either layer.

I find this works much more like SubD’s in other apps works. If you’re coming from C4D/LW/Max, you’ll find this method much more comfortable. I did anyway.

Hope that helps.
Spoon


#9

Well if you have access to a Renderman compliant renderer, this seems like a promising work around: http://stabacco.deathfall.com/detail.htm

(s)

[edit] sometimes this link is down


#10

i can get the proxy and the sub d assigned to seperate layers…but whenever i turn off the visibility of the subd layer…the proxy disappears? any do i get around that?


#11

ok…i fixed it


#12

I’ve been studying the SubDiv problem this weekend, and I covered some of my rants/solutions to it in another thread. There are a couple of things I wanted to add to this discussion though.

When you go to Polygon Proxy Mode, all your geometry tweaks other than on level zero of the SubDiv object are stored in Blind Data nodes. Then when the polyToSubDiv node converts the polygon object to a SubDiv object, it uses the Blind Data nodes to put together your additional levels of tweaking. If you delete these blind data nodes, don’t you lose your tweaks on levels 1, 2, and 3? Adding these tweaks in is why the blind data nodes slow things down.

Hiding the SubDiv object and working only on a shaded Poly Proxy object created by the Polygon Proxy Mode command would speed things up by disabling the poly to subdiv conversion while you are modeling. But that is a work around, not a solution, because that means you can’t work in a low level and still see the smoothed final mesh which is why you’ve chosen to work with SubDivs anyways.

Smooth Proxy and CPS do the same thing. Their approach to smoothing polys is faster than SubDivs, but still slower than it should be. You can see my rant in the other thread to see why (“No good smooth operations in Maya for Modeling?”).

Later,
Michael Duffy
mduffy@ionet.net


#13

I didn’t know that, but I knew things went to hell if I deleted history while in proxy mode… :slight_smile: I just stay away from proxy mode.

I wonder why it seems so many are insisting on editing Subd’s in proxy mode? Of course, I agree - that is totally unworkable for anything heavier than say a medium-detail hand or foot, on a very fast computer. A whole finely detailed head or body? Forget it.
Why not make 2 buttons to quickly convert Poly to Subd and vice versa; then keep jumping from poly to Subd instead of from Proxy to Standard. And if/when you want to start adding hierarchical detail, of course you have to stop converting. Maybe not a perfect workflow, but I must say it works very well for me.

Perhaps it’s the thought of interactivity that makes you want to use the proxy? Having a cage to edit, but at the same time seeing the Subd instantly updating?
Hm… I feel that skipping from poly to Subd isn’t hampering me, cramping my style, or slowing me down much - in fact seeing both at the same time would probably often be more confusing than separating them this way. Just my 2 cents.


#14

Man, I thought I was the only person who used Sub D’s that way, steven! I am glad I am not alone.
I have a Maya class at my college, and my teacher is INSITANT on people editing in proxy mode. BAH! it is horrible. Its so slow. I always ALWAYS work with polys, convert to sub d’s to see how its going, then undo back. Its so quick. I even made buttons on my shelf too! I am happy to see I am not the only person to work this way. If you dont use sub d’s like this, I highly recommend trying it, its great.


#15

Hey there Stahlberg. I’m new to Subds and I think your way of working seems pretty good.
But I got a question, if you would animate a head, and have blend shapes, they dissapear when converting to subd, and isn’t it a bit slow to make the blend shapes in subd mode?

Also, when animate a whole body, isn’t it getting a bit heavy?

You got any knowledge about this?


#16

other thing about sub D is the texturing
is it the same as texturing polygon ?
can anyone tell me as well
thanks


#17

i forget something…
the only thing that make me use subD is the crease value feature
but if anyone can tell me how to do it in poly i would like to say poly is the best.
anyway if your concern of using subD is not on the crease value, u can always use connection editor to fake the instance object

here’s the tips
-say u create a cube
-duplicate one
-smooth it

  • open your outliner and go display and check the show shapes
    select the cube shapes and load it to left side of the connection editor and select the smoothed shape of the sube to the right
  • scroll down until u see world mesh and connect it to in mesh
    now u can see everytime when u modify the cube, the smoothed cube will follow as u manipulate the cube

the safest is smooth it after you connect them

hope this help!

actually i need help on my project of texturing
can onyone tell me how to create real human skin texture in photoshop?
thanks


#18

deddy, someone else posted this link recently and I thought it was pretty interesting… unfortunately its in native french but the pics show alot and you could always dump the webpage through a translator.

http://www.3d-station.com/Tutoriaux/tutoriaux.php?id=13

I am curious how you folks texutre your subd models. I mean, do how do yo uset up your mapping coordinates such that it doesn’t get blown when in subd mode? I’ve only tried it a couple of times, but whenever I map my low poly model, and then convert the mapping is blown away… well my inexperience is showing, but I’ve never gotten found a good tut on this…:shrug:


#19

jason
you can go to http://www.freetranslation.com/web.htm
to translate the web that u give me
hee hee
good luck


#20

Once again Cg talk you have save my butt. I have been working through the exact slowness you guys are talking about banging my head against the wall trying to learn this maya stuff coming from 3d max and low and behold I do a search on CGtalk and you guys answer most of my questions. thanks for your generious information. the layer’s technique works great for what I need to do at the moment and later I will switch to the pure poly to sub d mode. does anyone know if Maya 4.5 or the planned 5 has taken this work flow into account. thanks again gentlemen.