dawdolman wrote:
I'm working on a different less aggressive way to try to erase the background, no promises though.
OK I've finished baking it, and it's done ready for more Beta testing. I was not sure this was going to work at all, but it looks promising so far. Anyway for those that don't want to know any more and give it a try; here are the links.
Download Link:
http://www.dawdolman.com/LinkClick.aspx ... d&tabid=64
Installation Instructions:
http://www.dawdolman.com/GamesDev/TrueSpace761.aspx
If you are interested to know how it works, I'll start at the beginning with the problem in TS and explain the solution (keeping away from code talk as much as possible)
As far as I can tell the bug is in TrusSpace 7.61 in its handler for messages telling it to erase the background of the LE Window(s), for example when a object on the LE window is moved, the area where it used to be needs to be erased. We can only guess at what in the TrueSpace source code is causing this problem, and to fix it we really need the original source code, or MS to create an update for TrueSpace.
How does the above work then? The TrueSpace SDK does not provide the functionality needed to implement a fix without re-writing the LE from scratch (as far as I could tell....the documentation is not complete, but it's better than nothing so I'm not complaining about it). So the best way I could find was intercept the Window API message telling the LE link editor to erase it's background, and drawing a white square on the LE Editor to manually erase it upon the interception of each erase message.
To do this the plugin is split into two parts, the rsx, and a second dll that gets stuck in your system32 directory. All the plugin does is load and sit there waiting to see a LE window, as soon as it spots one, it installs the dll's hook function and tells it about the window type is needs to look out for to catch the erase background message that need a little "extra" processing. After which point any erase background messages to any LE window will result in the background being re-drawn with a solid background before any further drawing takes place on it.
....simple! sort of.....
It's not finished yet! Post back all the problems you have with this latest copy..., it maybe only works on my computer

.....
Best Regards,
David
PS

I would like to say thanks to everyone that has welcomed me to the TS community and helped with beta testing my fix. I would be upset if TS disappeared one day, hence I'm happy to do what I can to keep it alive.