...
Instead, this module fills the danger map using the result of the line trace method.
Code Block | ||
---|---|---|
| ||
#pragma once #include "CoreMinimal.h" #include "Engine/EngineTypes.h" #include "AtomsUnreal/Public/ContextSteering/AtomsContextSteeringBehaviour.h" #include "AtomsContextSteeringMyLineTraceAvoidanceBehaviour.generated.h" /* Filter the inreset/danger map using a gauss filter*/ UCLASS(DefaultToInstanced, editinlinenew, DisplayName = "My Line Trace Avoidance") class UAtomsContextSteeringMyLineTraceAvoidanceBehaviour : public UAtomsContextSteeringBehaviour { GENERATED_BODY() public: /** Collision channel used by the line trace */ UPROPERTY(EditAnywhere, Category = "Behaviour") TEnumAsByte<enum ECollisionChannel> CollisionChannel; /** Height offset */ UPROPERTY(EditAnywhere, Category = "Behaviour") float HeightOffset; UAtomsContextSteeringMyLineTraceAvoidanceBehaviour(); virtual void Initialize(class UContextSteering_BehaviourComponent* ParentComponent) override; virtual void Evaluate(Atoms::AgentGroup* AgentGroup, Atoms::Agent* Agent, const float DeltaTime) override; private: class UWorld* World; }; |
...