3.0
- NotSoSweet
I found some useful info in the "ReShade 3.0 guide for newcomers" by Marty McFly, but i still do not understand one thing.
Here is a quote:
Shader compilation will take some time, same goes for every time you force recompile by alt-tabbing or restarting game. You can cut that short with 2 ways: delete all shaders you know you will never use (move them into a subfolder for example) or once you are satisfied with your config and don't want to edit it now, enable "Performance Mode" in Settings tab. This will render all config variables static (=not editable in config) but speed up the compilation a LOT.
But even in "Performance Mode" it still slowly loads (pre-loads?) all these Shaders exactly like in "Configuration mode", even if they are not used in my config!
So... did i miss something or "Performance Mode" does not improve loading time at all?
- JBeckman
The quote you posted seem to be from this guide.
reshade.me/forum/general-discussion/2501...-guide-for-newcomers
I don't use a lot of shaders myself but compilation time (As ReShade is loading and initializing the shader or shaders during the game start sequence.) isn't really affected much at all whether this setting is enabled or disabled though it doesn't seem to lock any values either as I can still adjust them via the in-game GUI when performance mode is enabled, along with toggling the effect on and off but that's probably separate.
From a guess if you use a lot of more complex shaders this would have a more substantial improvement on that initial loading time.
And any following times it has to re-compile the shader info too I guess depending on for example if you use fullscreen mode and then alt-tab out for a bit resulting in it losing resources and ReShade then has to re-do this step when you alt-tab back.
(I prefer windowed or borderless mode when supported so it's not often I run in true / exclusive fullscreen mode.)
EDIT: And yeah I put all the other shaders I don't use in a subfolder to stop ReShade from loading them too, perhaps this behavior could be adjusted now that 3.0 is open source but I assume that even with the negative drawback of what would happen with a few dozen shaders all getting loaded slowly there's a reason why ReShade 3.x behaves like this instead of only loading the active ones.
EDIT: Ah this is unreadable, edited my post a bit so maybe it's better now.
- Sunesha
I think read somewhere that Origin overlay and Reshade didn't work together. Try to turn it off?DPA wrote: Hi, I'm new to reshade (have used it with great success on Rome 2\C&C1\C&C:TB) but cannot seem to get it working on Command & Conquer Generals on origin. I see it listed as perfectly compatible in the games list, can anyone confirm it is still so with 3.06? (I would like to know whether it's somehow my error or I should give up on this one)
Thanks!
- NotSoSweet
JBeckman wrote: EDIT: And yeah I put all the other shaders I don't use in a subfolder to stop ReShade from loading them too, perhaps this behavior could be adjusted now that 3.0 is open source but I assume that even with the negative drawback of what would happen with a few dozen shaders all getting loaded slowly there's a reason why ReShade 3.x behaves like this instead of only loading the active ones.
Yeah, maybe there is a reason for that ... but it's a weird behavior. After all, ReShade 3.0 generates a list of currently used shaders, saves it to a file, and still ignore this list and loads all unused shaders. Maybe it's just a bug?
- crosire
- Topic Author
- JBeckman
EDIT: I read up a bit more about it, looks like my initial post was a bit off on how I thought that all worked, most of the default ReShade shaders do only use a single technique but a few such as some of the DOF effects and one of the sharpen effects have a few different ones defining certain behaviors or well, techniques.
(The documentation in that reference.md file has been pretty helpful too.)
- Martigen
I know you've explained this before, but it doesn't have to stay that way. This is programming, we can do anything! And I genuinely believe this is an essential feature, especially as you begin to use Reshade across more and more games.crosire wrote: ReShade doesn't generate or save a list of used shaders, it saves a list of active techniques. A shader file can have multiple techniques and there is no way for ReShade to know which techniques it contains before compiling it. So ReShade HAS to compile ALL shaders, regardless of which techniques you have enabled or not.
What about Reshade storing the filename a technique belongs to, and add a new line in the ini listing this sequence of files (much like the techniques line). Then, if desired (using a 'Performance +' mode or similar I outlined here (<-link)), only those files are read at initialisation? Switching back to 'Performance' or 'Configuration' modes, it simply ignores this line (but preserves and updates it, if more shaders are later selected) and loads all shader files.
- crosire
- Topic Author
- NotSoSweet
crosire wrote: ReShade doesn't generate or save a list of used shaders, it saves a list of active techniques. A shader file can have multiple techniques and there is no way for ReShade to know which techniques it contains before compiling it. So ReShade HAS to compile ALL shaders, regardless of which techniques you have enabled or not.
Hehe, but there is a full list of them right at the HOME tab, for example:
shader_name_1.fx
[X] technique_name_1
shader_name_2.fx
[X] technique_name_2
shader_name_3.fx
[X] technique_name_3
etc
So it is not like ReShade does not know anything about technique/shader relations. I hope that you will improve loading stage at some day, at least in performance mode. It was really fast in old ReShade versions!
edit: Oh. I just realized that this list is obtained after compilation. Or am i wrong again?
- Martigen
Ah of course, understoodcrosire wrote: I was just explaining why it is as it is now and that there is a actual reason behind it and not some oversight of mine. Not saying it cannot be improved.
I imagine it is, but that's what you want the first time you add Reshade to a game and there's no ini yet. Then once you've selected some shaders, it can save the filenames associated with those shaders in the generated ini.NotSoSweet wrote: edit: Oh. I just realized that this list is obtained after compilation. Or am i wrong again?
- MonarchX
- v00d00m4n
Worst part - you made shortsighted bad decision to remove previous releases, instead of keeping them in case something screwed, so we officially stuck with broken version and need to wait for new version. Maybe its time to do what many devs do and organize archive with history of every release since day one?
Update:
Win 10 version 1607 Build 14393.693
Found bootleg re-uploads of 3.04 - it works fine with GTA V, Fallout 4 and other games.
Problem is caused by one of these updates:
3.0.5:
•Added thread synchronization to hook installation again, but only in safe places to avoid a deadlock as previously
•Fixed input capturing not working in some applications using multiple parent/child window relationships
•Fixed effect parser not issuing an error if a variable in a function body has the same name as one of the parameters
•Fixed crash if "Consolas" font is not found (now falls back to default)
•Fixed correct OpenGL clip mode not set when rendering UI
3.0.6: •Fixed bug causing some D3D9 games to hang
•Fixed technique/variable filter not being applied after reloading
•Fixed invalid character reported in log when encountering unsupported OpenGL layered context type
I bet on thread synchronization of to hook installation as problem seems to be related to hooking, that seems broken since 3.0.5
- JBeckman
DXGI.dll works here but I'm on 14393.697 or what it's called, IE the latest cumulative update from this month for the stable version of the OS.
(Watch_Dogs 2 is a bit crash prone though but I haven't determined if that's made worse with ReShade or if the game is just a bit of a mess on certain types of hardware after that first patch since it was stable on launch.)
Whereas if you are on the slow-ring or fast-ring you'd be on 14986 or 15014 which have some pretty extensive underlying changes which is why there's so many known issues with these latest builds and potential conflicts or problems with other software, it's going to take a few more builds for Microsoft to stabilize these latest changes.
- sneakypete
- Gade05
- kaicooper
i got 3.0.6 and download all shaders ..but its not full shaders like its in reshade 2..i mean where r the rest?
how to use them with reshade 3?
==========
is there anyway to play Freespae 2 with reshade ?
- Marty McFly
- v00d00m4n
This
ui_type = "color";
only allows positive values, but I use universal color shift formula
color.rgb+shift.rgb
and expected shift to be universal so that negative values would work like
color.rgb-shift.rgb
but reshade don't allow me to do that, so I need to do ugly hack , with ShiftPlus and ShiftMinus values, compare them and use extra if to select if I need to add or reduce, or do nothing if two conflicting values present.
Can we please unlock negative values for all ui types?
- v00d00m4n