boring times - not enough memory
Posted: Sun Apr 12, 2015 7:19 pm
so much time passed on modding, improwing, removing, reducing wallset, textures, I simply cannot test my mod with textures resolution set to max.
In high settings, when starting the mod, the game load and load things, the memory used get up to 1 696 Mb then the game crash and give me this:
The mod is about:
105 levels, I planed 150 levels
117Mo (the exported mod take only 71Mb)
23,6 Mb of musics, I recently export all musics with 96Kbps ogg quality
4 Mb of sounds
49Mb of custom textures
33Mb of custom or modified log2 models
6,5Mb of lua files
Thousands of thousands lines in the dungeon.lua
Thousands of models spawned
71 Mb and it's the end of all! I'm pissed off and don't know what to do now, except going to make me a cup of tea.
log2 assets:
I have removed approx, 12Mb of textures (that I don't need)
About the models, I don't know how much but maybe 30Mb of model are removed
Also I have modified some textures size to 256x256 (items that have texture > 256x256), removed all specular textures of the item and replaced them by the black material. <--- 20Mb gained
Most of my custom assets use log2 models, some are loaded from the mod_assets but most of them are loaded from the asset pack, using custom or log 2 material, directly with the command line in the model class.
e.g:
I made it this way because I think that it's better to improve mod size or memory usage, to not reload same models or texture under a different name twice. Of course, if the game act so.
I load all log2 assets in my init.lua, has to be done to remove some of the asset that are no longer needed.
So much improvement, small size wallset 2 to 10Mb. My modified, black tomb wallset takes only 2,3 Mb, and this is only with log2 models, no new textures. The city wallset of EW, which takes only 9,7 Mb now, reduced a lot. Most of the texture were replaced by log2 textures. A custome ice wallset, amethyst mines, imperial marble palace, Oddinball sci-fi stuff, dwarf wallset based on the castle wallset (not implemented, what's the point now?), all of this takes only 30 to 40 mb (40 with the dwarf wallset).
Tons of textures, normal or specular are no more used or are replaced by other textures, I have count 125Mb of textures no more loaded.
And I still have "not enough memory"! I figured that so, at least, things will be ok, and I can use any other custom wallset, like Phitt's asian tileset.
While trying to save memory usage at the expense of global graphic quality, I thought that will be great to remove lot's of things of the memory, but.. No! All this work for nothing!
Tested without any heavy scripts, not something like or , like fw hooks, mam or npcscript , don't work!
Tested without using some wallset, don't work!
Tested with 4 levels only (removed all other), works! OMG!
Tested with all settings to max, except texture resolution set to medium, works!
Strangely I simply removed 3 wallset, I don't know how many, let's say that make 20Mb of things removed, the mod wouldn't show itself with high resolution textures. Is the number of levels that is too big? the number of lines loaded in the dungeon.lua? the number of model spawned? Is there a limit? WTF!
wrong textures?
wrong models?
too much levels?
too much item in my gfx atlas?
wrong script?
wrong guy?
If someone got any idea of what's going wrong, you are welcome.
Anyway, I will not continu that mod, I'm simply bored. I don't want to play/test it with medium texture resolution or I can throw away my computer!
In high settings, when starting the mod, the game load and load things, the memory used get up to 1 696 Mb then the game crash and give me this:
SpoilerShow
105 levels, I planed 150 levels
117Mo (the exported mod take only 71Mb)
23,6 Mb of musics, I recently export all musics with 96Kbps ogg quality
4 Mb of sounds
49Mb of custom textures
33Mb of custom or modified log2 models
6,5Mb of lua files
Thousands of thousands lines in the dungeon.lua
Thousands of models spawned
71 Mb and it's the end of all! I'm pissed off and don't know what to do now, except going to make me a cup of tea.
log2 assets:
I have removed approx, 12Mb of textures (that I don't need)
About the models, I don't know how much but maybe 30Mb of model are removed
Also I have modified some textures size to 256x256 (items that have texture > 256x256), removed all specular textures of the item and replaced them by the black material. <--- 20Mb gained
Most of my custom assets use log2 models, some are loaded from the mod_assets but most of them are loaded from the asset pack, using custom or log 2 material, directly with the
Code: Select all
material = "zo_pillar",
e.g:
SpoilerShow
Code: Select all
defineObject{
name = "zo_tomb_pillar",
baseObject = "base_pillar",
components = {
{
class = "Model",
model = "assets/models/env/tomb_pillar_01.fbx",
material = "zo_pillar",
staticShadow = true,
}
},
minimalSaveState = true,
}
defineMaterial{
name = "zo_pillar",
diffuseMap = "assets/textures/common/black.tga",
specularMap = "assets/textures/env/tomb_pillar_spec.tga",
normalMap = "assets/textures/env/tomb_pillar_normal.tga",
doubleSided = false,
lighting = true,
alphaTest = false,
blendMode = "Opaque",
textureAddressMode = "Wrap",
glossiness = 20,
depthBias = 0,
}
I load all log2 assets in my init.lua, has to be done to remove some of the asset that are no longer needed.
So much improvement, small size wallset 2 to 10Mb. My modified, black tomb wallset takes only 2,3 Mb, and this is only with log2 models, no new textures. The city wallset of EW, which takes only 9,7 Mb now, reduced a lot. Most of the texture were replaced by log2 textures. A custome ice wallset, amethyst mines, imperial marble palace, Oddinball sci-fi stuff, dwarf wallset based on the castle wallset (not implemented, what's the point now?), all of this takes only 30 to 40 mb (40 with the dwarf wallset).
Tons of textures, normal or specular are no more used or are replaced by other textures, I have count 125Mb of textures no more loaded.
And I still have "not enough memory"! I figured that so, at least, things will be ok, and I can use any other custom wallset, like Phitt's asian tileset.
While trying to save memory usage at the expense of global graphic quality, I thought that will be great to remove lot's of things of the memory, but.. No! All this work for nothing!
Tested without any heavy scripts, not something like
Code: Select all
hudprint ("WTF")
Code: Select all
playSound("lock_incorrect")
Tested without using some wallset, don't work!
Tested with 4 levels only (removed all other), works! OMG!
Tested with all settings to max, except texture resolution set to medium, works!
Strangely I simply removed 3 wallset, I don't know how many, let's say that make 20Mb of things removed, the mod wouldn't show itself with high resolution textures. Is the number of levels that is too big? the number of lines loaded in the dungeon.lua? the number of model spawned? Is there a limit? WTF!
wrong textures?
wrong models?
too much levels?
too much item in my gfx atlas?
wrong script?
wrong guy?
If someone got any idea of what's going wrong, you are welcome.
Anyway, I will not continu that mod, I'm simply bored. I don't want to play/test it with medium texture resolution or I can throw away my computer!