Best way to increase MoI performance?

Next
 From:  rado
2418.1 
I've recently had some time to play with MoI beyond the stuff I do at school (archvis).

I'm getting into a lot more complex boolean operations in these non architectural freeform exercises. I'm looking to improve MoI performance on my system, most notably the calculation of booleans.

If I buy a new quad core processor, will this significantly speed things up? I'm currently using a core 2 duo (2.4 ghz) with 4 gb ram (Win XP pro).

I guess my other thing is getting the model to respond better when a lot of info is on the screen. I've already tuned the mesh angle and hidden lines, but I find that with really complex models rotating really gets sluggish. I'm guessing that it will get a lot better once you add layers to the program (being able to turn off and or show wireframes for inactive layers should do wonders), but for now, will updating my gfx card help? I'm currently using a geforce 8800 gts (640 mb ram).

Thanks for any insight you people may have!
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
2418.2 In reply to 2418.1 
Hi Rado - booleans are a very complex calculation, so it is just not an unusual thing that they may take some time to complete.

The main thing that you can do to help speed those in particular up is to keep your object size to be in a somewhat smaller numeric range, like don't have objects at more than around 3000 units in size.

Like for example if you are modeling a large sized object, don't set your units to millimeters which then gives you numbers like 15000 millimeters. Instead try to set your units to centimeters or meters to give you smaller sized numbers.

The reason for this is that MoI calculates intersection curves between surfaces at an accuracy of 0.001 units. If 0.001 is extremely small in comparison to your object size, that means that those intersection curves will be calculated to too high of an accuracy level which means they get a large number of points added to them and the calculations itself will take a much longer time time complete (plus file size will be much larger due to the larger number of control points in the curves).

That's pretty much the main thing to try and avoid.


> If I buy a new quad core processor, will this significantly speed things up?

No, not for boolean calculations. But the most recent v2 beta will benefit from a quad-core when doing a mesh export though.

It probably won't be too much longer before I'll be able to make the display mesh calculation take advantage of multiple cores which will then help out in a lot more areas.


> but for now, will updating my gfx card help?

Yes, possibly it can if you are seeing sluggish screen redraws. But it won't speed up the boolean calculation itself though.


Another thing you can do to increase screen redraw speed is to lower the density of the display mesh.

By default MoI is set to create a rather dense display mesh to give a very nice smooth looking display. However, if you have a complex scene a heavy display mesh can result in a slowdown with such a large number of polygons.

To adjust the display mesh, go to Options / View / Meshing parameters, and change the default of 10 degrees to a value of 25 degrees, and also uncheck "Add detail to inflections". This will result in a coarser display mesh, you may notice your model has a somewhat more jaggedy looking visual display, but it will probably boost up your interactive viewport speed by quite a bit.


I'd recommend adjusting these parameters first, before worrying about upgrading your video card.


- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  rado
2418.3 In reply to 2418.2 
Sounds good. I'm gonna hold off on the upgrade for a bit I think. The unit info helped a lot. Some of the parts I was trying to boolean were way too small. I just increased the scale on one of the parts and the boolean was considerably faster.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
 From:  Michael Gibson
2418.4 In reply to 2418.3 
Hi rado, yeah too small can also cause problems as well.

Ideally if you can make things not much smaller than 0.1 units and not much larger than 3000 or so (just as general guidelines) that can help a lot.

I do plan on making a kind of "relative size tolerance" apply to more operations to try and adapt things better to the size of the object, but this is kind of a delicate area and will take a bit of time before everything is converted over to using that. It is used only in a couple of areas currently (Join and Network).


Oh yeah, one other thing that can be a problem is if you have your objects located at a far distance away from the 0,0,0 origin point.

Like even if you have something that is a nice 10 by 10 units in size, if it located at x = 5323232.5 y = 245222461.2 , stuff like that will cause various problems as well.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All