Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Join us on Thursday, June 8, for a Q&A with Unity's Content Pipeline group here on the forum, and on the Unity Discord, and discuss topics around Content Build, Import Workflows, Asset Database, and Addressables!
    Dismiss Notice

[Released] Orbis - DOTS Terrains

Discussion in 'Assets and Asset Store' started by davidus2010, Aug 1, 2021.

  1. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Hi, i haven't actually had the chance to check out entities 0.51, as i'm on leave for a couple of weeks. Will do as soon as i get back (sometime in august). But from what i've seen, 0.51 doesnt break as much as 0.50, so it might already work.
     
    Krooq likes this.
  2. Liminal-Ridges

    Liminal-Ridges

    Joined:
    Oct 21, 2015
    Posts:
    251
  3. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
  4. Liminal-Ridges

    Liminal-Ridges

    Joined:
    Oct 21, 2015
    Posts:
    251
    I feared so. If the orbis terrain is custom mesh it wont work :/
     
  5. John-Catan

    John-Catan

    Joined:
    Jun 12, 2014
    Posts:
    13
    chanced upon your asset, very impressive work. Is it possible to load a full city into orbis terrain? thanks.
     
  6. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Hi, what do you mean by "loading a full city into orbis terrain"? You could of course load any building/city assets you'd want, and surround it with orbis for the landscape. For buildings and similar things you can't use Orbis directly.
     
  7. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    I also just published an Update of Orbis to the asset store:
    • Update to entities 0.51
    • Added burst compilation options to main mesh generation job, giving a slight performance boost
    • Use pre-computed inverse transforms in mesh generation jobs for an additional performance boost
     
  8. ChangeEternity

    ChangeEternity

    Joined:
    Mar 22, 2019
    Posts:
    2
    I got an error when I was using E to dig the ground. After that, I can't use the E button function
    upload_2022-9-22_11-53-2.png
     

    Attached Files:

  9. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Hm, can you provide me with some further details on that? Is it happening when you are close to the ground? Did the ground move/deform when first used or did no visual change occur? Is it on a flat or spherical terrain?
     
  10. stu_g

    stu_g

    Joined:
    Feb 13, 2016
    Posts:
    5
    Hi David .. I just bought your asset a few days back and as others say it's a good insight into using DOTS. I had decided I wanted a DOTS terrain engine for my project and was just about to start on quad tree etc but found this so it's a great place for me to start! Have just started trying it on mobile and it performs really well. I know you only just upgraded it to 0.51 but what do you think about 1.0? Was thinking of having a go myself but it's a little bit daunting as I'm still getting used to DOTS!
     
  11. akbuehner

    akbuehner

    Joined:
    Jul 13, 2020
    Posts:
    3
    Hi David, I am getting a missing script error on the FlyCamera prefab using Orbis version 0.5.0. Do you know which script I should point it to?

    upload_2022-11-30_19-51-40.png
     
  12. stu_g

    stu_g

    Joined:
    Feb 13, 2016
    Posts:
    5
    Hey maybe I can help .. should be "UniversalAdditionalCameraData" .. guessing you need to use URP for this to work.
     
  13. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Hi, thanks for reaching out. The sample scenes were setup using URP, so it's expecting the "UniversalAdditionalCameraData" component to be present. Orbis itself should be compatible with all rendering pipelines when given compatible materials.
     
  14. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Regarding the version compatibility: I am planning on upgrading Orbis to the 1.0-exp version, but did not get to finish that upgrade yet.
     
    AnteNomspa likes this.
  15. Snake_Plissken

    Snake_Plissken

    Joined:
    May 12, 2018
    Posts:
    5
    Hello, My name is Snake Plissken, I have purchased this asset many moons ago and now its about high time i did something with it, i have message here before years ago and have had it working in the pass, but now for some reason i cant seem to get it up and runing. i have tryed with multiple versions of 2020.1.x , 2020.2.x and 2021.x . i generally want to ask here at the moment : " What are the/ or all of the confirmed working versions of Unity that Orbis Dots works in? " side note but off topic: i am trying to get this working with Rival Character Controller. any information would help and thanks so much for your work in a great project if the author reads this. if anyone reply's thank you so much but no worry's if not. thnx.
     
  16. Snake_Plissken

    Snake_Plissken

    Joined:
    May 12, 2018
    Posts:
    5
    hey i just noticed that if things get updated to those 1.0.0 packages everything should work with the latest version of Rival. this i can not wait for my friend. keep up the great work. ( atm i use rival as a base in another project and primarly as a learning exsample on what i have done thus far in trying to dev my own character controller for my use in orbis. ) so yeah. i cant wait. keep it up
     
  17. jeffreymlynch

    jeffreymlynch

    Joined:
    Jun 27, 2017
    Posts:
    9
    Any updates on when the upgrade to 1.0-exp might be released?
     
  18. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Hi, sorry for the late reply, I was busy with some personal Issues. But I hopefully will be able to publish the 1.0.0-pre.44 compatible version by the end of this week. I also have some other more news regarding Orbis and a roadmap available soon.
     
  19. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Hi everyone, so I just submitted a new version for Orbis. This will make it compatible with the latest 1.0.0-pre.44 Unity Entities version. Here is a list of the changes:
    • Update to entities 1.0.0-exp44
    • Update all systems/components/authoring workflows to work with the current latest entities versions
    • Remove editor preview, this will be replaced later with an in-editor version of the Orbis systems that will also run at edit-time
    • Orbis now uses sub-scenes for conversion
    • Added a new authoring component for baking, which will setup all terrain types. No more manually addind/removing components
    • Materials are now referenced using managed components
    • Vegetation settings are now stored on the root-entity of each terrain quadtree using a dynamic buffer
    • Added selection helpers for planets
    • Added a baking system to unparent orbis terrain elements during conversion
    • Heightmaps/Stacks now get added to the OrbisConfigurator from the new baking component
    • Simplified/combined some settings
    • Added Custom Baking Editor
    • Spherical planets now calculate their correct size and sphere center automatically when each side shares a common parent, planet size is then adjusted using the radius
    • Remove EditorCoroutines package
    • Add new skybox for the flat terrain sample scene
    • And many more smaller changes & optimizations
    The asset store approval process might take a few days, so please give it a few days before you check it out. If you spot any bugs or issues, feel free to report them to me
     
  20. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Regarding the future of Orbis: A while ago I began a complete recreation of the asset, with this new version focusing only on spherical worlds (e.g. planets). As Unity is expected to release a DOTS-compatible Terrain solution sometime soon, I don't want to run into direct competition with that. Supporting only planets does simplify many things. This new version will also switch to a stamp-based approach (instead of the heightmap/scattered/procedural one), which will allow much more creativity and control over the resulting terrain.
    Another big change will be the meshing itself, as I have implemented a new meshing solution which will be able to vary the vertex spacing based on the detail in the area around it. This means that in flat / planar areas, the vertex density will be much lower, resulting in the final vertex count being much lower. The authing and conversion workflow, aswell as the job scheduling approach will also be completely overhauled, which should get rid of a couple of bugs and issues, while improving performance even more and reducing code complexity. Vegetation will also be completely redesigned.
    However, these new updates/changes will be too drastic to just be an update to the existing asset. So I plan to release those changes as a new asset to the asset store, and give existing customers a free upgrade path to it. The bulk of new features will then only come to this new asset, and will be called "Orbis Planet Designer".
    The existing "Orbis Terrains" will still continue getting updates and bugfixes, as well as the inclusion of some more features that were introduced with entities 1.0.0 (the current release is pretty much just a direct port of the 0.51 version, with a few things that definitly could use some changes with the new version). But the "main" new feature development will then be for this new "Orbis Planet Designer" asset.
     
  21. unity_75_Pu5g5eCYojw

    unity_75_Pu5g5eCYojw

    Joined:
    Jun 1, 2020
    Posts:
    3
    Firstly, thank you for the excellent work you are doing with Orbis. 10/10, cant praise it enough. Huge help and essential instrument for a game I'm working on.

    Secondly, is it possible to persuade you to continue to include flat-oriented terrain and heightmap based approach in your future asset?
    Unity is not known to deliver finished solutions on-schedule. We don't know when the "sometime soon" will actually happen, what shape their solution will be in, what features it will offer and how long it will be till it is indeed ready-to-use.
    While you are already proven and capable provider of an excellent DOTS Terrain asset.
     
  22. Deeo

    Deeo

    Joined:
    Dec 6, 2012
    Posts:
    39
    I tried following the install steps for the new ECS 1.0.0 version of Orbis but i get these string of compiler errors about the transform. Am I missing a package? I'm using unity version 2022.2.12, i also tried the newest 2023 beta version with same errors.

    Any help would be awesome ;)
     

    Attached Files:

  23. manarito

    manarito

    Joined:
    Nov 17, 2016
    Posts:
    9
    Same thing here, just bought it and I get those errors.
    I think this is because it uses exp44 and not the more recent exp65.
    I already had to deal with transforming some of the scripts from exp44 to exp65 where LocalToWorldTransform has become now LocalTransform, so I think it's something similar here.
    Hopefully though the dev updates this soon.
     
  24. manarito

    manarito

    Joined:
    Nov 17, 2016
    Posts:
    9
    So not a proper fix but it gets rid of the errors:

    Modify CustomGravitySystem.cs and OrbisRenderingSystem.cs and replace any instance of WorldTransform to LocalToWorld.
    Modify OrbisBakingSystem.cs and FloatingOriginSystem.cs and replace any instance of TransformAspect to LocalTransform, also LocalPosition field to Position.
    Modify OrbisSystemGroup.cs and add partial keyword to the class.

    With that said, this was just a quick run to try to remove the errors. Only the Flat Terrain demo seemed to work as desired with these changes, the Star system demo terrain flickers and the Heightmap one throws a KeyNotFoundException.
     
  25. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Hi everyone, I'm currently in the process of sbumitting a new version, which will include compatibility with the most recent (exp65) entities version, as well as some minor improvements and bugfixes. It should be approved by unity within the next few days I hope.
     
    print_helloworld and manarito like this.
  26. manarito

    manarito

    Joined:
    Nov 17, 2016
    Posts:
    9

    Hi, Thank you for the fast reply and fix.

    I deleted the old version from the project and imported the new one, errors are not there anymore.
    One issue though is that the demos for Star System and Heightmap still do not work. the following error is spammed in the console:

    Code (CSharp):
    1. KeyNotFoundException: The given key '34712' was not present in the dictionary.
    2. System.Collections.Generic.Dictionary`2[TKey,TValue].get_Item (TKey key) (at <cbc72d4a9767498db39486e941a498e3>:0)
    3. Orbis.VegetationSpawnerSystem+VegetationSpawnerSystem_62FF658E_LambdaJob_0_Job.OriginalLambdaBody (Unity.Entities.Entity ent, Orbis.Components.QuadtreeLodNode& lodNode, Orbis.Components.QuadtreeLODLevel& lodLevel, Unity.Transforms.LocalToWorld& ltw, Orbis.Components.FloatingOriginRepositionTag& floatingTag, Orbis.Components.NodeSettings& nodeSettings, Orbis.Components.QuadtreeRoot& rootRef) (at Assets/Orbis/Orbis_Terrains/Scripts/VegetationSpawnerSystem.cs:64)
    4. Orbis.VegetationSpawnerSystem+VegetationSpawnerSystem_62FF658E_LambdaJob_0_Job.Execute (Unity.Entities.ArchetypeChunk& chunk, System.Int32 batchIndex, System.Boolean useEnabledMask, Unity.Burst.Intrinsics.v128& chunkEnabledMask) (at Temp/GeneratedCode/NewAssembly/VegetationSpawnerSystem__System_14942495870.g.cs:184)
    5. Orbis.VegetationSpawnerSystem+VegetationSpawnerSystem_62FF658E_LambdaJob_0_Job.Unity.Entities.IJobChunk.Execute (Unity.Entities.ArchetypeChunk& chunk, System.Int32 unfilteredChunkIndex, System.Boolean useEnabledMask, Unity.Burst.Intrinsics.v128& chunkEnabledMask) (at <ff9bfe52bcad4875a0b52966873ba6f9>:0)
    6. Unity.Entities.JobChunkExtensions.RunByRefWithoutJobs[T] (T& jobData, Unity.Entities.EntityQuery query) (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/IJobChunk.cs:267)
    7. Unity.Entities.InternalCompilerInterface+JobChunkInterface.RunByRefWithoutJobs[T] (T& jobData, Unity.Entities.EntityQuery query) (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/InternalCompilerInterface/InternalCompilerInterface.cs:259)
    8. Orbis.VegetationSpawnerSystem.VegetationSpawnerSystem_62FF658E_LambdaJob_0_Execute (Unity.Entities.EntityCommandBuffer& commandBuffer, Unity.Jobs.JobHandle& scheduledJobs, Unity.Entities.EntityCommandBuffer+ParallelWriter& parallelBuffer) (at Temp/GeneratedCode/NewAssembly/VegetationSpawnerSystem__System_14942495870.g.cs:252)
    9. Orbis.VegetationSpawnerSystem.OnUpdate () (at Assets/Orbis/Orbis_Terrains/Scripts/VegetationSpawnerSystem.cs:38)
    10. Unity.Entities.SystemBase.Update () (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/SystemBase.cs:418)
    11. Unity.Entities.ComponentSystemGroup.UpdateAllSystems () (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/ComponentSystemGroup.cs:708)
    12. UnityEngine.Debug:LogException(Exception)
    13. Unity.Debug:LogException(Exception) (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/Stubs/Unity/Debug.cs:19)
    14. Unity.Entities.ComponentSystemGroup:UpdateAllSystems() (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/ComponentSystemGroup.cs:713)
    15. Unity.Entities.ComponentSystemGroup:OnUpdate() (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/ComponentSystemGroup.cs:666)
    16. Unity.Entities.SystemBase:Update() (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/SystemBase.cs:418)
    17. Unity.Entities.ComponentSystemGroup:UpdateAllSystems() (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/ComponentSystemGroup.cs:708)
    18. Unity.Entities.ComponentSystemGroup:OnUpdate() (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/ComponentSystemGroup.cs:672)
    19. Unity.Entities.SystemBase:Update() (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/SystemBase.cs:418)
    20. Unity.Entities.DummyDelegateWrapper:TriggerUpdate() (at ./Library/PackageCache/com.unity.entities@1.0.0-pre.65/Unity.Entities/ScriptBehaviourUpdateOrder.cs:526)
    In both cases the terrain is not displayed.
    I have not yet tried to create my own terrains based on these so I'm not sure if this a demo issue or an actual issue in this version.
    The Flat Terrain demo on the other hand is working as desired.

    PS: All required packages are imported (Entities/Graphics/Physics), unsafe code checked in Project Settings. Unity 2022.2.15

    PS2: It seems the error is related to the VegetationSpawnerSystem, but checking the subscene in both demos which don't work the Vegetation Settings list is empty, on the other hand the Vegetations Settings list does have 1 element in the Flat Terrain which works, so I'm wondering if the issue is that the system is being invoked even though it should not be when the list is empty.

    PS3: I've added an element to the vegetation settings list of each prefab in the subscene of the non working demos, left the element empty (no prefab set or other settings) and when playing other than a few errors which I think are related to the empty prefab, the terrain is now displayed and the spammed error is gone, so I can confirm the issue is related to the fact the system is running the SpawnVegetationJob when it should not.
     
    Last edited: Apr 20, 2023
  27. davidus2010

    davidus2010

    Joined:
    Dec 4, 2017
    Posts:
    68
    Hm, thanks for reporting this issue. I sometimes got this error when the entity subscene is not loaded. Can you check if the subscene has the little checkmark in the inspector when you get this error?