maybe for realtime shading in moi

 From:  Michael Gibson
1963.15 In reply to 1963.14 
Hi Iwan,

> About the old gen graphic cards, well ok, but caching is
> supported even on the lowest grade dx9 compatible card I believe.

They technically support it, however that is not the main issue - older generation cards have a much lower amount of video memory on them than newer generation cards, so creating a display design that is totally focused on making mesh data resident on the card is not going to work well with cards that only have 64Mb of VRAM, or especially 32Mb of VRAM.

That is one big reason why many CAD programs and newer display type systems are totally unable to function at all on older cards.

MoI's DirectX design is currently focused on being very memory efficient and streaming data to the card instead of requiring it to be resident on the card. That's a key thing that allows it to run so smoothly on older cards where other display systems just totally fail.

For example, try running your 3ds Max installation on a system with 32Mb VRAM and see how well it works.... MoI on the other hand will actually run on that system.

The streaming is not really that big of a deal because newer cards also have an improved streaming speed as well, so that by itself does not tend to be the biggest bottleneck in the display. In general curve drawing is actually the #1 bottleneck.


> MoI, even with very low tesselation (add details to inflections set to 5°)

You didn't read my message correctly - setting it to 5 degrees has set the tessellation to be much higher density, not lower - to set it lower set the angle to a more coarse angle like 25 degrees, and uncheck the "add detail to inflections" box.

Like I mentioned the default settings in MoI are set up to give a much higher density mesh than is normally done for NURBS display in other programs. But that also gives a much higher quality display with less jaggies and shading glitches which tend to confuse beginning users who confuse coarser mesh defects with defects in the surface. The density is set to high in MoI by default so that you see more of the true NURBS surface definition instead of the meshing artifacts.


> Since we (at feversoft) are working with realtime too, I can tell that
> meshed nurbs can display MUCH faster, so yes it is true :)

Have you been able to compare the polygon count between the 2 displays and examine things like silhouettes and shading glitches?

I can certainly believe that a system that uses a coarser mesh is going to be faster, no doubt about that!

Additionally, is your display drawing anti-aliased curves for every edge in the model?

If not then you're totally comparing apples to oranges - the curve display is actually one of the most compute intensive parts of the display process.

You could hide all the edges in MoI to get a speed up as well, but working with edges tends to be a big part of MoI's workflow, so that is not very practical.

Your comparison is just not really valid, you're comparing things that are doing different types of work and wanting them to be equal...

I could make it equal in MoI if I took out the extra things that MoI is doing like high density and anti-aliased curve display, but for the work that is done in MoI typically those are important features for MoI's display system while they are not for the other systems that you are talking about.

I have spent quite a bit of time optimizing the path to DirectX - that is not really the main problem area.


It's easy to make mistakes in comparison between different systems like you are doing here - you have to take everything into account not just "some other program that uses DirectX displays millions of polygons". That does not particularly mean anything unless it is doing all the same stuff.

I wish that things were as simple as what you describe, but no that is not at all correct.

- Michael