Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Instead, this module fills the danger map using the result of the line trace method.

Code Block
languagecpp
#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;
};

...