z929669 Posted April 25, 2012 Share Posted April 25, 2012 Discussion thread:DDSopt Guide by STEPWiki Link GET DDSopt:Github Pre-release versionsOfficial Nexus versions (select pre-release update 4) Link to comment Share on other sites More sharing options...
0 Prophes0r Posted December 31, 2012 Share Posted December 31, 2012 Looks like the Wiki got an update. The Link for Compressionator is currently broken, so i hunted down the new page for it. Till The wiki gets opened to Step users I'll just post the fixes here. Correct Link for Compressionator: https://developer.amd.com/resources/archive/archived-tools/gpu-tools-archive/the-compressonator/ Link to comment Share on other sites More sharing options...
0 Prophes0r Posted December 31, 2012 Share Posted December 31, 2012 @Ethatron I realize this is a somewhat low priority change, but could we possibly get the ability to change the default settings of DDSopt? Preferably with the option to change between presets via a drop-down, or a sub menu? At the moment I'm resorting to keeping the forums window up on a second machine and keeping a few instances of DDSopt running so I don't loose the settings I like (and will never remember). Link to comment Share on other sites More sharing options...
0 haelfix Posted December 31, 2012 Share Posted December 31, 2012 I'm seeing some visual glitches with the vanilla optimized textures. Smoke appears distorted and npc's suffer white pixelated blotches, particularly along the face. This occurs when ONLY the vanilla optimized textures are installed (as a compressed archive within Wrye Bash); no other textures are present, not even the optimized DLC packs. I extracted, then optimized the bsa's (with the HD fixes) as per the instructions in this thread (and as general guidelines, the wiki) with 8.0 of DDSopt using the settings suggested in the earlier post linked to from the original post. I can only assume i've made a mistake. Or is this process somehow currently obsolete? I will upload some screenshots if this doesn't stand out as an obvious mistake on my part. Also, I realize the step guide for DDSopt is in need of an update, but I doubt the guides are at fault for my texture distortions.Hmm, well I had a similar issue. Â There is something going on with smoke textures and DDSopt but I left for xmas vacation before I could test it more thoroughly (curently without computer for another week or so) although I only saw it when I had RCRN active. eg: Some pixelation and compression artifacts using the current settings posted in this thread. Â Anyway, its likely a user error, but I was wondering a bit about whether it might be a version difference as well. Link to comment Share on other sites More sharing options...
0 z929669 Posted December 31, 2012 Author Share Posted December 31, 2012 @EthatronI realize this is a somewhat low priority change, but could we possibly get the ability to change the default settings of DDSopt? Preferably with the option to change between presets via a drop-down, or a sub menu? At the moment I'm resorting to keeping the forums window up on a second machine and keeping a few instances of DDSopt running so I don't loose the settings I like (and will never remember).DDSopt remembers the settings used from the previous instance; however, I think that you are asking if settings can be saved into custom "profiles"? Maybe so that you can save the settings you used for a particular run under a particular profile name? Link to comment Share on other sites More sharing options...
0 Herrdoctor Posted December 31, 2012 Share Posted December 31, 2012 It's a beta' date=' there can always be a bug (regardless the state anyway :^), if you can find the white pixelated blotches with the preview-tab I can see if I can reproduce it.[/quote']Sorry, I didn't really give you much information there. This is 00013255.dds before and after optimization using max compression (textures\actors\character\facegendata\facetint\skyrim.esm\)Â They seem to be compression artifacts. Around half of the character .dds appear this way. I was aware that problems may appear with the body textures, so no surprise there. However, landscape and sky textures also suffer from this. A few examples (I found these in-game); Â Again, no other modifications are installed; it's a fresh skyrim install. The original settings used, in post #430 of this same thread by z929669: https://forum.step-project.com/showthread.php?tid=228&pid=15687#pid15687 I'm still hesitant to blame the beta, but I get the same results when using different compression settings. I'm still playing with different settings, and i'll amend this post if I find a solution, and forward more questions if I have them to z929669. Thanks for the program, guides, and help. Link to comment Share on other sites More sharing options...
0 z929669 Posted December 31, 2012 Author Share Posted December 31, 2012 @EthatronMany compressed rectangular textures (e.g., 2048x1024) have bottom mipmaps of 1x1 where we expect to see a minimum of 2x1. When such textures are processed by DDSopt, sure enough, the lowest 1x1 mip is dropped. DDSopt now also has a setting to prevent this behavior.Q1: Do these lower 1x1 mips play any role on what we see in game, and if not, why is there a DDSopt setting to retain them? Link to comment Share on other sites More sharing options...
0 Prophes0r Posted December 31, 2012 Share Posted December 31, 2012 No z DDSopt does not save my settings at all. Every time I close it it opens with the default settings. These settings Seem to be hard coded, because I can't find any registry settings for DDSopt, nor are there any places in the INI that can change them. Link to comment Share on other sites More sharing options...
0 Neovalen Posted December 31, 2012 Share Posted December 31, 2012 No z DDSopt does not save my settings at all. Every time I close it it opens with the default settings. These settings Seem to be hard coded' date=' because I can't find any registry settings for DDSopt, nor are there any places in the INI that can change them.[/quote']Run DDSOpt as an administrator and it will remember your settings. Link to comment Share on other sites More sharing options...
0 z929669 Posted December 31, 2012 Author Share Posted December 31, 2012 No z DDSopt does not save my settings at all. Every time I close it it opens with the default settings. These settings Seem to be hard coded' date=' because I can't find any registry settings for DDSopt, nor are there any places in the INI that can change them.[/quote']Wierd. I placed all of my DDSopt downloaded files into a directory and set up a shortcut to the 64-bit exe that I run from my desktop. All of my settings stick from session to session. Are you running the exe as a stand alone? Is the ini along side the exe? Are you using the Nexus version?EDIT: Link to comment Share on other sites More sharing options...
0 Ethatron Posted December 31, 2012 Share Posted December 31, 2012 @EthatronI realize this is a somewhat low priority change' date=' but could we possibly get the ability to change the default settings of DDSopt? Preferably with the option to change between presets via a drop-down, or a sub menu? At the moment I'm resorting to keeping the forums window up on a second machine and keeping a few instances of DDSopt running so I don't loose the settings I like (and will never remember).[/quote']It should store settings to this: "HKEY_LOCAL_MACHINE, "Software\\Bethesda Softworks\\DDSopt", if not then you use a nasty Anti-Virus which blocks it? Can't imagine anything else which could prevent registry-writes, not even UAC prevents it I think.DDSopt remembers the settings used from the previous instance; however' date=' I think that you are asking if settings can be saved into custom "profiles"? Maybe so that you can save the settings you used for a particular run under a particular profile name?[/quote']Uh, five billion years ago I had profile-support in an ini for NIFopt. Maybe it makes a revival once the command-line mode is implemented fully again.It's a beta' date=' there can always be a bug (regardless the state anyway :^)' date=' if you can find the white pixelated blotches with the preview-tab I can see if I can reproduce it.[/quote'']Sorry, I didn't really give you much information there. This is 00013255.dds before and after optimization using max compression (textures\actors\character\facegendata\facetint\skyrim.esm\) [...] I'm still hesitant to blame the beta, but I get the same results when using different compression settings. I'm still playing with different settings, and i'll amend this post if I find a solution, and forward more questions if I have them to z929669. Thanks for the program, guides, and help.Don't hesitate to blame the beta (which is even a beta preview LOL). That of course was a fat bug in the single-colour matcher. Meanwhile I also found another bug, coding DXT3s into DXT5-surfaces when the source was uncompressed. Both just stupid "hurry, hurry, publish it"-errors (means a "+" was a "|" and stuff with that level of complexity). Ah well, I reworked the whole core in a week or so, can happen.Fixed version uploaded on the Nexus. Link to comment Share on other sites More sharing options...
0 Ethatron Posted December 31, 2012 Share Posted December 31, 2012 @EthatronMany compressed rectangular textures (e.g., 2048x1024) have bottom mipmaps of 1x1 where we expect to see a minimum of 2x1. When such textures are processed by DDSopt, sure enough, the lowest 1x1 mip is dropped. DDSopt now also has a setting to prevent this behavior.Q1: Do these lower 1x1 mips play any role on what we see in game, and if not, why is there a DDSopt setting to retain them? A1: Well, lower mip-levels are selected by the filtering-hardware on your graphics-card, when surface angles are very steep, or when the total scale of the texture becomes smaller. Just think about when it happens for 1x1: you got some object on screen which is so tiny that the entire texture is displayed at less than 1 pixel screen-space! If you have tri-linear filtering enabled, sadly this happens already when the smaller extent (x or y) hits 1 px (width or height), with anisotropic filtering this basically only happens when the entire texture-size falls below 1 px² area. Now it is not obviously clear to me if Skyrim would even display any objects below 1 px size. The probability of it to happen appears rather low.Anyway, if the situation occurs then the graphics-card hammers only on a single texel, but (!) compressed textures have a minimum block-size of 4x4, damn. Regardless that only one texel is requested, 16 are decompressed - well, not really, but the memory of the block is read completely, no memory-system reads bits from the chips, mostly entire 64bit lines as smallest unit. Performance-wise there is very little difference if you tri-linearly filter 1 texel or 4, as the bottle-neck is the memory-latency, and the block is already in on-chip cache - you probably even pay a penalty for having 3 full blocks for the lowest mips (1x1 expanded to 4x4, 2x2 expended to 4x4 and then 4x4), as you hit the memory thrice (800 clocks + 800 clocks + 800 clocks) and you clutter the cache a bit with it.That's why I just prefer to throw all mips below 4x4 blocksize out. Link to comment Share on other sites More sharing options...
0 stoppingby4now Posted December 31, 2012 Share Posted December 31, 2012 @EthatronI realize this is a somewhat low priority change, but could we possibly get the ability to change the default settings of DDSopt? Preferably with the option to change between presets via a drop-down, or a sub menu? At the moment I'm resorting to keeping the forums window up on a second machine and keeping a few instances of DDSopt running so I don't loose the settings I like (and will never remember).It should store settings to this: "HKEY_LOCAL_MACHINE, "Software\\Bethesda Softworks\\DDSopt", if not then you use a nasty Anti-Virus which blocks it? Can't imagine anything else which could prevent registry-writes, not even UAC prevents it I think. HKEY_LOCAL_MACHINE is a protected area of the registry, so you need Administrator rights to write to it. Anyone with UAC turned off will have no problem, but if UAC is turned on it will not be able to write. I have UAC turned on and DDSOpt wasn't remembering my settings either until I ran as Administrator. An alternative would be to store the settings in HKEY_CURRENT_USER (maybe HCU\Software\DDSOpt). Link to comment Share on other sites More sharing options...
0 z929669 Posted December 31, 2012 Author Share Posted December 31, 2012 @Ethatron / stoppingby4now Thanks for the feedback ... very helpful. @Herrdoctor Thanks for submitting this level of detail ... very helpful I'm sure to Ethatron (and all) Link to comment Share on other sites More sharing options...
0 z929669 Posted December 31, 2012 Author Share Posted December 31, 2012 @EthatronMany compressed rectangular textures (e.g., 2048x1024) have bottom mipmaps of 1x1 where we expect to see a minimum of 2x1. When such textures are processed by DDSopt, sure enough, the lowest 1x1 mip is dropped. DDSopt now also has a setting to prevent this behavior.Q1: Do these lower 1x1 mips play any role on what we see in game, and if not, why is there a DDSopt setting to retain them? A1: Well, lower mip-levels are selected by the filtering-hardware on your graphics-card, when surface angles are very steep, or when the total scale of the texture becomes smaller. Just think about when it happens for 1x1: you got some object on screen which is so tiny that the entire texture is displayed at less than 1 pixel screen-space! If you have tri-linear filtering enabled, sadly this happens already when the smaller extent (x or y) hits 1 px (width or height), with anisotropic filtering this basically only happens when the entire texture-size falls below 1 px² area. Now it is not obviously clear to me if Skyrim would even display any objects below 1 px size. The probability of it to happen appears rather low.Anyway, if the situation occurs then the graphics-card hammers only on a single texel, but (!) compressed textures have a minimum block-size of 4x4, damn. Regardless that only one texel is requested, 16 are decompressed - well, not really, but the memory of the block is read completely, no memory-system reads bits from the chips, mostly entire 64bit lines as smallest unit. Performance-wise there is very little difference if you tri-linearly filter 1 texel or 4, as the bottle-neck is the memory-latency, and the block is already in on-chip cache - you probably even pay a penalty for having 3 full blocks for the lowest mips (1x1 expanded to 4x4, 2x2 expended to 4x4 and then 4x4), as you hit the memory thrice (800 clocks + 800 clocks + 800 clocks) and you clutter the cache a bit with it.That's why I just prefer to throw all mips below 4x4 blocksize out.It sounds like you are suggesting that these very small mip-levels (below 4x4) do not supply any significant quality information to the rendered image in-game and that eliminating these 3 lower levels will provide some measure of performance gain with no perceptible cost of quality. If so ...Q1.1: Why does DDSopt only strip the one (1x1 only) and not the three lower mip-levels from the compressed output? Link to comment Share on other sites More sharing options...
0 Neovalen Posted December 31, 2012 Share Posted December 31, 2012 Has anyone tried DDSOpting the textures from Dawnguard or Hearthfire yet? I'm thinking of trying it now with the latest version. Link to comment Share on other sites More sharing options...
Question
z929669
Discussion thread:
DDSopt Guide by STEP
Wiki Link
GET DDSopt:
Github Pre-release versions
Official Nexus versions (select pre-release update 4)
Link to comment
Share on other sites
Top Posters For This Question
360
353
51
51
Popular Days
May 7
26
Jan 31
26
Jan 22
23
Mar 22
21
Top Posters For This Question
Kelmych 360 posts
z929669 353 posts
Ethatron 51 posts
phazer11 51 posts
Popular Days
May 7 2012
26 posts
Jan 31 2013
26 posts
Jan 22 2013
23 posts
Mar 22 2013
21 posts
1,702 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now