x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

CrowdFollowingComponent No Avoidance & Jittering

Hello!

I'm developing a top-down RPG where crowd avoidance is very important for navigation.

I've recently used the 'UCrowdFollowingComponent', extended it and created my own 'RPGCrowdFollowingComponent'. I'm using the following high quality setup in the constructor:

 bRotateToVelocity = false;
 bUpdateDirectMoveVelocity = false;
 bEnableSeparation = true;
 bEnablePathOffset = true;
 bEnableOptimizeVisibility = false;
 bEnableOptimizeTopology = false;
     
 // Attempt to set the quality
 AvoidanceQuality = ECrowdAvoidanceQuality::High;
     
 SeparationWeight = 50.0f;  // Was 2
 CollisionQueryRange = 600.0f; // Was 400
 bUseBlockDetection = false;

The problems are:

1. While for characters with high velocity the query range is ok, for character with a small velocity the query range is tiny causing awful jittering when close to the target. (attached 2 images on with a good hero query range an one with a bad troll monster range). Why is the sampling query range dependent upon the character's speed rather than used from the settings?
alt text alt text

2 Characters get stuck on each other, their velocity is set to almost zero and they seem to get stuck on each other without real avoidance. That slowing down is horrible, I want a smooth navigation between NPC's

My questions are:

1. Is the 'UCrowdFollowingComponent' ready for production? What are the unreal guys using in their games for their NPC's? Since with many setup's that I've tried it works worst than games from the 99'
2. Should I look for another solution if the crowd thing is not production ready? What else should I try?
3. How can I improve the avoidance quality? (or q2 answers this?). Where is a complete lack on resources on how to tackle this problem. What are the work-arounds?
4. Can I somehow use simple path following components instead of the crowd ones and somehow simulate the avoidance? Those seem to work quite nice (except having doors or other monsters).

Thanks a lot for all the help!

Product Version: UE 4.18
Tags:
goodhero.jpg (775.9 kB)
badmonster.jpg (644.0 kB)
more ▼

asked Jun 04 '18 at 01:16 PM in C++ Programming

avatar image

AssemblerJohn
68 3 9 10

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

As a workaround for the problem, I've moved on to RVO avoidance that seems to work a lot better than the 'CrowdsManager'. It is not an ideal solution but at the moment the DetrourCrowds are out of the question.

Maybe this will help someone else in their decision of dynamic obstacle avoidance.

more ▼

answered Jun 08 '18 at 05:57 AM

avatar image

AssemblerJohn
68 3 9 10

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question