Skip to content

Versatile Unity package for pedestrian simulation, featuring a simple setup and a customizable behavior.

Notifications You must be signed in to change notification settings

Nuggets10/Pedestrian-Navigation-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📦 | Pedestrian Navigation System

Pedestrian Navigation System is a versatile Unity package for pedestrian simulation, offering a simple setup and customizable behavior. It utilizes a node-based navigation system.

Image

The package includes a pre-built scene that showcases all its features.

⬇️ | Installation

You can download and install the package either from the "Releases" section on GitHub or from the official Unity Asset Store [here].

🚀 | Set-up

To properly set up the navigation system, follow these steps:

  • Create an empty GameObject and attach PedestrianSystemController.cs to it.
  • Configure the attached script as desired. A description of each parameter is provided here on GitHub or by hovering over the variables in the Inspector.
    • The script also needs a pedestrian prefab. You can assign the one provided with the package or create your own. To do that, just create a gameobject and assign PedestrianSystemMover.cs to it.
  • Create a new node by clicking the "Add node to the scene" button in the Inspector.
  • Duplicate and position the newly created node to design the pedestrian path. Ensure all nodes are children of the same GameObject.
  • For each node, specify its adjacent nodes in the Inspector. If everything is set up correctly, green lines indicating the path will appear.

Image

🔎 | Scripts Overview

The package contains 4 scripts:

  • PedestrianSystemController.cs The main script used to configure the navigation system.
  • PedestrianSystemMover.cs Attached to the pedestrian, this script is responsible for moving pedestrians along the path. It does not require any values to be set.
  • PedestrianSystemNode.cs Attached to each node, this script defines the path.
  • PedestrianSystemUI.cs This script doesn't need to be attached to any object. It provides UI elements that make the inspector values more readable.

Below is a description of each parameter in PedestrianSystemController.cs:

  • Pedestrian Prefab. The prefab of your pedestrian.
  • Minimum Speed. The minimum speed at which pedestrians can move. Each pedestrian's speed is a random value between Minimum Speed and Maximum Speed.
  • Maximum Speed. The maximum speed at which pedestrians can move. Each pedestrian's speed is a random value between Minimum Speed and Maximum Speed.
  • Pedestrian Number. The number of pedestrians that will be generated.
  • Has Wait Time (Bool). Determines whether pedestrians should wait a certain amount of time at each node.
  • Minimum Wait Time. The minimum time a pedestrian waits at each node. The wait time is a random value between Minimum Wait Time and Maximum Wait Time.
  • Maximum Wait Time. The maximum time a pedestrian waits at each node. The wait time is a random value between Minimum Wait Time and Maximum Wait Time.
  • Use Random Color. Determines whether the pedestrian's material will be generated with a different color each time (useful for representing different skin tones).
  • Colors (List). A list of colors that can be used for the pedestrian's material.
  • Nodes Parent. The GameObject that serves as the parent of all nodes.

About

Versatile Unity package for pedestrian simulation, featuring a simple setup and a customizable behavior.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages