We are not programming any differently than we have in the past. The computers that you guys are buying are changing. We cannot help that the manufacturers are putting this stuff in them.
It quickly becomes something that is out of our control. If a user loads a file that creates a tool path that is larger than what the dedicated memory his video subsystem has, then there is GOING to be a performance issue. I think it is absolutely horrid that my 7 year old clunker of a computer can run a large file better than the bran new hot off the shelf computer. It's ridiculous! What WAS normal for a computer is now not so normal.
Mach 4 is not programmed for a defined specification other than OS >= XP and we we would like something that has at least OpenGL 1.5 capabilities to run the tool path. If it doesn't, we simply switch to the older, yet slower, method of rendering the tool path. The problem comes in where the video device says that it can do OpenGL > 1.5 but does it poorly. We have no way of knowing this. Mach 4 does take more memory though and that is a product of being different that Mach 3 (new GUI with more controls, etc...).
We have done a lot of things inside the software to allow it to run on older systems. For example, you can change the screen refresh rates to better match the capabilities of older hardware. But the one thing we cannot do is account for the fact that Mach 4 does require more memory.
So let me assure you guys that we are not intentionally doing anything to hold a spec other than what I described. We are just programming the way we always have. And we are finding some of this stuff out for the first time. And not just with Mach 4. I installed Mach 3 on a new computer that runs an Ethernet Galil. Imagine my surprise when it would not run a smooth part that the old computer that it replaced had no problem with!!! The crappy little RealTek on-board Ethernet would not stream data to the Galil reliably! It had huge receive capabilities but chump for send. A whopping 64K TX buffers vs. the 2048 that the old computer with the on-board Intel Pro-100 Ethernet had. Was I pissed? Yes. But not at Mach 3. I was pissed that the new computer was not nearly as capable as the old one. Lesson learned. New means new. New does not mean good.
So "Modern" doesn't mean squat, IMHO. I bought a "modern" plastic float and valve assembly for one of my toilets they other day that is simply awful as compared to the brass one that was in it.
Like I said, most of these new consumer grade computers are designed for the average person that wants to get on-line, surf the internet, do the face book thing, maybe a few forums here and there, and do some email. And they do that well. Because it is their target market. We simply cannot help that they don't do Mach 3 and 4 well. We are not the ones putting the hardware in those computers. So please don't shoot the messenger.
Can you still buy a computer that works well? Yes. But you have to look for them. So now you have to look at the specs other than the processor. I bought a new notebook about a year ago. (It's not so new any more). I knew I was going to be doing some CAD work on it so I looked at the video chip sets that the various models came with. The base model T420 came with the Intel GMA4500 (popular because it is cheap). But for only $20.00 more, I could get that same model T420 with the ATI dedicated graphics chip set. I went with the the ATI and have been pleased.
What I find truly shameful is that it is just about impossible for a normal end user to buy something good without becoming an absolute computer nerd! I knew what to look for because I knew what to look for based on past experience. I used to be a corporate IT manager in a past life. It was my business to look at these things and make sure that I didn't end up purchasing 300 plus computers that would not get the job done. But even I was caught with the crappy Ethernet on my machine with the Galil. It won't happen a second time though.
Meanwhile, we will be working on ways to deal with the issues in software as well. If the computer says that it will do OpenGL 3.0 but does it poorly, we might have to put in a switch in the config somewhere that toggles the use of the newer OpenGL features off manually. We will do what we can.
Graham, try running on your old XP machine. And let me know what the results are. As for your current Mach 4 computer, I'm suspecting that the only way to resolve your issue is with that "manual" switch I was talking about.
Unless we can figure a way to get the video card manufacturer and switch it automatically. But the problem is more severe than that. Because SOME computers with GMA4500 chip sets work ok. I think it has to do with how they are implemented on the hardware.
Steve