How do i reduce texture resolution so that i can reduce my build size. In unity i can just do that by selecting texture and chaning from 2k to 512 but i dont see any option in unreal. Is there anything similar??
Open up texture and change lod bias setting from 0 to desired setting. It will display the new texture size above and should reduce size permanently when cooking/packaging build.
Can you explain more?
Each texture has an LOD0, original size. So if your texture is 2048x2048, when you look at the texture asset in Unreal, you ought to see a LOD Bias setting of 0. If you set this to 1, it will reduce the level of detail, guessing it will make it 1024x1024.
What this tells unreal is that the original texture is always going to be 2048x2048, but since you forced a base LOD of 1, it’s always going to be loaded and run at 1024x1024 at best.
This lets you use really large textures, say if you didn’t make them yourself, but still tell unreal to essentially scale it/them down to your desired size.
To go into more detail:
Double click a texture in the content browser (an icon with a red bar at the bottom)
This will pop a window with texture details
You’ll see the imported size (top right) ex: 4096x4096
You’ll see Resource size (top right) ex: 21,846 Kb
You’ll see the number of mips (top right) ex: 13
FYI: Each level of mips cuts the size in half (so mip 1 is 2048x2048, or 1/4 of the data size)
Scroll down to Level of Detail
Here you can change the LOD Bias
When you change it you’ll see the Resource size drop
As well as the Max In-Game texture size (top right)
So if your target is 2k textures you can set 4k bias to 1, 8k bias to 2.
Unfortunately, I don’t personally know of a way to do it other than stepping through each texture. That doesn’t mean that it doesn’t exist.
Related Question. If I set an 8K texture to a bias of 2, does it take the same amount of space on disk, only savings is in RAM?
What about when I package/bake everything?
@Frenetic if “Maximum Texture Size” is used then yes, your packaged app will effectively have the re-compiled texture thus saving disk space. It won’t save disk space in the development environment though as it’s a non-destructive feature.
Is there a way to do this for all textures at the same time? Or do I need to set this up manually for each texture?
In the Content Explorer:
- select multiple thingies
- right-click → Asset Actions → Bulk Edit via property matrix
(this may take a bit to load depending on how many and how many different things you want to concurrently review).
You will get a window where you can edit different properties of said thingies. I dropped a snap of the context menu on top so you can see:
Hope this helps.
you can select all textures → right click → asset action → bulk edit via property matrix → set lod bias
This crashes every time
You can also do it all from one menu click (and it doesn’t crash) with rdTexTools on the marketplace - LODBias, MaxTexture Size and also a true resize of the textures…
25 bucks. not a terrible price. says its written in C++. my entire project is BP. do you use it? wis it pretty simple to learn? I may give it a go.
It is a plugin in C++ - it’s Editor Only - so it doesn’t need to be packaged with your project, it is fine that it’s BP. I wrote it, so there wasn’t a learning curve for me, but I haven’t had anyone say it’s hard to learn - people seem to pick it up easily.
cool I’m almost done setting all LODs for all textures to 2 or 3. is there benefit to your app beyond that? can you point me to a feature video or tutorial? also it says windows and linux platform. I’m designing for mobile. am i still good there?
Absolutely, it does many things above and beyond resizing textures - from changing individual channels, creating many different types of “Difference Map” - creating many types of Noise etc.
There is a list of the features in the below link:
Link to home site (and tutorials):
Link to Marketplace:
sold if you can just tell me if its still effective with mobile
Oh yes, sorry - yes it works 100% with mobile.