Jump to content

Gena Pro has too much resources bloat (Unnecessary Memory usage / Build Size)


chiken
Go to solution Solved by Peter,

Recommended Posts

Hello, I imported Gena Pro and noticed an important issue which is that Gena Pro is using the resources folder very heavily which results in decreased performance even when some features are not used that causes increased memory usage and increased build size.

This can be a significant problem on devices with low memory and this problem did not exist in the old Gena version.

I last used Gena which did not make use of the resources folder so heavily. Now that Gena is also deprecated, I can't go back to using the old Gena version in Unity 2021.

The resources folder in Gena Pro is bloated and includes everything even if some assets are not used.

It would be helpful if there's documentation which mentions which assets in the resources folder are used for what things, so we can selectively choose to optimize out assets that are unused.

From my observations, Gaia does not have this problem, and only Gena Pro has this issue.

1)  Resources/Shaders

If there's no need for runtime spawning or other specific features, which shaders can be removed or moved out of the resources folder?

It would be helpful if they were grouped by folders related to the features, such as Core, Runtime Spawning, Roads, Water.

Alot of shader were included here, which causes alot of increased memory usage even for unused shaders when the project is built.

2) Resources/Masks

What are these textures used for? The textures alone here take up to about 10MB which is too much.

3) Resources/Terrain Masks

What are these textures used for?

I notice that "GeNa_Town Base Mask" texture size is 2048x2048 and is set to uncompressed. Is that part of the Asset Samples? That doesn't seem like its part of the core assets.

4) Resources/UV, Resources/GUI

What's are these used for?

5) For folders such as Resources/Road and Resources/Water

From what I can see, they are probably removeable if I don't use the features (Roads / Water) right? 

The other alternative way would be to set the texture size to the lowest, so that it doesn't occupy so much memory but it's not a great solution.

6) There should be rendering pipeline specific unitypackages.

For example, I'm using the built-in render pipeline and do not want to import the URP / HDRP related materials and shaders. By default, it includes everything when I import Gena Pro.

An example of this is "GeNa_FlowRiver_LitBasic_HDRP" that was included in the  Gena/Resources/Materials/ folder.

--------------

In conclusion, what I want to know is how I can filter out unused assets if I don't use some features in Gena Pro as the resources folder is just causing everything to be loaded when the project is built.

It would be helpful if the resources folder usage was more limited in Gena Pro, or there is more documentation on ways we can remove or optimize out unused features. 

Features that I don't use

A) Roads
B) River & Water
C) Runtime spawning

  • Like 1
Link to comment
Share on other sites

  • chiken changed the title to Gena Pro has too much resources bloat (Unnecessary Memory usage / Build Size)

Hi @chiken, please excuse the delayed response. I will forward this to the colleagues who can answer this question more in detail. We can understand that this is an issue, no one likes unneccessary files in the build, especially on target platforms where memory is more of a concern.
In general we have the issue with GeNa that we demand from it that it can do all the things in runtime that it can do in the editor as well. This means if we want to support e.g. creating a road out of nowhere, we need to put the road texture either in the resources folder, or create some other reference to it so that it gets added to the build automatically, otherwise that feature will not work correctly.
We need to document this better so it is clear which folders can be deleted if you do not intend to use a certain feature during runtime.
What you can do for now until a more detailed response arrives: It should be safe for you to delete the folders
Textures\Road Textures
Textures\Water Textures
as those contain the default textures used for new road / river splines. This should not affect the general functionality of GeNa but will instantly reduce the majority of the file size of the resources folder:


image.png

This will hopefully allow you to continue with not too much hassle until we can get a statement for the remaining folders as well.
 

Link to comment
Share on other sites

  • Solution

Hi @chiken

we discussed this internally and the outcome was that we would not recommend to remove the remaining other folders as this would endanger the core functionality of GeNa. If you are not using runtime spawning, you should be able to either completely remove GeNa before the final build, or renaming the "Resources" folder to something else before build and then rename it back afterwards. This should prevent the files being pulled into the build, but you can then still utilize GeNa afterwards if you need to make further additions / amendments.

We documented this over here in a library article:

https://canopy.procedural-worlds.com/library/tools/gena-pro/37_tutorials/gena-pro-how-to-reduce-your-build-size-r147/

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Tell a friend

    Love Canopy - Procedural Worlds? Tell a friend!
  • Need help?

    We work with some of the biggest brands in global gaming, automotive, technology, and government to create environments, games, simulations, and product launches for desktop, mobile, and VR.

    Our unique expertise and technology enable us to deliver solutions that look and run better at a fraction of the time and cost of a typical project.

    Check out some of our non-NDA work in the Gallery, and then Contact Us to accelerate your next project!

×
×
  • Create New...