I’ve been playing the long-awaited StarCraft 2 (Beta) recently and it doesn’t disappoint. I am running Windows 7 (64 bit) with an ATI Radeon HD 3400 video card. I ran into some complications while playing the game. Specifically, it would freeze in-game for a while and sometimes long enough for me to be dropped from the game.
At first I though it was my internet connection which was causing the lag. After some investigation, it turns out it wasn’t the internet connection (the game was also freezing during replays as well).
The Video Card?
Next I suspected the video card was over heating. I ran a temperature monitor with a CPU monitor while playing the game. It seems that under normal game play, the temperature was around 70 C. Once the game froze, the GPU temperature dropped and the CPU usage spiked to 100%.
After digging around a little bit, I came across a few threads on people having the same problem. They seemed to have fixed this problem by running the game on a single CPU core instead of the default multi-core setup. Specifically CPU 1 seems to be the magic core. I tried that but with no success. It was time to dig a little deeper.
The problem lies with Physx. StarCraft 2 comes with a version of Physx but with certain drivers, the latest version is required to run the game smoothly. Physx basically allows the game physics to be CPU powered rather than being powered by the graphics card. it is also referred by some as Software Physics. Make sure you have the latest version of Physx installed. it is required regardless of whether the you have an ATI or nVidia card. This should do it!
If you are still having this problem, add -skipopenal -nocpubinding to the Target field of the StarCraft 2 shortcut and try again.
UPDATE: I have posted another possible fix here.