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"

No Documentation of Services and Tasks Whatsoever for AI In C++!!!

Guys, I've been scrounging for days now trying to find Information on programming AI into C++. I heard over and over @MieszkoZ saying "If you desire performance, do your AI in C++". But you don't teach us how, or have up to date Documentation on it!!!

Are you serious????

For Tasks i finally found this. https://wiki.unrealengine.com/Survival_Sample_Game:_Section_3 Okay i can handle it for now.

But there is NOTHING regarding services in C++!!!! I found Exi post asking around. https://answers.unrealengine.com/questions/200312/behavior-tree-service-in-c.html

However, the method that he overrides doens't EXIST!!!! "virtual void ReceiveTick(AActor* OwnerActor, float DeltaSeconds) override;"

Please in the name of what most holy can you make our lives easier trying to use your Game Engine? Is it that hard?

Product Version: UE 4.10
Tags:
more ▼

asked Feb 23 '16 at 08:09 PM in C++ Programming

avatar image

LuLima
52 16 16 26

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

2 answers: sort voted first

You just need this in your header:

 public:
 
     virtual void TickNode(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory, float DeltaSeconds) override;

Then in your CPP

 void UCheckDistanceToWaypoint::TickNode(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory, float DeltaSeconds)
 {
     ScheduleNextTick(NodeMemory);
 
 }

Of course replace UCheckDistanceToWaypoint with your own class name.

Scheduling the next tick will allow the TickNode function to abide by it's interval settings that you assign in the behavior tree.

Now.. just create all your C++ functionality there!

more ▼

answered Mar 15 '17 at 06:54 AM

avatar image

Demeese
165 11 18 24

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

In all cases where you can't find documentation, take a look at the engine code: https://github.com/EpicGames/UnrealEngine/tree/release/Engine/Source/Runtime/AIModule/Private/BehaviorTree

There isn't a lot in the way of examples for services (but should be enough to get going). There are however quite a few examples for tasks which you can use.

It's a little more effort than reading documentation, but it's certainly possible to use what's provided to build your own tasks and services.

more ▼

answered Feb 23 '16 at 09:38 PM

avatar image

phil_me_up
1.5k 6 6 12

(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