Bug with 469d & XOpenGL

Discussions about UT99
Hbgr
Novice
Posts: 8
Joined: Thu Oct 19, 2023 2:44 am

Bug with 469d & XOpenGL

Post by Hbgr »

Not creating an account at github just to report a bug, so i figured this is a good a place as any to report a problem im having with the preview of 469d when using the XOpenGL driver it came with.

First of all, this is the first time I've upgraded my UT99 game since version 432 and I only did it because of the promise of the new UnrealEd 2.2, which works beautifully, even though it still has a couple of bugs. I am also enamored with the new audio capabilities that came with openAL. :rock:

When i first ran 469d with the heralded XOpenGL.dll (im running on a Windows 7 64-bit quad-core i7 with 8GB RAM, and openGL 6.1.7601), i just went with the default settings for XOpenGL and was pleasantly surprised at the difference in-game. The 3d video was definitely better, but i experienced reduced framerate during gameplay, which i never had with software rendering and wasnt going to tolerate. So i tweaked the settings for XOpenGL and played it and it was fine.

The problem didnt start until after the first run with XOpenGL. When i went back into it later, and every time after, i got this error message from Windows:
XopenGL error.png
I ended up having to go back to software rendering for a few runs, until i had a problem with UnrealEd.
While working with UnrealEd, i think it ran out of memory or something, bc it wrote OVER my unrealtournament.ini file with everything it was trying to save, deleting all other game categories. On a hunch, i pulled the ini out of the (UT99) system folder, and started UT99 game again. As i thought, the game created a new unrealtournament.ini file, and allowed me to actually use XOpenGL again, which looked like the first time i ran it!
But on the SECOND run, i got the same error! Restarting didnt help, checking the log didnt help, then i tried a new approach:
I renamed the ini file, ran UT99 again, then duplicated the ini file it created (without quitting), then played a game, then quit UT99.
I then compared the newly generated ini file with the CLOSED ini file and found the differences. To test to see if the corruption was happening at the ini save part of UT99's exit routine, i checked the differing lines and voila! I found the problem!

The very first line in the [XOpenGLDrv.XOpenGLRenderDevice] category is:
UseBindlessTextures=True
and this is generated every FIRST run. But when 469d exits, it saves this entry as FALSE, even though it may be set as True in the in-game preferences window. This ends up corrupting the file and every following game start, you get that error message. If you manually change it to True, the game runs fine. :ironic2:
You do not have the required permissions to view the files attached to this post.
User avatar
Berserker
Experienced
Posts: 121
Joined: Fri Sep 27, 2019 5:08 pm

Re: Bug with 469d & XOpenGL

Post by Berserker »

Do you remember the last thing you did while working with UnrealEd, before your UnrealTournament.ini got corrupted? Did your UnrealTournament.ini corrupt after a crash?
Visit us on Discord:
https://discord.gg/fcRakgNCjR Image
Hbgr
Novice
Posts: 8
Joined: Thu Oct 19, 2023 2:44 am

Re: Bug with 469d & XOpenGL

Post by Hbgr »

No, UnrealEd wasnt the problem. Well, it has its own problem— the writing over of the ini file instead of writing into the file after its been open a long time.

The problem only happens when playing UT99 469d with XOpenGL. It is miswriting the UseBindlessTextures value.

I just keep a clean backup copy of the ini, and replace it after playing the game.