Jump to content

Generating large worlds help Unity6 Gaia 2023 Pro


pablosquared
Go to solution Solved by pablosquared,

Recommended Posts

Hi,

I am learning and experimenting with Gaia 2023 to generate larger worlds on a computer which is suitable for large tasks.  Win11, 32core, 128G RAM, 4090RTX, SSD, Unity6.  Smaller world tests were good.

Using the world designer I am creating a 15x15@2048 terrain.  Terrain stamps randomize and I can get a full preview of the terrain.

When I Generate Terrain I get an estimate of ~15mins and then the editor hangs forever, spinning but not progressing.

In the editor log I get the below Messages:

d3d12: upload buffer was too small for the requested resource! Size: 134217728. Requested: 269550080.
Shut down.

I believe that message says I am working with too much data for something (compute shaders?) in DX12 and I have a few questions:

Is there a batching/tuning mechanism for large world creation?

Is there a workflow for creating large worlds a few terrains at a time and then merging them?

Thank you for this awesome product!
 

Link to comment
Share on other sites

Well, it is hanging on a single terrain so I think this hanging is a problem in my project.  I'll report back on it.

Link to comment
Share on other sites

I rolled the project back to Unity 6000.0.3f1 and the terrain generation is progressing.  I will have some time later to re-test on some more Unity6 versions.

No worries from me that this is not officially supported, it is all just for fun!  And might help some of the experimental builders out there.

 

Link to comment
Share on other sites

Thank you, and yes we will provide official support for it soon 

 

Link to comment
Share on other sites

I have some additional testing.

I have the latest 4.0.9 update installed and working on 6000.0.3f1.

There is a hang on 6000.0.11f1.  In a new HDRP project with the "HDRP sample scene" installed.  Terrain generation is hanging on Compiling Shader (see screenshot).

Something in the later Unity6 builds are causing trouble.  I'll see if I can get more info.

Regards.
 

image.thumb.png.c9063ec20520fb061c583e945e700b8b.png

Link to comment
Share on other sites

  • Solution

Last test I am able to do, Gaia hangs on Creating terrains in 6000.0.9f1.
Looks like some change in Unity between 6000.0.4f1 and 6000.0.9f1 breaks.

Hopefully this helps the teams out there!  I'll stick to 6000.0.3f1 for now.

image.thumb.png.101afd1b5da0a069abae5cf6e3e2683e.png

 

Link to comment
Share on other sites

Hi @pablosquared

I was able to reproduce the issue - when looking at the editor logfile. When I debug the issue, it looks like the process hangs itself / goes into an endless loop when we call the Unity API to sync the heightmap changes. (TerrainData.SyncHeightmap()) Why this only happens in this specific constellation of render pipeline, terrain size and editor version I have no idea yet.

Link to comment
Share on other sites

This really has the feeling of a Unity Bug as things are working in the 3f1 version and not a later version.

I didn't see any known issues in the Unity 6 change tracker which seem to be related to this area so could be unknown bug.

As I have time I'll do some testing around the TerrainData.SyncHeightmap() calls to see if i can trigger this behavior outside of Gaia.

Regards.

Link to comment
Share on other sites

I was not able to trigger the hang in my own code around of TerrainData.SyncHeightmap() in HDRP build 6000.0.11f1.

I am sure you all are on top of it and will have it figured out.

Best of luck for a quick resolution!

Link to comment
Share on other sites

I have found another instance of the hanging behavior.  Hopefully this lets you narrow into something.  In this case I created the terrains in 6000.0.3f1 and then upgraded to 6000.0.9f1.  I removed all of the details/trees using the gaia tools.  everything is ok at this point, working as expected.

I then go to the biome controller and run the Spawn Biome and the editor hangs as seen in the screenshot below.

image.thumb.png.54474698855bb533bffc656169472d51.png

 

Link to comment
Share on other sites

Hi @pablosquared,

we did some more investigation today and came to the conclusion this is 100% an Unity bug: This issue also happens when you set up an emtpy, new project, create a new terrain in the scene and increase the heightmap resolution to 4097. This is all it takes to freeze the Editor. We have reported this issue to Unity.

  • Thanks 1
Link to comment
Share on other sites

Glad to hear your team was able to come up with a proof for the Unity team.

Have a good one!

 

  • Like 1
Link to comment
Share on other sites

Hi All,

These issues are related to DX12.

A workaround for the Unity 6 builds after 6000.0.3f1 HDRP is to set the Project Settings to use DX11 (instead of DX12).

After setting my project to DX11 I was able to do the work Gaia and then re-enable DX12 once the terrains were created and in place

There are other issues with DX12 in Unity6 HDRP (Material conversion) which are resolved by setting DX11 as well.

Cheers!

Link to comment
Share on other sites

2 hours ago, pablosquared said:

@Bryan @Peter
You may want to update the title of this thread, it's definitely evolved since creation 🙂

Thank you for the info! 

 

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...