First of all, the change log:
+ FIX: Added code for the super hiver to adjust the costs of factories in the queue when they take over another colony to fix the bug where factories on worlds the hivers took over seemed to be stuck at zero turns.
+ FIX: Fixed a lockup on Trade screen when you have a huge amount of money in the treasury and you try to offer money.
+ FIX: Fixed lockup on Governor screen when you click on the Starship rallypoint governor
+ FIX: Found a solution for the graphical glitches on AMD machines. For those of you who are interested, it was a bug in a particular function in the version of the DirectX SDK that we're using. So CodeCritter made his own version of the function.
+ FIX: Optimized new batch renderer so that ship instances of the same type will share the same vertex and index buffers. This will save memory over the previous implementation where each instance had its own vert and index buffers. This should also fix the where ship parts sometimes would not show textures in the designer.
+ TWEAK: The display of stars on the minimaps should now be more visible on large and gigantic galaxies.
+ TWEAK: Made a slight change to the code that starts the AI threads which may help with the AI seeming to get a free turn at the start of a new game or when loading a save game but as I didn't have time to fully investigate the bug, this may only address part of the problem.
People were still reporting out of memory errors with the test builds so we're still looking to see if we can figure out what might be sticking around in memory when it should be deleted. In the meantime, here are some ways to save memory in DA:
1) Make sure that your virtual memory is set to at least 2 GB. More than that probably won't help because Windows will cut GalCiv2 off after 2 GB if it's not 64 bit.
2) Turn off background stars and nebulas.
3) Change from scattered star density to tight clusters.
4) Reduce the number of stars, planets, and the availablility of habitable planets
5) Play on galaxies galaxies no bigger than large.
6) Turn off mods.
To increase the amount of Virtual Memory available to Windows:
1) Right click on the My Computer icon and chose properties
2) Click on the advanced tab
3) Under performance, click on the Settings button.
4) Click on the advanced tab
5) Click on the change button
6) Change the initial size to the recommended size and then increase the maximum size.
Update 5/29/07:
The following link is an update to 1.6 beta 5 which includes a fix for a crash following an Alt-Tab, a fix to remove AI ship designs from the graphics cache when they are no longer being used, and a fix that we hope will help the people getting the slowdown running in sw vp mode:
http://sd.stardock.com/carielf/da_1_6_b5d.zip
It appears that those of you with the slowdown when ships are on screen may be caused because your cards are running in what is called software vertex processing mode, which means that DirectX is having to emulate functionality that the driver should be handling, but is not.
CodeCritter made some adjustments to the vertex buffers for if the game is running in sw vp mode that should help if you are stuck in software vp mode. I am attempting to change the Direct3D initialization so that the game can start in mixed vp (where it uses hardware when it can, software where it can't) but it's not working for some older cards.
This link is the same as the above link except that it includes code to allow older cards to run in mixed vp mode, which may help with this error without needing to use the workaround below:
http://sd.stardock.com/carielf/da_1_6_b5e.zip
I was able to get it to work on a test box with an NVidia GeForce 5200 FX which is one of the problem cards, and I was getting 20 fps which isn't great, but a lot better than 2 fps.
If this build does not help, here is a workaround:
Try this to force it to use hw vp mode:
1) Create a shortcut that points directly to GC2DarkAvatar.exe. (Right click on the exe and choose send to desktop as shortcut)
2) Right click on the shortcut and choose properties.
3) Left click in the Target field and hit the END key on your keyboard so that the cursor is at the end of the field. Hit space. Type the word HARDWAREVP then hit OK.
Start the game and then see if it says something like this in your debug.err (with your own video card there):
Debug Message: HAL (hw vp): NVIDIA GeForce FX 5200
If Dark Avatar crashes when you try this, you could try the command line parameter MIXEDVP and see if that works for you. If neither works, just delete the shortcut.
If you are forcing hardware vp, you should also disable the background stars and point sprites on the video tab so that it won't try to create graphics for the things that it can't draw in this mode. You may notice other missing graphics. This is really just a temporary workaround until we can figure out a better way to deal with it, and this won't work for everyone.
And if anyone is wondering, yes, there is a SOFTWAREVP command line parameter too.
I created these three command line parameters when I was testing the Direct3D initialization code.