Jump to content

[1.0][Release-5-0][April 28, 2015] Active Texture Management - Save RAM!


rbray89

Recommended Posts

Terribly sorry, I'm almost certain this has been asked, and I am entirely too inept it seems to find out how:

How do I disable the DXT feature? I don't like waiting an hour to play.

The whole idea is that for one small payment of an hour or so, you get several minutes off of each following load. A bonus, is that because they are being loaded as DXT, there are no memory leaks that normally show themselves when using Unity's texture loading. There is no way to disable DXT compression without disabling compression entirely, and believe me, unless you are running stock, you don't want to do that.

Watch a show, read a book, or browse reddit for a while as it loads :). As KSP consumes more, and more memory on each new version, we had to get creative to save memory. This is one of those ways.

Link to comment
Share on other sites

There are several versions of the same Active Texture Management release (32-bit aggressive, 32-bit basic, 64-bit aggressive, 64-bit basic). If I'm using Windows 7 x64 and plays KSP through KSP.exe (the 32-bit KSP executable), which version should I use?

Computer specs:

OS: Windows 7 x64 Home Premium

CPU: Intel Core i5-450m (2.4GHz)

GPU: Intel HD Graphics (2010 version) with Shader Model 4.0

RAM: 3886MB usable

Edited by Designer225
Link to comment
Share on other sites

Which is the right version to use?

There are several versions of the same Active Texture Management release (32-bit aggressive, 32-bit basic, 64-bit aggressive, 64-bit basic). If I'm using Windows 7 x64 and plays KSP through KSP.exe (the 32-bit KSP executable), which version should I use?

Computer specs:

OS: Windows 7 x64 Home Premium

CPU: Intel Core i5-450m (2.4GHz)

GPU: Intel HD Graphics (2010 version) with Shader Model 4.0

RAM: 3886MB usable

Link to comment
Share on other sites

The x86 and x64 is for the ksp version, not OS

@Designer225 - Use either the x86 basic or aggressive, I would recommend aggressive, as you only have 4 gb of memory, and windows and your graphics is going to using a sizable chunk of that.

@soifua and brooklyn666 - I don't believe OSX has a x64 version, so use either x86 basic or aggressive.

If your only using a couple part mods, you can get away with basic, otherwise, just go ahead and use aggressive.

Edited by Rebelgamer
Link to comment
Share on other sites

The whole idea is that for one small payment of an hour or so, you get several minutes off of each following load. A bonus, is that because they are being loaded as DXT, there are no memory leaks that normally show themselves when using Unity's texture loading. There is no way to disable DXT compression without disabling compression entirely, and believe me, unless you are running stock, you don't want to do that.

Watch a show, read a book, or browse reddit for a while as it loads :). As KSP consumes more, and more memory on each new version, we had to get creative to save memory. This is one of those ways.

Wait, what if I add ONE tiny mod? Will it have to recompile everything?

Link to comment
Share on other sites

I guess there is some way to add textures to a list of exclusions? Currently (just started a new game and am adding mods to it), the buttons for DistantObjectEnhancement (Blizzy's toolbar) and TextureReplacer (stock toolbar) are muddy as frack :D

Link to comment
Share on other sites

@thespeare : No, ATm is now caching his compressed stuff, so it is converting everything on first boot, super long, but then it saves the compressed and the scaled texture, so on the next boot, he's just loading the texture, cause they are already treated.

When you make modifications to your gamedata (adding a new mod), ATM will detect he doesn't have a cache for these new texture and he's gonna convert them and them only, no need to go throught the whole gamedata again. So you don't have to worry about this.

@Cy-one : Read the damn readme man, what you're looking for is super clearly explained in ActiveTextureManagementConfig, in your gamedata. The icons issue are classics, and it's really easy to write your own exclusions for them ! Nathen made a few one that you can download on the forum, but there's already LOTS of example in ATM configs.

Link to comment
Share on other sites

I am running 32-bit Windows 8.1, a terrible, terrible mistake I made accidentally during my computer building process; ordering Windows from a 32-bit machine...

I get the error "Fatal error in gc: too many heap sections." I have tried removing the NASAmission folder for the first load along with all mods, but it still "too many heap sections'd."

I think I'm running out of memory. It only happens with ATM on.

...

...this also happens with Goat Simulator. The struggle is real.

Link to comment
Share on other sites

Running WinXP 32bit 4GB memory and ATM crashes KSP 0.90. I've run it 10 times and it just crashes "Too many heap sections" when the loading bar displays "/etc/etc/etc/engine lvt-30".

* Happens with basic or aggressive (x86)

* No output logs (just system logs)

* No mods

* No other bloat processes running.

* Using an older video driver & Catalyst. Any newer driver disables my ability to use OpenCL (Due to XP) - required for my use.

* KSP 0.25 runs ok on low settings with 4 mods.

System Log (10 of these).


Faulting application ksp.exe, version 4.5.5.37569, faulting module ntdll.dll, version 5.1.2600.5512, fault address 0x0000120e.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

Will ATM work on this configuration (I have a feeling it wont)?

Edited by MGCJerry
Link to comment
Share on other sites

Hey, I'm trying to get ATM to stop murdering all my icons, but it's fighting me. I tried adding the following to the cfg:

.*/ToolbarIcons/.*

{

compress = false

mipmaps = false

scale = 1

max_size = 0

make_not_readable = false

}

.*/Icons/.*

{

compress = false

mipmaps = false

scale = 1

max_size = 0

make_not_readable = false

}

.*/Textures/.*

{

compress = false

mipmaps = false

scale = 1

max_size = 0

make_not_readable = false

}

but that only fixes one icon. There are others that are severely blurred or pure white.

Any suggestions?

Link to comment
Share on other sites

Using OpenGL makes KSP render 1 frame every 12 weeks (ok more like 1 frame every 3 seconds, even on the lowest setting. OpenGL & KSP do not agree on my machine. I also already run in a window because I only have a single monitor. BTW ATI H6770 1GB video card.

Reducing the gamedata folder to Squad only causes the same crash/error. I "reinstalled" a handful of my mods (VOID, ScanSAT, KAS, & Hyperedit) that seem to work on 0.90, and left out the Squad folder and now it just hangs on load (0% CPU usage across the board, but it still updates the witty loading tips). I'll just let it run overnight with these and later try again with the remaining "Squad" folder and report back.

Link to comment
Share on other sites

and left out the Squad folder and now it just hangs on load (0% CPU usage across the board, but it still updates the witty loading tips). I'll just let it run overnight with these and later try again with the remaining "Squad" folder and report back.

Do you have Squad folder with all its content or not? No point in waiting overnight. Look at your KSP.log instead. There's likely an exception that something is missing. I stumbled on this issue before. When wiping old mods, by mistake I removed Squad folder. Then I had an exception that LiquidFuel resource was not defined. Sure it wasn't as I removed it, along with other goodies in Squad/.

Link to comment
Share on other sites

I still have the squad folder, just simply had it moved to another location ("D:\Games\sss\Squad"). Funny enough when I didn't have window focus on KSP, it used 25% of my CPU and it ran for nearly an hour. I've also tried a mix of stuff in the gamedata directory to see if anything worked, nothing.

I decided to move the squad data back (minus "Squad\Parts" & "Squad\SPP"). Still crashes with the heap error and throws an exception. My "KSP.log" is filled with a lot of this:


[LOG 04:04:03.125] Load(Texture): Squad/Props/Compass/model000
[LOG 04:04:03.234] ActiveTextureManagement: Loading texture...
[EXC 04:04:03.234] OutOfMemoryException: Out of memory
ActiveTextureManagement.TextureConverter.InitImageBuffer ()
ActiveTextureManagement.TextureConverter.MBMToTexture (ActiveTextureManagement.TexInfo Texture, Boolean mipmaps)
ActiveTextureManagement.TextureConverter.GetReadable (ActiveTextureManagement.TexInfo Texture, Boolean mipmaps)
ActiveTextureManagement.CacheController.RebuildCache (ActiveTextureManagement.TexInfo Texture, Boolean compress, Boolean mipmaps)
ActiveTextureManagement.CacheController.FetchCacheTexture (ActiveTextureManagement.TexInfo Texture, Boolean compress, Boolean mipmaps)
ActiveTextureManagement.DatabaseLoaderTexture_ATM.UpdateTexture (ActiveTextureManagement.TexInfo texture)
ActiveTextureManagement.DatabaseLoaderTexture_ATM+<Load>d__4.MoveNext ()
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
:MoveNext()

Overall system memory usage at the time of crash is 1.24GB (ksp process = mem: 696,656K ; vm: 718,088K).

My KSP was running fine, I *should* leave it alone but I was hoping to see if I could save any resources.

Link to comment
Share on other sites

is there a way for you to overide files with a specific phrase in the title in the config file? the icons for my mods are all unenjoyably blurry and I want to take them out of the compression process so they stay regular.

Link to comment
Share on other sites

@Khataar: look in the ActiveTextureManagerConfigs folder and take these as example. Write one config per mod folder, since there a folder field at the beginning of each config files, I'm not sure your */textures/* method will work.Determine each textures path properly, they are not all in a folder named ''texture''.

@MGCJerry : Have you tried without openGL ? I found that the new ATM versions are kind of making it less mandatory. My GPU doesn't like openGL (don't, I've cheked everything, it's an enduro build :( ), so I had to deal with that. And anyway, what are you doing with squad's folder !!! You should just leave it as it is from the start. Or at least try a clean install instead of reporting a bug your likely the author...

@jdavis : ...

@Elthy : good question, you could look if after deleting the part(and it's texture, ATM is loading every texture he's finding, useful or not ) and rebooting there is still a texture for the part you deleted in the cache folder inside ATM folder ( it's easy to browse trought it ). Then you would know if ATM realised that there was no more texture at that address, or if he's not aware of it. Then you would have either to reload all the cache, or to just manually remove the compressed texture of the deleted part form it

Link to comment
Share on other sites

@jdavis : ...

Oh come on!

alot of the mods I use have their icons with icon directly in the name. "RC_icon.png", "DR_icon_off.png", etc..

the problem I am having is that since starting the use of ATM, the icons are all blurry as hell.

I was wondering if there was a way to make it so that if ATM found "icon" in the name of something it thought was a texture, it would skip over it.

@Khataar: look in the ActiveTextureManagerConfigs folder and take these as example. Write one config per mod folder, since there a folder field at the beginning of each config files, I'm not sure your */textures/* method will work.Determine each textures path properly, they are not all in a folder named ''texture''.

@MGCJerry : Have you tried without openGL ? I found that the new ATM versions are kind of making it less mandatory. My GPU doesn't like openGL (don't, I've cheked everything, it's an enduro build :( ), so I had to deal with that. And anyway, what are you doing with squad's folder !!! You should just leave it as it is from the start. Or at least try a clean install instead of reporting a bug your likely the author...

@jdavis : ...

@Elthy : good question, you could look if after deleting the part(and it's texture, ATM is loading every texture he's finding, useful or not ) and rebooting there is still a texture for the part you deleted in the cache folder inside ATM folder ( it's easy to browse trought it ). Then you would know if ATM realised that there was no more texture at that address, or if he's not aware of it. Then you would have either to reload all the cache, or to just manually remove the compressed texture of the deleted part form it

I want ATM to check to see if the word "icon" is in a file name and to skip over it if it is. this would stop it from, as Khataar put it, "murdering all my icons". I don't know if the config file supports this system though. if it doesn't, it may be something to think about adding, since most programming languages support seraching through strings.

Edited by Master Tao
double posts merged
Link to comment
Share on other sites

There are ways to have Active Texture Management ignore particular files, or even whole directories. Read all about it in KSP/GameData/ActiveTextureManagement/settings.cfg.

That will not solve your problem, though. The problem is in your Graphics settings. From the main menu: Settings > Graphics > Texture Quality – change it to Full.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...