Anachronox Texture Issues
- microdee
- Topic Author
Less
More
5 years 2 months ago - 5 years 2 months ago #1
by microdee
Anachronox Texture Issues was created by microdee
Hi! There's this odd game by Ion Storm between Deus Ex and Daikatana called Anachronox (2001) which is amazing. Unfortunately ReShade messes up its textures like this:
(it's not my screen capture)
If you use effects with multiple passes and their own textures loaded from files, it'll become worse. It uses a modified Id Tech 2 / Quake 2 engine unfortunately I don't know if that "modified" part also includes how textures are handled in the game. I have a theory why this might happen, unfortunately though it would require 1337 disassembly/hooking skills to check it or even circumvent this which I don't really have:
So the game might have a limited pool for texture pointers and for some reason ReShade sometimes writes into that. This is more visible when you use effects with multiple passes or effects loading their own textures from file. If you reload reshade its textures are also destroyed and that'll leave an invalid texture for the game. Fortunately Anachronox seems to be pretty fault tolerant with this and instead of crashing, it will render a solid color (either black or white).
Anachronox also can mess with the texture pointers of ReShade when it loads a new texture. When this happens one of the effect passes is replaced with a game texture which appears full screen. Reloading ReShade makes it go away but it will of course mess with the original place of that texture.
To fix it one needs to see how Anachronox allocates textures and why ReShade can interfere with that. It would be also interesting to see that Quake 2 and games based on that engine reproduce this issue or if it's something only Anachronox specific.
If anybody has more insights about this maybe they can help out.
Cheers!
(it's not my screen capture)
If you use effects with multiple passes and their own textures loaded from files, it'll become worse. It uses a modified Id Tech 2 / Quake 2 engine unfortunately I don't know if that "modified" part also includes how textures are handled in the game. I have a theory why this might happen, unfortunately though it would require 1337 disassembly/hooking skills to check it or even circumvent this which I don't really have:
So the game might have a limited pool for texture pointers and for some reason ReShade sometimes writes into that. This is more visible when you use effects with multiple passes or effects loading their own textures from file. If you reload reshade its textures are also destroyed and that'll leave an invalid texture for the game. Fortunately Anachronox seems to be pretty fault tolerant with this and instead of crashing, it will render a solid color (either black or white).
Anachronox also can mess with the texture pointers of ReShade when it loads a new texture. When this happens one of the effect passes is replaced with a game texture which appears full screen. Reloading ReShade makes it go away but it will of course mess with the original place of that texture.
To fix it one needs to see how Anachronox allocates textures and why ReShade can interfere with that. It would be also interesting to see that Quake 2 and games based on that engine reproduce this issue or if it's something only Anachronox specific.
If anybody has more insights about this maybe they can help out.
Cheers!
Last edit: 5 years 2 months ago by microdee.
The following user(s) said Thank You: Radio28
Please Log in or Create an account to join the conversation.
- crosire
Less
More
Latest ReShade version? Wrapper like in-between d3d8to9?
Please Log in or Create an account to join the conversation.
- microdee
- Topic Author
Less
More
5 years 2 months ago - 5 years 2 months ago #3
by microdee
Replied by microdee on topic Anachronox Texture Issues
yup, latest version 4.1.1, no in-between wrapper because the game runs on OpenGL. This problem is also present in reshade 3.x.
Last edit: 5 years 2 months ago by microdee.
Please Log in or Create an account to join the conversation.
- Radio28
Less
More
Heres a few screenshot examples of what occurs with ReShade on:
imgur.com/PKmEdbW
imgur.com/ydHzYi0
imgur.com/JGIwqIs
Sometimes an NPC's, main character, hud element or any texture really can be messed up or replaced by another.
In the 3rd pic, the wall has been replaced by the skybox texture! I've never seen such a weird texture issue
imgur.com/PKmEdbW
imgur.com/ydHzYi0
imgur.com/JGIwqIs
Sometimes an NPC's, main character, hud element or any texture really can be messed up or replaced by another.
In the 3rd pic, the wall has been replaced by the skybox texture! I've never seen such a weird texture issue
Please Log in or Create an account to join the conversation.
- microdee
- Topic Author
Less
More
that's not the sky texture, that's the dirt texture used for bloom and ambient lighting in reshade
Please Log in or Create an account to join the conversation.
- Radio28
Less
More
Did you ever make any progress with this Microdee? I've been trying things now and then such as using reshade ontop a glide wrapper but no joy so far. Really keen to get Anachronox sorted with this as it looks awesome with reshade but the odd texture not displaying ruins it
Please Log in or Create an account to join the conversation.
- crosire
Less
More
Sounds like it could be the same issue as
reshade.me/forum/troubleshooting/5336-ho...ocity-x-issues#33628
Please Log in or Create an account to join the conversation.
- Radio28
Less
More
Thanks for the reply crosire,
I've tried your workaround from the hotwheels game and now far less textures appear to be missing, just one or two random ones during each load up:
imgur.com/8HDyNcz
Would inreasing the number from "ReserveTextureNames=510" from 510 to any higher number help? I don't know how to find the number of textures loaded in
I've tried your workaround from the hotwheels game and now far less textures appear to be missing, just one or two random ones during each load up:
imgur.com/8HDyNcz
Would inreasing the number from "ReserveTextureNames=510" from 510 to any higher number help? I don't know how to find the number of textures loaded in
Please Log in or Create an account to join the conversation.
- crosire
Less
More
Yeah, try that. I found the 510 number for the other game by logging "glDeleteTextures" calls and then just counting how many of those were called in a batch (510). This game may do it differently, so easiest thing would be to just experiment with different values.
Please Log in or Create an account to join the conversation.
- microdee
- Topic Author
Less
More
is there an upper limit? I used both 1024 and 256 but the issue didn't go away
Please Log in or Create an account to join the conversation.