flame-engine / flame-engine/radiance

Separation

Open
#18 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Dart
Stars
23
Forks
3
PR merge metrics
No merged PRs in 30d

Description

Description of Separation from https://www.red3d.com/cwr/steer/gdc99/:

> **Separation** steering behavior gives a character the ability to maintain a certain separation distance from others nearby. This can be used to prevent characters from crowding together. To compute steering for **separation**, first a search is made to find other characters within the specified neighborhood. This might be an exhaustive search of all characters in the simulated world, or might use some sort of spatial partitioning or caching scheme to limit the search to local characters. For each nearby character, a repulsive force is computed by subtracting the positions of our character and the nearby character, normalizing, and then applying a 1/r weighting. (That is, the position offset vector is scaled by 1/r 2.) Note that 1/r is just a setting that has worked well, not a fundamental value. These repulsive forces for each nearby character are summed together to produce the overall steering force. See Figure 14:
>
> ![separation behavior](https://www.red3d.com/cwr/steer/gdc99/figure14.gif)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.