Optimised ArchViz project setup

I have multiple ArchViz projects coming up and am looking to develop an optimised asset/project system. I have an ever growing collection of assets so I am considering the following setup - a single UE project which contains all of my assets in the contents folder. Each ArchViz project is a different level. The rationale here is that such a setup would cut down on disk space and the time in copying assets to new projects and loading them into a scene from the content drawer. Many of these projects will be turned over quite quickly - 3-4 days each, so they will quickly build up if I don’t develop an optimised system.

Is this a good idea or will I run into problems?
Is there a way to load different project settings for each level?

If this is a terrible idea, could you suggest an alternative? How do you work on multiple small projects?

Using a single UE project with all your assets in the content folder and creating separate levels for each ArchViz project can be a good approach to optimize disk space and asset management. It can also make it easier to reuse assets across projects and reduce the time required to set up new projects.

However, keep in mind that having multiple levels in the same project can potentially lead to performance issues, especially if the levels are complex and contain a large number of assets. It is essential to optimize each level carefully to ensure that it runs smoothly and doesn’t affect the performance of other levels in the project.

Regarding loading different project settings for each level, it’s possible to create custom game modes and configure them to load specific settings for each level. You can also use world settings to customize each level’s environment, lighting, post-processing, and other settings.

Alternatively, you could consider using project templates to set up each ArchViz project quickly. You can create a project template with all the necessary settings and assets, including levels, lighting, post-processing, and other settings. Then, when starting a new project, you can use the project template as a starting point, making the setup process faster and more efficient.

Working on multiple small projects can be challenging, especially if you need to manage a large number of assets. Some other tips to optimize asset management could be:

  • Use folder structures to organize your assets effectively.
  • Use naming conventions to make it easier to find specific assets quickly.
  • Develop a system for version control, so you can track changes and rollback to previous versions if needed.
  • Use asset bundles or modular asset design to reduce the amount of memory required to load assets into a scene.
  • Use LOD (Level of Detail) systems to optimize performance and reduce the number of polygons rendered in the scene.

Overall, the key to working on multiple small projects efficiently is to develop a system that optimizes asset management, reduces setup time, and ensures that each project runs smoothly and meets your clients’ expectations.

Excellent answer, thanks very much @EliasWick. Interesting to hear that the complexity of a level can impact the performance of other levels. I would have expected that if the complex level is not loaded into memory that it would simply sit on the disk and have zero impact on performance. Perhaps this solution might work for 10 or so projects, after which a new project can be started. Bearing in mind that some computer games have levels with a huge degree of complexity, I expect that levels containing just an ArchViz scene should not be much of a problem

Regarding the project settings, would it be possible to simply save copies of the config folder, one for each level, and replace it before opening the .uproject file?

I didn’t realise it was possible to create a custom template. This could be a great solution. Then, once I’ve finished the project I can run a cleanup to remove all unused assets and archive it.

I’m seeking a better way to manage assets for Arch Viz. Does anyone know how to link assets from a separate “master library” to a UE project? This way the standard used assets that are never edited wouldn’t have to be duplicated for each project