Problem: With low "Max Delta" values, the 3D view runs very slowly; with higher values, the 3D view shows pieces flying all over the place.

The flying pieces indicates what's known as a "simulation explosion." This can be caused by a model that's trying to pull itself apart, but more likely it's due to a large time-step between each frame. You can adjust the 'virtual' time delay with the "Max Delta" parameter in the physics parameters dialog box.

The default maximum of 25 milliseconds gives pretty stable simulations, but it may result in slow simulations on less-than-fast computers. My 1.4ghz AMD K7 starts to slow down with a maximum time-step of about 15ms with the ComplexDog model. My non-3D-accelerated 450mhz K6 runs really slow with the default 25ms setting, flutters at 50ms, and it just plain explodes if I set the time time step at 100ms.

There might be some room for optimization here, but still... I think it's always going to take an insane amount of math to simulate an articulated system of linked objects. This means things are going to be slow on older computers.

Everything seems to be sort of elastic - joints don't always stay perfectly in place on their attached beams, for example.

This is a simulation error. You can reduce these errors by increasing the Error Reduction Parameter (ERP) to 1.0, or decreasing Constraint Force Mixing (CFM) in the physics parameters dialog box. 1.0 and 0.01 are good places to start for ERP and CFM, but the ideal value will change with model complexity, beam masses, simulation timesteps, and so on.

Parts of the model are oscillating, blurring or shaking.

This can be caused by setting ERP too high (you probably don't want to go above 1.0), or by setting CFM too slow (0.1 - 0.001 seems to be the most useful range, with 0.1 being elastic and 0.00001 or lower being too rigid for most applications), or by setting joint forces too high (start with max force at 100 with a gain of 10, and increase only when necessary), or by setting the maximum time-step too high. ERP is adjusted in the physics parameters dialog box; joint forces are adjusted on a per-joint basis in the properties window. Ideally the joint forces should be no higher than the minimum required for proper model movement. Higher forces just create these oscillations.

Trial and error seems to be unavoidable. Parameters like these are an unfortunate side-effect of moving things frame-by-frame with a computer simulation instead of in continuous real time with a physical mechanism.

It locks up when I load a file.

Sometimes I wonder if XML was the wrong choice for a file encoding. It's nice to look at in a text editor, which helps debugging, but it sure does take a lot of string comparisons to load a simple file. It's not really locked up, it's just churning away as it parses its way through the file. Expect a progress bar to appear during this time, unless I can find a way to optimize away some of those string comparisons. The latter is probably possible, but it's not very high on my to-do list just yet.

I notice it's throwing a lot of exceptions as it loads a file.

That stream of exceptions is part and parcel of the XML parsing scheme I'm using in Juice. I have mixed feelings about using exception throws as (essentially) non-local goto operations, but yet the code has a certain elegance to it. Incidentally, this code may well be released on its own before Juice's entire code is released. If you're interested in object-oriented XML serialization in C++, just let me know.

Nothing changes in the 3D view. I load a model and still see the same empty cage. The viewpoint doesn't move when I right-click and move the mouse around.

When trying to load a file, a message box pops up, saying "You must install the Microsoft XML parser..." But I just installed it!

Known bugs. I have wasted a lot of time trying to solve these, so they're on the back burner for now. If you have any ideas as to what might be causing these, please share them. I'm all ears!

The frozen 3D window thing happens on one of my computers, but not the other. Dunno why. Close the 3D view window and use the "View | New 3D Window" menu item to create a new one, and the new window should work properly. Of course, the first one should work properly to begin with...

The installed but undetected XML parser problem has been found on 2 out of 2 Windows98 systems that I know of.


c o n t a c t   m e @ w h a t e v e r . n e t

Last updated Apr 22

To link directly to this page:
http://www.natew.com/juice/frames.cgi/help/html.Troubleshooting