10 #include <Atoms/BehaviourModule.h>
11 #include <AtomsUtils/Mesh.h>
12 #include <AtomsCore/Metadata/Vector3Metadata.h>
13 #include <Atoms/HeightField.h>
14 #include <unordered_map>
29 inline unsigned int span()
const {
return end - start; }
35 namespace AtomsModules
44 AtomsPtr<Atoms::HeightField> heightField;
52 AtomsCore::Rand48* randomGenerator;
60 bool hasContextSteering;
89 AtomsPtr<Atoms::HeightField>& heightField,
99 std::unordered_map<std::string, double> m_agentTypeSize;
107 std::vector<DebugData> m_debugData;
Agent group.
Definition: AgentGroup.h:36
Behaviour module.
Definition: BehaviourModule.h:32
Definition: DrawContext.h:17
Definition: MeshAvoidanceModule.h:39
void initSimulation(Atoms::AgentGroup *agentGroup=nullptr)
Init simulation.
void preDraw(Atoms::DrawContext *context, const std::vector< Atoms::Agent * > &agents, Atoms::AgentGroup *agentGroup=nullptr)
Pre draw.
void initFrame(const std::vector< Atoms::Agent * > &agents, Atoms::AgentGroup *agentGroup=nullptr)
Init frame.
void draw(Atoms::DrawContext *context, const std::vector< Atoms::Agent * > &agents, Atoms::AgentGroup *agentGroup=nullptr)
Draw.
void agentsCreated(const std::vector< Atoms::Agent * > &agents, Atoms::AgentGroup *agentGroup=nullptr)
Agents Created.
Mesh class.
Definition: Mesh.h:30
AtomsMath::Vector3 Vector3
Vector3 class.
Definition: AtomsMath.h:57
AtomsMath::Matrix Matrix
Matrix class.
Definition: AtomsMath.h:63
Definition: MeshAvoidanceModule.h:65
Definition: MeshAvoidanceModule.h:43
Definition: MeshAvoidanceModule.h:17