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. Unity 2022.2 is now available as the latest Tech release.
    Dismiss Notice
  3. We are making some changes to the DOTS forums.
    Dismiss Notice
  4. Have a look at our Games Focus blog post series which will show what Unity is doing for all game developers – now, next year, and in the future.
    Dismiss Notice

[RELEASED] CityGen3D - Procedural Scene Generation From Real World Map Data

Discussion in 'Assets and Asset Store' started by CityGen3D, Jul 8, 2020.

  1. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677

    After a long and successful Beta I can finally announce that CityGen3D has been released on the Unity Asset Store!

    You have a great idea for a game, but no environment to prototype it in?
    With CityGen3D you can select any location in the world and have a 3D scene based off that location in just a few minutes.
    More than just a real-world terrain generator, CityGen3D can also generate complex road networks and building exteriors with no coding, all from within the Unity Editor.

    Take a look at this video to see how easy it is to go from a blank scene to explorable 3D environment in just a few button clicks:


    But what if you want to make changes to the 2D map data before generation. Or even not use OpenStreetMap data and draw your own 2D map instead?
    CityGen3D is also a fun level design tool that allows you to add/remove/edit 2D map objects before converting the 2D map into a 3D scene.

    Also, because you can hook up CityGen3D to your own prefabs and textures, you can use it to make all types of project in your very own art style.

    I'm really excited to see all the great projects you will all make with CityGen3D!


    Key Features:

    ☑ Worldwide coverage from OpenStreetMap.
    ☑ Easy to use interface with no coding required.
    ☑ High Definition Render Pipeline (HDRP) package with materials and shaders all set up for you.
    ☑ Import real world terrain heightmaps from NASA.
    ☑ Perlin Noise heightmaps.
    ☑ Automatic terrain texturing for different map surfaces.
    ☑ 2D map editing functionality for custom map creation.
    ☑ Automatic generation of roads using a combination of procedural geometry, terrain modifications, and decals.
    ☑ Automatic levelling of terrain for roads and buildings.
    ☑ Easy to use terrain smoothing.
    ☑ Procedural buildings with auto LOD levels.
    ☑ Spawning of roadside prefabs such as street lighting.
    ☑ Instantiate entities such as post boxes, litter bins, and power towers.
    ☑ Mesh extrusion for features like railways, fences and guard rails.
    ☑ Define different biomes to have trees and terrain details automatically applied to terrains.
    ☑ Water meshes for oceans and lakes.
    ☑ Built-in support for large environments with scene streaming and world origin shifting.
    ☑ Some operations multithreaded for faster generation of environments.
    ☑ Selection of textures & prefabs included and all setup for demonstration in Unity’s built-in renderer.
    ☑ Fully customizable to use your own textures and meshes, so useful for all types of project.
    ☑ Call CityGen3D functions from script using the advanced API.
    ☑ Ever expanding documentation that is freely available to view from the website before purchase.


    Limitations:

    CityGen3D is massive in scope and has a lot of functionality. It is already being used by lots of developers for various different projects.
    However, it's also worth pointing out it's current limitations and where there's scope for future development:
    • It wont generate bridges or tunnels yet, this is a key planned feature for the update cycle but no ETA yet.
    • There's no built in support for traffic. The core CityGen3D product is based around geometry creation. A separate AI traffic and pedestrians module may come later. At the very least, support for a popular third party traffic system will be made available, but no ETA on this either yet.
    • CityGen3D generates scenes within the Editor at design time. It is not for generating scenes on demand at run-time. However large environments can be pre-generated and streamed in at run-time using the built-in scene streaming functionality of the Landscape Manager.
    • URP is not officially supported yet, but a URP package should be available soon in a future update. (HDRP package is now included in Packages folder inside your download).
    • Although the manual is around 30 pages long, some features are not fully documented yet. Buildings and Map Editing in particular are currently being documented more thoroughly as priority.
    Please see the Roadmap on the website for more information regarding future plans, and let me know if you have any feature requests.

    screenshot0.png
     
    Last edited: Jan 9, 2022
    Rewaken, Edy, StevenPicard and 2 others like this.
  2. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Here are some of my favourite videos showing off CityGen3D!

    Driving around Millbank, London (Car from Edy Vehicle Physics, not included)


    Scene streaming test in Manhattan


    Driving around a hilly Andorra (Car from Edy Vehicle Physics, not included)


    Here are some tutorials looking at CityGen3D specifics:

    2D Map editing


    Scene streaming set up
     
    Last edited: Aug 31, 2020
    Edy likes this.
  3. kns1966

    kns1966

    Joined:
    Nov 6, 2016
    Posts:
    13
    Congratulations.

    You might want to point to this new thread from the other as well as your store page.
     
    CityGen3D likes this.
  4. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Thanks very much!
    Yeah I just had one more reply to send this morning on that thread before sending people this way :)
     
  5. Bartolomeus755

    Bartolomeus755

    Joined:
    Jun 20, 2013
    Posts:
    283
    Great news, congrats to the release of this fantastic asset.
     
    CityGen3D likes this.
  6. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Thanks, it's taken a while to get this far!
    A lot of hard work, but also a really fun project to work on.

    Note the top folder was the 19th revision of the first prototype. So I must have started early 2016, possibly 2015 on the original concept.

    old.png

    Then as you know, first public release in November 2018.
    And now finally at v1.00 on the Store! :)
     
    Rewaken and Bartolomeus755 like this.
  7. chmodseven

    chmodseven

    Joined:
    Jul 20, 2012
    Posts:
    108
    I'm skimming through the new documentation. One thing that's been slipping my mind to mention for a while is a small gotcha in the recommendation to delete the CityGen3D folder whenever upgrading to a patch. This will also as a consequence cause the loss of the CityGen3D/Resources/Data folder, where users may have added SRTM and Coastlines data for building up terrains. It isn't really a problem if people are careful, but might be worth mentioning in the doco that we have to be mindful of manually retaining any data (or other changes, like adding materials, prefabs, etc) in the project folder hierarchy under that folder. Maybe down the track there could be a separation of the folder structure into necessary official CityGen3D files that can be deleted and recreated for updates, and a sibling folder for user data and additions - perhaps the pathing could even search under both the official files and the user data path as a best of both worlds.
     
    CityGen3D likes this.
  8. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Yeah in recent months I’ve taken steps to move other data areas such as Terrain, Scenes and Databases into folders outside of the asset for this very reason. So I think it’s a good idea to do the same for the other things you mention as well, so I’ll look into that.

    To be honest I wasn’t expecting to get approval in under 10 days (Big thanks to Asset Store team for fast turnaround!).
    Therefore I’m still hard at work on adding to the docs (especially re buildings and map editing). So should be more stuff to read through in next update
     
    StevenPicard and chmodseven like this.
  9. StevenPicard

    StevenPicard

    Joined:
    Mar 7, 2016
    Posts:
    829
    As one of the earliest purchasers of this asset I can attest to how cool this is. It's fun to just even play around with.

    Good work on this and congratulations on getting it into the store!
     
    CityGen3D likes this.
  10. chmodseven

    chmodseven

    Joined:
    Jul 20, 2012
    Posts:
    108
    Hi Richard,

    Do you have any existing API calls for converting a Unity position into a GeoCoord? I am hoping there is something like that (presumably driven via some offset from the origin value in the Landscape) where a given Vector3 position within the Unity landscape's bounds can get converted accordingly into a WGS84 coordinate.

    Reason I need it is that I'm converting my old Google StreetView panorama-syncing code to work with CityGen3D and that's the last missing piece:

    2020-07-10 20_45_57.png
    You can see in the above where the offset value is pretty far off the mark. I used to have some logic which corrected the rotation and bumped the Unity camera to the exact lat/long from the metadata, but that only works on the assumption of being able to move the camera to the equivalent spot in Unity.

    If there isn't an existing function then no worries, I can probably endure the horrors of projection maths again and figure one out, but it'd be great if I could just plug one in ready to go. Once it's working, I'd be happy to comment up and share the script on here if anyone else wants to use it.
     
    CityGen3D likes this.
  11. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    This is a reference to your chosen lat/lon location:

    Code (CSharp):
    1. GeoCoord location = Map.Instance.data.origin
    But you can also offset it in Unity world space with the x and y parameters like this.
    For instance, if you wanted to know the lat/lon of [200,0,400] in Unity:

    Code (CSharp):
    1. GeoCoord location = Map.Instance.data.origin.GetLocation( 200, 400 );
    Hope this helps, be great to see the end result if you get it to work!
     
  12. chmodseven

    chmodseven

    Joined:
    Jul 20, 2012
    Posts:
    108
    Thanks, that's what I was after. I did see that function before, but I wasn't sure what the units of measurement were so it didn't occur to me that it might be the one. Here's how it looks with a dockable StreetView editor window moving in sync with my player camera script:

    capture.gif

    It's never going to be 100% positionally or rotationally accurate, of course, but it's a rough way of verifying the scene against the reality. I used to have some code in my old script that would reposition the camera more precisely based on the panorama metadata's lat/lon (which covers a bounding box based on where the Google car was that applies to whatever lat/lon you search for). I might try and get that working with the new version and then I'll clean up the scripts at some point and pastebin them up on here.
     
  13. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    So cool! Nice work :)
     
  14. chmodseven

    chmodseven

    Joined:
    Jul 20, 2012
    Posts:
    108
    Hi all,

    I have finished tidying up my StreetView sync scripts and am happy to share them with our new CityGen3D community.

    You'll need these two scripts:

    https://pastebin.com/ECJrCuZE
    https://pastebin.com/9QddEC69

    Setup and usage instructions are in the first file's comments, and you will also need a free Google Cloud Platform developer account so that you can paste your Street View Static API key in the inspector. It's been a while since I set my key up, so I don't recall the step by step of how to hook it all up, but it shouldn't be too hard to figure out. Keep in mind that the free tier has a limit - from memory it's something like $7 per 1,000 tile views (each panorama you load or reload is 6 tiles worth) and you get your first $200 per month of usage free - so do the maths and keep an eye on your usage in the developer console to make sure you don't exceed that and cross over into paid.

    Enjoy!

    2020-07-12 15_26_32.png
     
    IrishDev, Steve-3d, Rewaken and 2 others like this.
  15. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Great stuff!
    Thanks for sharing your work on this.
    I will try it out myself when I can. :)
     
  16. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    CityGen3D isn't just for city environments. There's a powerful terrain generator too!

    So I thought I'd revisit a location from one of my early tests to take some screenshots for the Water module on the website, which is currently absent.

    As a result, here's the island of St. Mary's, procedurally generated from OpenStreetMap with CityGen3D v1.0

    screenshot23.png
     
    Bartolomeus755 and StevenPicard like this.
  17. eolson

    eolson

    Joined:
    Oct 6, 2017
    Posts:
    11
    Hey CityGen3D amazing work! Do you have any reference on corporate proxy issues and how to solve them? I'm not able to see the openstreetmap viewer and am hit with an Error HTTP/1.1 401 Unauthorized when I try to download the data source.

    upload_2020-7-15_14-5-36.png
     
  18. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Hi,

    Thanks very much!

    Are you able to access OpenStreetMap from a browser outside of Unity?

    As I recall, during the beta only one user reported problems downloading OSM from within Unity, but we worked out that the queries still worked in a browser.
    So I implemented a data import system whereby the same query is run in your browser and you simply reference the downloaded file.

    So hopefully you can get round this by selecting XML as your Source on Location panel.
    Then copy the query into your browser, which will download the data to a file.
    This file should then be dropped into your project and referenced in the appropriate field on Location panel.
    Then you click Import button and proceed to Process data as your would if you had downloaded it from within Unity.

    Please let me know if this helps in your case. But if your network admin is blocking OSM completely then that is a tricky one!
     
  19. eolson

    eolson

    Joined:
    Oct 6, 2017
    Posts:
    11
    It looks like I can import the xml file and that imports successfully, however I still cannot view the map, in the editor viewer. I also do have access to openstreetmap the website on network

    upload_2020-7-15_14-48-38.png

    upload_2020-7-15_14-48-5.png
     
  20. eolson

    eolson

    Joined:
    Oct 6, 2017
    Posts:
    11
    Map processed with offline xml query following that link! However, the mini preview isn't there in the editor, which is alright, but now when i hit load generator, it does not show all those little generator steps that I saw in the tutorial video!
    upload_2020-7-15_15-1-3.png

    upload_2020-7-15_15-0-39.png
     
  21. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Regarding the Location Picker Map not working, it does sound like your Unity web requests are being blocked by your network for some reason.
    If you are on a corporate network your admin may have an idea of why that is.
    But CityGen3D will operate with full functionality with no Location Picker Map, you'll just have to manually set Lat/Lon coords for your locations and use Import data workflow, as you have done. You may also want to minimise the Map display by clicking the little arrow next to "Map" on the Location panel. This may stop CityGen3D from trying to download the images.

    After you click Process you should be able to see lots of child objects under the CityGen3D object in the Hierarchy.
    This means the map has been processed.
    It should then be possible to view the interactive 2D map by putting Scene view into Map view (Tools->CityGen3D->Toggle Map View).
    When map view is active your scene view tab will be named "Map".

    Do you have a Generator object in your Hierarchy? This should have appeared when you clicked Load Generator and is the only prerequisite for the Generator Actions being listed.
     
    Last edited: Jul 15, 2020
  22. jeffmorris1956

    jeffmorris1956

    Joined:
    Jul 3, 2012
    Posts:
    276
    If I go to OpenStreetMaps website and export an area to map.osm file, in the Data Source window, there's XML in the dropdown list but I can't put map.osm in the filename textbox. Is this a bug?
     
  23. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    No the XML import is designed for the workflow described in this post.
    https://forum.unity.com/threads/rel...from-real-world-map-data.927984/#post-6094167

    Copying the query from the Location panel ensures you have the data required for the currently selected terrain tiles for your location.

    Its only practical benefit is therefore for users that aren’t able to do web queries from within Unity Editor due to network restrictions and need to perform the same queries in a browser instead.
     
  24. eolson

    eolson

    Joined:
    Oct 6, 2017
    Posts:
    11
    So the generator is in the scene, it was created once i hit load generator, however the additional options still do not pop up.
    upload_2020-7-16_7-32-24.png upload_2020-7-16_7-32-34.png
    upload_2020-7-16_7-32-43.png
     
  25. eolson

    eolson

    Joined:
    Oct 6, 2017
    Posts:
    11
    I've tried manually populating the generator actions, however it seems all of the meta data in the generator editor is blank, missing assigned prefabs for buildings,tree's, water, etc.

    EDIT: Just did a test on 2019.1.1 and that seems to work, the generator loads correctly and no prefabs are missing. I would check Unity 2019.3.0f6 is the version I was using, with the big editor UI look change, that might have caused an issue?
     
    Last edited: Jul 16, 2020
  26. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Sorry to hear you are having problems, but I'll try and get you up and running as soon as possible.

    Please can you take a look at the Generator prefab in the Resources/Prefab folder.
    Does it have a populated actions list?

    If it doesn't then it sounds like something has gone wrong on importing the package for some reason. If that's the case please confirm your Unity version and try again in a new project (installing Burst (etc) first).

    If the actual prefab looks fine then just load the New City scene again and start the process from the beginning to import the data, Process it, and the Load Generator.
     
  27. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    New video showing the map editing functionality a bit more closely!
    It even has my (rather quiet) voice in it. I'll try and make the next video a bit louder :)
    Nonetheless, its a good introduction for learning how easy it is to create a fictional 2D map and have it generated for you in 3D using CityGen3D.

     
    chmodseven likes this.
  28. eolson

    eolson

    Joined:
    Oct 6, 2017
    Posts:
    11
    Up and running now! I do have to manually enter in the min / max lat lon into the url as it does not auto update on lat lon entry, but only when pressing buttons to move the tiles etc. I do have it up and running though, and am using openstreetmap as a reference for bounds. It would be nice to manually enter in the min and max latitude locations after uploading my xml file. 2019.1 does work though and this is an amazing product! Thanks for the fast replys
     
    CityGen3D and chmodseven like this.
  29. chmodseven

    chmodseven

    Joined:
    Jul 20, 2012
    Posts:
    108
    Yes I seem to recall puzzling over a similar linking issue a while back, and I think I came to the conclusion that if you create the generator before processing the Data tab, then those objects don’t yet exist in the hierarchy and so the Generator has the refs as blank. Doing it all in correct sequence works, but if that step is out of order then I believe deleting the generator and re-adding it after processing Data should fix it. I’m not at my pc to verify right now, so all of that might be wrong.
     
    CityGen3D likes this.
  30. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Glad to hear you are up and running. Yeah, I'll have another look at the Import workflow. It hasn't had much use up to now so there may be one or two things I can do to improve it and make it less open to issues.

    Thanks for the additional info. I'll run some tests here ahead of next update.
     
  31. eolson

    eolson

    Joined:
    Oct 6, 2017
    Posts:
    11
    Now that i'm up and running! Apologies for all the questions, but do you have any solutions for runways? Is this apart of the "Generate Roadside Objects" process. or is it during "Highways"?
    upload_2020-7-16_9-33-42.png
     
  32. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Runways are just considered to be a type of road, so Generate Highways will add more detail, such as road markings.
     
    eolson likes this.
  33. Ervalord

    Ervalord

    Joined:
    Mar 26, 2020
    Posts:
    2
    Hey, what a nice asset!
    Whould you consider to start a Discord for CityGen? I think it will improve support and giving you a active community in a easy way!
     
    chmodseven and CityGen3D like this.
  34. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Thanks very much!
    I actually installed the Discord client yesterday, so this is something being looked at :)
     
  35. jeffmorris1956

    jeffmorris1956

    Joined:
    Jul 3, 2012
    Posts:
    276
    How do I edit terrains/landscapes that are already processed and generated? How do I create new materials in splatmap window?
     
  36. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Once you have created an environment using CityGen3D you are able to modify all aspects of it using normal Unity workflow (eg using Terrain tools, or moving prefabs).
    Where possible its a good idea to modify 2D map to your design and have CityGen3D regenerate the environment for you, but it really depends on what specifically you want to do.

    Splatmap window is for assigning terrain textures to different surface types.
    A terrain texture can be any seamless texture you want, it's just a case of dragging an appropriate material into the list.
    To add another slot just press the + button at the bottom of the Terrain Materials list.
     
  37. jeffmorris1956

    jeffmorris1956

    Joined:
    Jul 3, 2012
    Posts:
    276
    How do I modify 2D map to your design and have CityGen3D regenerate the environment? Pressing CTRL-M sends me to 2D map for the last group of terrains/landscapes. How do I get 2D map for a group of terrains/landscapes?
     
  38. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    If your entire game world is really massive (I think in your case it is?), then for the same reasons that you don't create your entire map in one session, you can't also edit it all in the same session. There would just be too much data for Unity to handle all at once.

    Instead, you can go back and make changes to a specific region.
    You won't need to download the OSM data again because it's saved as a database asset. So by selecting Data Source as Database and finding the database for a specific region, you can load the data in.
    They are named after tile references, which indicate the south-west most terrain like "[name, x/y]" and will be as big as your Area size (eg 16 terrains with 4 Area size).

    Having loaded it you would then need to Process again to give you the 2D map. Then you can use the Map Editor to make changes before regenerating those Landscapes again.

    If you want to preserve 2D map data then you should save this as a scene.
    To be honest, I think there's scope for workflow improvements here, so I'm open to suggestions regarding optionally preserving the link between 2D and 3D data after scene generation.
    Perhaps being able to copy the data over as a child of a Landscape itself, or something like that, so 2D data simply loads with the Landscape may make sense.
    As more and more users start to push CityGen3D to the limits I think we'll be able to decide what could help here.


    If you simply want to make changes directly on the 3D terrains, then you can just load the scenes for whichever Landscape you want to edit.

    There is a handy Load Available Scenes option in Tools->CityGen3D menu, which will batch load all scenes for your current project. This could be improved in future to only load scenes linked to the current database selection.

    Edit: Actually I looked today and the Load Available Scenes menu item does already only load landscapes in relation to the active database, so it does help with the workflow if you need to go back and make changes to an earlier generated region.
     
    Last edited: Jul 29, 2020
  39. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Here's an early peek at the work-in-progress Vegetation Studio Pro integration.
    This will allow you to link CityGen3D map surfaces (either from OpenStreetMap or custom ones) to Vegetation Studio biomes and have biome masks created for selected terrains automatically with one button click.

    vsp.png
     
  40. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    After one month on the Asset Store, it’s been great to see so many new people enjoying CityGen3D and we have been riding high on the top new assets chart, so thank you for your support.

    Feedback has been overwhelmingly positive, but one of the key areas we’ve been looking at improving is the map processing speed for larger environments.
    Work is nearly complete on v1.01, which includes optimisations in this area so you should find larger maps process much quicker, which I’m sure will be a welcome improvement.

    Other notable changes include water generation fixes, so plenty to look forward to later this month! :)
     
  41. Barritico

    Barritico

    Joined:
    Jun 9, 2017
    Posts:
    363
    Hi.

    Error when click on download button:

    XmlException: The 'div' start tag on line 148 position 8 does not match the end tag of 'ul'. Line 151, position 9.
    System.Xml.XmlTextReaderImpl.Throw (System.Exception e) (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlTextReaderImpl.Throw (System.String res, System.String[] args) (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlTextReaderImpl.ThrowTagMismatch (System.Xml.XmlTextReaderImpl+NodeData startTag) (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlTextReaderImpl.ParseEndElement () (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlTextReaderImpl.ParseElementContent () (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlTextReaderImpl.Read () (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlLoader.LoadNode (System.Boolean skipOverWhitespace) (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlLoader.LoadDocSequence (System.Xml.XmlDocument parentDoc) (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlLoader.Load (System.Xml.XmlDocument doc, System.Xml.XmlReader reader, System.Boolean preserveWhitespace) (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlDocument.Load (System.Xml.XmlReader reader) (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    System.Xml.XmlDocument.LoadXml (System.String xml) (at <1d98d70bb7d8453b80c25aa561fdecd1>:0)
    CityGen3D.EditorExtension.EditorOSM.Process (System.String textInput, System.Boolean imported) (at C:/Dev/CityGen3D/CityGen3D Editor/Editor/EditorOSM.cs:152)
    CityGen3D.EditorExtension.EditorOSM+<Generate>d__0.MoveNext () (at C:/Dev/CityGen3D/CityGen3D Editor/Editor/EditorOSM.cs:58)
    UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at <a979f18d51af41179d12b797e8c5be14>:0)

    Thanks!!!
    Unity version 2019.4.4f1

    citygen_error.png
     
  42. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Hi,

    It looks like you may have changed the OSM URL setting.
    You rarely need to modify that because its a server address and not unique to your chosen location.
    If you change it to the default setting which is https://www.overpass-api.de/api/ it should be fine.
     
    Barritico likes this.
  43. Barritico

    Barritico

    Joined:
    Jun 9, 2017
    Posts:
    363

    Wow.
    Incredible speed.
    It works perfectly.
    Thank you!!!
     
    CityGen3D likes this.
  44. HeadClot88

    HeadClot88

    Joined:
    Jul 3, 2012
    Posts:
    719
    So - For people on the fence about this asset. Get it. It is 100% worth the asking price :)

    I would write a review on the Asset store page but I purchased it directly from @CityGen3D website :)
     
    CityGen3D likes this.
  45. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    The first Asset Store update is now live.
    You can download v1.01 which has the following changes:
    • Optimized building processing resulting in much faster 2D map processing from OSM data, especially for larger regions with lots of buildings.
    • Recursion setting for OSM processing (see manual for more info).
    • Fix for coastline processing so parsing JSON works regardless of computer region settings.
    • Improved water mesh generation and a few more settings and workflow improvements.
    • Double sided water shader.
    • Fixed bug during generation when Scene view was not present.
    • GetPositions function for buildings, roads & features for easy data access.
    • Auto Clear for map processing to avoid unwanted data retention from previous region.
    • Find button on Inspector to link between 2D and 3D buildings for easier editing. (Currently only works when Landscapes are not saved as separate scenes, but will improve in future to cover this, and extend functionality to other map objects).
    • Rebuild building fix after changing it's shape.
    • New road marking length setting and default road markings set up for runways and taxiways.
    • Fall back on Perlin Noise heightmap settings if HGT file is missing for location.
    • Prevent features from overlapping roads.
    The manual chapters on Map Editing and Buildings aren't quite ready, but I didn't want to keep the processing speed optimizations all to myself for longer than necessary.
    So the updated manual will come a bit later (although there are a few changes, so its worth checking that out to).

    As always, please ensure your project is backed-up before applying any update.

    screenshot1.png
    screenshot3.png
     
    Last edited: Aug 17, 2020
  46. kns1966

    kns1966

    Joined:
    Nov 6, 2016
    Posts:
    13
    This looks like an excellent update!
     
    CityGen3D likes this.
  47. jeffmorris1956

    jeffmorris1956

    Joined:
    Jul 3, 2012
    Posts:
    276
    Water doesn't appear in 2D view and 3D view.
     
  48. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    677
    Assuming you mean ocean water, you now simply generate that separately using the Generate Ocean button on Generator-Water window.

    This will give you an Ocean plane that you can position vertically as appropriate.

    Coastline processing is still required as normal to identify land masses, this is purely to simplify the generation of the sea itself.

    The Coastline section of the manual has been updated to indicate what correctly processed ocean looks like against what it looks like when you haven’t used a Coastline JSON.

    Rivers and in land lakes should show up in 2D as they did previously.

    The main reason for the change of approach becomes apparent if you want to edit the coastline in the Map Editor.
    Previously you had to edit the landmass shape and then make the same change to the ocean shape.
    Now you just change the shape of the coastline in the map editor and the ocean is automatically just the inverse of that.

    If you are referring to a missing inland body of water that you were getting previously, change Recursion setting on Location panel to CompletedWaysAndRelations and click Process again. (The doc explains this new setting in a bit more detail too).
     
    Last edited: Aug 17, 2020
  49. jeffmorris1956

    jeffmorris1956

    Joined:
    Jul 3, 2012
    Posts:
    276
    I thought that it was a bug. Ocean water doesn't show up after clicking on "Run Generator" button. I'll use the "Generate Ocean" button on "Generator-Water" window.
     
    CityGen3D likes this.
  50. a1835850

    a1835850

    Joined:
    Feb 23, 2020
    Posts:
    4
    Hi, there is a small question. Why some buildings are not processed and built in CityGen? (despite the fact that they are in OSM). Maybe this is due to their complex shape?