I’ve been playing with UE4, creating lots of materials, importing assets, all into one project. I called the project “Asset Library”, so it’s not a specific project. It’s already become pretty big and I now got a warning message, that the texture streaming pool is very large.
I’m not sure if that is the best way to do it. Ideally I would just create stuff in an empty project and save it to disk folders from where I can access it in other projects. I didn’t quite get the knack of how to do that with UE4. Sorry if I’m missing something obvious here.
How do you / would you organize your library of stuff?
hah, IIRC you can put your stuff in the Engine Content folder so it is automatically available to all your projects.
I can’t remember how to access it though, I believe you just have to enable 'Show Engine Content" in the content browser.
The obviously flaw in this though is when you upgrade it may or may not save them. I cannot confirm
You need to organize your project according to your project. I think the texture streaming information was part of an upgrade not necessarily to indicate anything wrong. Mine tells me if i’m streaming 10 mb, 5mb, 55mb. It’s always changing, and absolutely annoying.
I organize models, and materials according to what is necessary. So at the top level I have a ModelLibrary, Audio, Textures (which are more like overlays for my game), Creatures, Blutilities, Blueprints, SaveGame, FX, … etc…
Then within ModelLibrary I have it broken down to different things. So if i have a cathedral I add a cathedral folder and then import my modular models and textures for the cathedral in there. If i have a village, I make my village folder, and do likewise.
When there are thousands of assets, the important thing is to work in a way that makes sense, so that if you take a break from your project for a month you aren’t trying to find things, you understand where they are. Likewise if you start a new game project you can organize it in the same way, and always be clear from project to project what your system is.
Finally, if you are introducing others to your game, to work on it, you want it to be a clear system for them as well. logical, clean, and organized.
also I make sure to have breakdowns in each folder. Audio for instance has, Sound FX, Music, VoiceOver. Additionally, I have folders where I have set up classes based on physical objects that move. From my understanding, the Save Game system only works if you can access information based on a class, it doesn’t simply iterate through everything in a scene and save where it was last. So I have to make my movable chairs a class, in my CLASS_PROPS_MOVABLE folder. I have things like CLS_mission_chair, CLS_rough_DOOR, CLS_stoneBlock.
When running my save game system I iterate through the CLS_stoneBlock, and it looks for every iteration of this object, finds them all and saves out their position, rotation, even scale if I want it. If i didn’t do this, and just put my original stoneBlock in my game, and ran save game, it wouldn’t remember where those things are.
i’m hoping in the future there will be other ways of accomplishing this, as I’ve been able to do this in other software but not in UE4 as easily.