Forum rules - please read before posting.

How to do open world in terms of memory management

Hi,

I've released my game in Early Access in 'chapter by chapter' format,
which means that the players can play each chapter as soon as it's ready.

Some players that use integrated graphic card rather than dedicated one reported on crushing when
starting the new chapter and they can't keep playing.

Here's some details about my current approach for sprites assets

  1. I'm using the same scene for all locations of the chapter and I'm switching between them using different cameras
    to make smooth transitions between them (it had significant loading time if I separate them to individual scenes)
  2. Each chapter is loading all locations at once.
  3. Animations made in traditional 'frame by frame'
  4. All sprites are png format
  5. I packed all sprites and animations before the build using addressables group
  6. I packed group of related animations together into same atlas
  7. Atlas max texture size usually between 2K-4K,
    and if 8K needed - I enabled crunch compression and compressor quality = 50
  8. Game resolution - 1920x1080

I heard about adaptive scenes - but it means I need to redesign the entire chapter
and separate the cameras to individual scenes. Even so, it might not give good result
and have loading time each time moving from one location to another.

Another consideration was to convert all png's to webp - but unity doesn't
have built-in support for it (third-party might not give long-term support and that will be a risk)

Any suggestion for good approach to handle it?
Next chapter is about open world so it will be even more noticeable.

Thanks

Comments

  • Aside from Unity's own optimisation best-practices, the AC Manual's "Performance and optimisation" chapter covers AC-specific tips.

    In my experience, audio plays a big factor in loading times - both for speech (which are short but many), and music (which are long but few). Speech is best loaded via Addressable, while Music can be load into memory only when requested from its AudioClip Inspector settings.

    While traditional adventures that AC targets aren't typically open-world, you can still separate your content into smaller scenes and add/remove them as the Player moves around the world. The Scene: Add or remove Action can be used to load scenes additively - rather than replacing the one currently-open. Scenes, too, can be loaded via Addressable.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.