Jump to content

Mismatched heightmap resolutions between terrains


Thomas123
Go to solution Solved by Thomas123,

Recommended Posts

I get the following error. What does this mean and how do I solve it?

- My base terrain has a Mesh resolution of Width: 8192, Length: 8192, Height: 2048, Detail Resolution per Patch: 16, Detail Resolution: 4096
- My Sectors (Sectr 2019 Complete) have a Mesh resolution of Width: 1024, Length: 1024, Height: 2048, Detail Resolution per Patch: 8, Detail Resolution: 512
- I use GTS in addition

[Warning] [GeNa Pro]: Mismatched heightmap resolutions between terrains: The terrain Terrain_0_0-20230424 - 083740 6-6-0 Terrain does use a different heightmap resolution than the origin terrain, this terrain will be ignored.
UnityEngine.Debug:LogWarning (object,UnityEngine.Object)
GeNa.GeNaDebug:DefaultLogCallback (UnityEngine.LogType,string,UnityEngine.Object)
GeNa.GeNaDebug:LogWarning (string,UnityEngine.Object)
GeNa.Core.GeNaMultiTerrainOperation:GetHeightmap ()
GeNa.Core.TerrainTools:GetTerrainEntity (GeNa.Core.TerrainModifier)
GeNa.Core.TerrainTools:GenerateTerrainEntity (GeNa.Core.TerrainModifier,GeNa.Core.GeNaSpline)
GeNa.Core.GeNaCarveExtension:Visualize () (at Assets/Procedural Worlds/GeNa/Scripts/Runtime/Extensions/GeNaCarveExtension.cs:138)
GeNa.Core.GeNaCarveExtension:OnSceneGUI () (at Assets/Procedural Worlds/GeNa/Scripts/Runtime/Extensions/GeNaCarveExtension.cs:95)
GeNa.Core.GeNaSplineExtension:SceneGUI ()
GeNa.Core.GeNaSpline:OnSceneGUI ()
Link to comment
Share on other sites

Just upgraded to the current version in the asset store (3.5.1). Same error

[Warning] [GeNa Pro]: Mismatched heightmap resolutions between terrains: The terrain Terrain_0_0-20230424 - 083740 6-6-0 Terrain does use a different heightmap resolution than the origin terrain, this terrain will be ignored.
UnityEngine.Debug:LogWarning (object,UnityEngine.Object)
GeNa.GeNaDebug:DefaultLogCallback (UnityEngine.LogType,string,UnityEngine.Object)
GeNa.GeNaDebug:LogWarning (string,UnityEngine.Object)
GeNa.Core.GeNaMultiTerrainOperation:GetHeightmap ()
GeNa.Core.TerrainTools:GetTerrainEntity (GeNa.Core.TerrainModifier)
GeNa.Core.TerrainTools:GenerateTerrainEntity (GeNa.Core.TerrainModifier,GeNa.Core.GeNaSpline)
GeNa.Core.GeNaCarveExtension:Visualize () (at Assets/Procedural Worlds/GeNa/Scripts/Runtime/Extensions/GeNaCarveExtension.cs:138)
GeNa.Core.GeNaCarveExtension:OnSceneGUI () (at Assets/Procedural Worlds/GeNa/Scripts/Runtime/Extensions/GeNaCarveExtension.cs:95)
GeNa.Core.GeNaSplineExtension:SceneGUI ()
GeNa.Core.GeNaSpline:OnSceneGUI ()
GeNa.Core.SplineEditor:OnSceneGUI () (at Assets/Procedural Worlds/GeNa/Scripts/Editor/SplineEditor.cs:157)
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&) (at /Users/bokken/build/output/unity/unity/Modules/IMGUI/GUIUtility.cs:189)
 

Link to comment
Share on other sites

Some additional info about this.

  • This will result in the fact, that none of the Splines are working anymore. The carving is not done and road textures are not applied.
Link to comment
Share on other sites

Hi @Thomas123 I'm a bit distant to GeNa development, but I think I have an idea what potentially might cause this: In unity each terrain has a heightmap resolution setting.

image.png

The heightmap resolution determines the detail level of the height information, or in other words how many vertices/polygons the terrain uses to render the terrain mesh.
When an operation that changes the terrain heightmap goes over multiple terrains, both the terrains need to have the same heightmap resolution. Otherwise, there will be issues with splitting that operation up and sampling it correctly for the heightmaps of the affected terrains. This is a general limitation within unity, you will get similar error messages from the terrain inspector as well if you try to raise the terrain across two tiles with different heightmap resolution.

Can you please check the heightmap resolution of the affected terrain tiles and see if any stray terrain has a different resolution than the rest?

 

Link to comment
Share on other sites

Thanks for your hint.

  • The original terrain has a resolution of 4097 x 4097
  • That terrain was sectorized by SECTR into chunks
  • The terrain then was polished with GTS

I have imported all chunks again and check each of them

  • These terrain 64 chunks have a heightmap resolution of 513x513 for some reason (no idea why, but I use polygon setup of Gaia/Sectr/GTS)
  • I check all 64 of them. They are the same (513x513)

So that does not seem to be the problem?  Anything else I can check or do?

Link to comment
Share on other sites

Found another Waring. This time from Gaia and Compass Navigator??

Top right neighbor of the terrain has a different heightmap resolution. Stop neighboring.
UnityEngine.Rendering.Universal.UniversalRenderPipeline:RenderSingleCamera (UnityEngine.Rendering.ScriptableRenderContext,UnityEngine.Camera)
Gaia.GaiaPlanarReflections:ExecutePlanarReflections (UnityEngine.Rendering.ScriptableRenderContext,UnityEngine.Camera) (at Assets/Procedural Worlds/Gaia/Scripts/Water System/Reflections/GaiaPlanarReflections.cs:139)
UnityEngine.Rendering.RenderPipelineManager:DoRenderLoop_Internal (UnityEngine.Rendering.RenderPipelineAsset,intptr,System.Collections.Generic.List`1<UnityEngine.Camera/RenderRequest>,Unity.Collections.LowLevel.Unsafe.AtomicSafetyHandle)
CompassNavigatorPro.CompassPro:UpdateMiniMap () (at Assets/ThirdPartyPlugins/CompassNavigatorPro/Scripts/Private/CompassProPrivate.cs:1814)
CompassNavigatorPro.CompassPro:LateUpdate () (at Assets/ThirdPartyPlugins/CompassNavigatorPro/Scripts/Private/CompassProPrivate.cs:316)

 

Link to comment
Share on other sites

Can this problem be related to GTS (texture arrays?). I tried to update them and got the following error. Or is it just a follow-on problem?

NullReferenceException: Object reference not set to an instance of an object
ProceduralWorlds.GTS.GTSProfile.RefreshTerrainLayers (ProceduralWorlds.GTS.GTSTerrain gtsTerrain, System.Boolean updateExisting) (at Assets/Procedural Worlds/GTS/Scripts/Core/ScriptableObjects/GTSProfile.cs:778)
ProceduralWorlds.GTS.GTSProfile.RefreshTerrainLayers (UnityEngine.Terrain[] terrains, System.Boolean updateExisting) (at Assets/Procedural Worlds/GTS/Scripts/Core/ScriptableObjects/GTSProfile.cs:722)
ProceduralWorlds.GTS.GTSProfileEditor.TextureLayerSettingsPanel (System.Boolean helpEnabled) (at Assets/Procedural Worlds/GTS/Scripts/Editor/CustomEditors/GTSProfileEditor.cs:566)
PWCommon5.EditorUtils.Panel (UnityEngine.GUIContent panelLabel, System.String helpKey, System.Action`1[T] contentMethod, UnityEngine.GUIStyle labelStyle, System.Boolean ignoreGuiChange, System.Boolean defaultStatus, System.Boolean showVersionNumber, UnityEngine.GUILayoutOption[] options) (at <5e780e565d3b4b63836c767b4e8e9d7f>:0)
PWCommon5.EditorUtils.Panel (UnityEngine.GUIContent panelLabel, System.String helpKey, System.Action`1[T] contentMethod, System.Boolean ignoreGuiChange, System.Boolean defaultStatus, System.Boolean showVersionNumber, UnityEngine.GUILayoutOption[] options) (at <5e780e565d3b4b63836c767b4e8e9d7f>:0)
PWCommon5.EditorUtils.Panel (System.String nameKey, System.Action`1[T] contentMethod, System.Boolean defaultStatus, UnityEngine.GUILayoutOption[] options) (at <5e780e565d3b4b63836c767b4e8e9d7f>:0)
ProceduralWorlds.GTS.GTSProfileEditor.OnInspectorGUI () (at Assets/Procedural Worlds/GTS/Scripts/Editor/CustomEditors/GTSProfileEditor.cs:275)
ProceduralWorlds.GTS.GTSTerrainEditor.SettingsPanel (System.Boolean helpEnabled) (at Assets/Procedural Worlds/GTS/Scripts/Editor/CustomEditors/GTSTerrainEditor.cs:105)
PWCommon5.EditorUtils.Panel (UnityEngine.GUIContent panelLabel, System.Action`1[T] contentMethod, UnityEngine.GUIStyle labelStyle, System.Boolean defaultStatus, UnityEngine.GUILayoutOption[] options) (at <5e780e565d3b4b63836c767b4e8e9d7f>:0)
PWCommon5.EditorUtils.Panel (UnityEngine.GUIContent panelLabel, System.Action`1[T] contentMethod, System.Boolean defaultStatus, UnityEngine.GUILayoutOption[] options) (at <5e780e565d3b4b63836c767b4e8e9d7f>:0)
ProceduralWorlds.GTS.GTSTerrainEditor.OnInspectorGUI () (at Assets/Procedural Worlds/GTS/Scripts/Editor/CustomEditors/GTSTerrainEditor.cs:55)
UnityEditor.UIElements.InspectorElement+<>c__DisplayClass59_0.<CreateIMGUIInspectorFromEditor>b__0 () (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Editor/Inspector/InspectorElement.cs:636)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&) (at /Users/bokken/build/output/unity/unity/Modules/IMGUI/GUIUtility.cs:189)

 

Link to comment
Share on other sites

  • Solution

Found the solution. For some reason, the sectorized, original terrain was not disabled. That's why the error stated the different heightmaps. Disabling it, solved the error. Thanks for your help!

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