General FreeSpace > FreeSpace Discussion

Freespace 1 on Windows10

(1/2) > >>

Col. Fishguts:
This is something I randomly noticed recently. While I had a FS1 installation present on my Win10 machine for a long time, it never worked without issues.

Since Windows Vista, compatibility with games that use a paletted 256 color mode is wonky, with Windows not letting the game fully control the color palette. With the wrong color palette in use, games are rendered with random colors all over the place.
There were ways around that by reverting to an older ddraw.dll versions, but since Win10 I never got it working without issues. At best the main hall was rendering correctly, but mission backgrounds still had corrupted color palettes.
But something in the latest Win10 update 22H2 seems to have been fixed in that regard.

So by doing these steps:

- Install FS1 normally from CD
- Set compatibility mode to "Windows 98 / Windows Me" for FreeSpace.exe and FS.exe
- Drop a ddraw.dll replacement in the FS1 installation folded, I use the "DDrawCompat" DLL wrapper from here: https://github.com/narzoul/DDrawCompat

I got FS1 working fine in software mode:



So I did something I have actually never done before: Play through the FS1 campaign in software mode.
Back in 1998 I played FS1 in software mode for maybe 5 minutes in total. My PC was a Pentium133, which managed a playable framerate in software mode with 1 or 2 ships on screen. Any combat or capital ships would tank performance to single-digit framerate.
But I also had a Voodoo card, which managed smooth framerates with all graphics settings on max, so I never went back to software mode.

So here are some notes/impressions on FS1 in software mode:

- You get glowing light/windows like on Glide mode:



- Crispy pixels with nearest-neighbour filtering. This is a matter of taste. I definitely preferred the bilinear-filtered look back then, but I've since come to appreciate the look of software renderers (and the effort that went into them) more.



- You get to see all textures in their original resolution (texture size limitations don't apply when your texture doesm't need to be loaded to VRAM). This is mostly noticeable on the cruisers and freighters (which are fully UV mapped with hires textures), and of course the Lucifer which uses a 1452x1024 main texture.



- Transparency is not using alpha blending, but some kind of additive blending mode, where the brighter pixel wins. This is definitely a downgrade over proper alpha-blending like in Glide and D3D, with the final subspace mission being the most glaring example.



The main benefit of software mode is that you get the hires textures working at the same time as the glowing windows.
With D3D you can enable hires textures (by setting the correct registry keys), but you get no glowing lights.
With Glide you get glowing lights, but all textures are resized to maximum 256x256 when they are loaded to VRAM, which results in blurry ships that use UV mapped textures.

Some quirks/bug I noticed, which are probably due to too-high CPU speed, messing up some time-based calculations?:
- Weapon energy is consumed at a lower rate than normal. I only noticed this when I used a Herc with an all-Banhsee loadout, which never dropped below 90% energy while constantly firing.

- Aspect-seeking missiles seem to be worse than normal at tracking/leading their targets, with Interceptor/Phoenix missiles struggling to hit anything unless from straight front/back.

- Capital ships struggle to recognize when they have reached their last waypoint, sometimes they tend to just spin around in place instead of departing. It doesn't always happen, so in the few cases where it blocks mission progress, restarting the mission was enough to get through.
But it led to a canon-defying situation where in "The Great Hunt" the Lucifer casually spun around and nuked the Bastion with its flux cannons.... woops:

Goober5000:
Wow, this is fascinating.  Excellent research. :yes:

Grizzly:
Have you tried using NGlide to make it work in glide mode as well? I tend to have more success with running games that offer multiple graphics modes (ie D3D, software and glide, like FS1 does) through the nglide wrapper.

Also, well done! I wasn't actually aware until very recently that vanilla FS ships had (the equivalent of) glowmaps.

Colonol Dekker:
I played FS1 in software the while way through when I bought it.  My voodoo 3 allowed me to enjoy FS2.

Col. Fishguts:

--- Quote from: Grizzly on May 08, 2023, 03:05:52 am ---Have you tried using NGlide to make it work in glide mode as well? I tend to have more success with running games that offer multiple graphics modes (ie D3D, software and glide, like FS1 does) through the nglide wrapper.

--- End quote ---

I was already toying around with dgvoodoo as as Glide wrapper.
For reference: It works without too much fiddling, the only setting I needed to change was enabling the "Force emulating true PCI access" setting, otherwise mouse input in the mainhall was very laggy.


When forcing higher resolutions, there some some artifacts around text elements, not so bad in 1024x768:


But it gets worse at 1920x1440 (save images to see them in full resolution)



Also, there is some noticeable stuttering every time a new animation (e.g. HUD message or effects) is played.
So overall not very enjoyable, but interesting to see how it might have looked like if the engine wasn't locked to 640x480.

I will try nglide as well, to see if it works better/worse.

Navigation

[0] Message Index

[#] Next page

Go to full version