demostenes Posted November 26, 2016 Share Posted November 26, 2016 One albedo 2048 texture in dds without alfa is 2.66MB (without alfa). Terrain albedo array with 2048 resolution for 23 textures has 490MB. I would expect 2.66*23=61,2MB, not 8x more. 2048 normal map has 5.33MB, height texture 2,66MB. Normal array for 23 of these textures has 243MB, height array 123MB. Is there any reason for this? Link to comment
sebastianbah Posted November 29, 2016 Share Posted November 29, 2016 Hi,Generation of arrays contains the following steps: - generate mipmaps to every layer of the array - for albedo array: additionally, add roughness texture as alpha channel So, if you want to calculate the final size of the array texture, try to: - generate mipmaps (you may use imagedds_x*.exe -m) for the material's texture - multiply the size of the resulting texture (RGBA texture for albedo) and number of materials. If your source texture have only 1 mip, even the final size of array with 1 layer will be different. Also, please, check, that you may compress the final textures (Nodes -> ObjectTerrain -> Parameters -> Compress) to get the optimum size. Thanks! Link to comment
demostenes Posted December 4, 2016 Author Share Posted December 4, 2016 I tried compression of textures and now albedo and normal arrays are 125MB, height 15MB. I thought it is compressed by default. So good to know :) All my textures have mipmaps, so 2.66MB is with mipmaps. I ve noticed, that not all of my layer textures are RGB, some are RGBA, so probably this adds A layer to albedo array, which is doubling the size. Good to know, that alfa is now roughnes, after height was moved as separate texture. Thanks for explanation! Btw, it is memory wise to put rougness into alfa channel? For alfa channel dds compression is more conservative, so adding alfa channel doubles size of texture. If rougness is stand alone single texture as height, it would take far less space (15MB instead of 61MB). Any technological reasons for this? Link to comment
sebastianbah Posted December 5, 2016 Share Posted December 5, 2016 Hi,Through the realization, detail textures are called for a multiple times, so the additional array texture may cause significant performance drop for ObjectTerrain.Thanks! Link to comment
Recommended Posts