[RELEASED] DOTS Traffic City

DOTS Traffic City is a powerful tool for creating city traffic based on any Asset Pack using a high performance DOTS Entities package.

Now available in the Unity Asset Store.


- Mobile friendly. Simulate thousands of interacting vehicles and pedestrians even on mobile.
- Performance. Try a demo project depending on your platform to test performance. View the latest screenshots to see performance results.
- Rapid integration. Integrate any city Asset Pack in 20 minutes using convenient templates and tools.
- Simulation. Simulate thousands of entities without using physics or raycasting (physics simulation is also available).
- Editor. Many flexible tools to create the city of your dreams.
- Demo. GTA like sample scene included!
- Sound. Integration of the FMOD sound engine into bursted jobs.
- Documentation. All components of DOTS City are linked to online documentation.
- Source code. All code included.
- Pre-made templates. Use pre-built road templates for your favourite cities (POLYGON City, City Pack 1, Toon City) in one click.
- 3rd party. More 3d party integrations in the near future.
- New sample scene coming soon.
- More info read in the Asset Store Page.

5 Likes

Release Notes:
[1.0.2] - 25-03-2024

Added

- New movement randomization speed for pedestrians.

Fixed

- A rare build crash caused by the area trigger system.
- Fixed the pedestrian physics runtime option in the build.
- Mobile input for build.

[1.0.1b] - 22-03-2024

  • Traffic mask settings editor fix.
  • Script refactoring.

[1.0.1] - 20-03-2024

  • Missing script hotfix.

Very very cool. Can you set curved paths or splines for cars and people to follow, or is it only straight lines basically? And would it be possible to have say stadiums full of people using this? And can there be different animations per person.


For cars, there are a few options: straight lines, cube Bezier curves, quad Bezier curves.
For people only straight lines.
About animation, each unique animation produces an extra drawcall, but you can use a pool of unique animations so that groups of people will use the same shared animation, but different groups will have different animations. It's important to find a balance between uniqueness and drawcalls. Btw the trailer shows this technique.

Shared animations, example #1:
0:43
Each time unique animation is taken from the pool, but if all animation in use, it will take already in use animation.

Only unique animations, example #2:
0:53
When the pedestrian starts to sit on the bench, the unique animation for him will be taken from the pool, if there is no animation available, a warning will appear in the console.

Preset settings example.

Splendid, I have my own system that works great for the cars, but I do like the look of your system, I will have to watch the videos again. My system did allow for cars with trailers and articulated trucks, also had a parrallel parking option and systems for rail road crossings etc. Are any of those on the roadmap?

1 Like


Trailers, trucks, rail system will be in a couple of months, I think.

Really nice DOTS oriented project.
Pretty well executed. Well done :)

1 Like

Looks pretty cool. Is there obstacle avoidance for the pedestrian system planned?

1 Like


Currently, the pedestrian can avoid static objects (using the NavMesh quiring) & vehicles (using NavMesh quiring or my lightweight avoidance algorithm), but can't avoid each other (on the roadmap).

1 Like

I've put together several projects that have lots of pedestrians walking around similar to your asset (not with impressive # and magnitude that DOTS allows). There is one quick a dirty way that I've used in the past that you might be able to use in your existing demo videos because the pedestrians walking through each other is the first thing I noticed. It does look like what you have right now would work great for bird's eye view city builder type projects. city skylines / sim city type projects, but not FPS or closer third person games

Anyways, you might be able to fix this with what you've already got, but by making "lanes" for your pedestrians via waypoints. This can look somewhat sterile if you only have two lanes and a simple implementation (without obstacle avoidance) requires them to walk all have to walk the same speed, but it can keep them going through each other without any additional overhead. You can also use root motion optionally for this which avoids difficulty of using navmesh with repositioning to origin for really LARGE worlds.

I really like the direction your asset is going and I would be interested in a fully fleshed out pedestrian system on the store. Anyways, it's looking great, keep it up. I love optimized assets and I wish there was more awareness of how important they are. I wish you success! Cheers!

1 Like

Release Notes:

[1.0.3] - 29-03-2024

Added

  • Added GPU animation transition preview.
  • New optimized shaders for crowds.
  • GPU data preparation for LODs.
  • New user-friendly animation shader playback control.

Changed

  • Update to Entities 1.2.0
  • GPU animation baking and playback algorithm for better memory texture layout.
  • Improved GPU transition animations.

Release Notes:

[1.0.4] - 04-04-2024

Added

  • New align custom straight road feature along the surface.
  • New animation baker clip binding.

Fixed

  • Path recalculation for custom straight roads.
  • Re-creation of the road segment with custom user orientation.
  • Fix waypoint info display for road segment in some cases.

Changed

  • Improved snapping for custom road segments.

[1.0.3b] - 01-04-2024

  • First init editor hotfix.
  • Path baking validation fix.

Release Notes:
[1.0.5] - 15-04-2024

Added

  • New multi-mesh customization support for GPU animations.
  • New custom attachments support for GPU animations.
  • New custom GPU animation option for selected pedestrians .
  • Integration for custom player vehicle controller plugin which controlled by MonoBehaviour script [experimental].

Fixed

  • Animation GPU baking with animated parent.
  • Fixed physics surface cloning tool in some cases.
  • Traffic spawn fix in some cases.
  • Fixed obstacle detection for reverse or arc paths.
  • Static physics culling.

Changed

  • Traffic lights are disabled by default for straight road templates.
  • Removed obsolete options for Car Prefab Creator.

Release Notes:
[1.0.6] - 22-04-2024

Added

  • New connection type for Path Creator.
  • New traffic light customizations for Road Segment Creator tool.
  • New crosswalk node shape option for Road Segment Creator.
  • New state utils methods for pedestrian.

Fixed

  • Fixed path connection for Path Creator in some cases
  • Fix for traffic light duplication when editing a road segment in the subscene.

Changed

  • UX improvement for Path Creator.

Release Notes:

[1.0.7] - 24-05-2024

Added

  • New auto-spline option for Bezier curves in the Path Creator.
  • New extrude lane option for Custom segment road in the RoadSegmentCreator.
  • New divider line for Traffic nodes & Custom straight roads.
  • New components to interact with Hybrid pedestrians from MonoBehaviour's.
  • Custom ragdoll user's support for Hybrid pedestrians.
  • New custom IDs for vehicles in the Car Prefab Creator.
  • New car model selection list for the player spawner when the player is spawned in the car.
  • User's custom camera integration.

Fixed

  • Fixed Pedestrian node connection on custom terrain shapes in the Pedestrian node creator.
  • Fixed auto-switch type for oneway paths in the Path Creator.
  • Player spawn, if the player originally spawned in the car.
  • Fixed a potential Type mismatch error for animation clips in Animation Baker which could cause the UI to break.
  • Fixed a potential NaN position for pedestrian in the Antistuck system.
  • Fixed traffic spawner for the path with 0 index.
  • Fixed compatibility with Unity 2023.2.

Changed

  • Pedestrian node scene filtering updates when node settings are changed in the Pedestrian node creator.
  • PedestrianReferences component renamed to PedestrianEntityRef.

Release Notes:

[1.0.7d] - 06-06-2024

Added

  • Create & connect Pedestrian nodes in the prefab scene.
  • Added gradle config for Android for Unity 6.
  • Added support Cinemachine 3.0+.

Fixed

  • Fixed Unity package dependency resolving for the first time can cause endless script compilation.
  • Custom straight road may have null traffic nodes due to initial creation in some cases.
  • Fixed Custom straight road oneway path generation with multiple lanes.
  • Fixed Custom segment path surface snapping.
  • Fixed Pedestrian node creator losing sceneview focus, causing the hotkey for it to be disabled.
  • Animation baker minor UI fixes & improvements.

[1.0.7c] - 31-05-2024

Fixed

  • Fixed package initilization window doesn't load in some cases.
  • Fixed package initilization window appears randomly on Mac OS.

[1.0.7b] - 29-05-2024

Added

  • Auto bootstrap option for single scene.
  • Bootstrap logging.
  • Entity road drawer for the editor time.

Fixed

  • Car prefab creator ID duplicate error.
  • Script defines after the project update.
  • Input in the custom vehicle test scene.
1 Like

does the asset support left hand drive for vehicles?


Hi, left hand drive is not supported at the moment.