载入中...
搜索中...
未找到
BirdSolver.cpp
浏览该文件的文档.
12void BirdSolver::step(std::span<const AgentState> read, std::span<AgentState> write, const EffectProfile& profile,
65 glm::normalize(glm::cross(glm::cross(dir, glm::vec3(0.f, 1.f, 0.f)), dir) + glm::vec3(0.f, 1e-4f, 0.f));
70 accel += glm::normalize(windTarget - windVel + glm::vec3(1e-5f, 0.f, 0.f)) * p.gustAcceleration * 0.1f;
EVEngine assertion entry point, backed by zeroerr.
#define EV_PARAM_CHECK(cond,...)
Validate a function parameter / public API precondition.
Definition Assert.h:30
void step(std::span< const AgentState > read, std::span< AgentState > write, const EffectProfile &profile, const EnvironmentSnapshot &env, float dt) override
Step.
Definition BirdSolver.cpp:12
void resolve(glm::vec3 &position, glm::vec3 &velocity, float agentRadius, float predictTime) const
Push an agent out of obstacles and keep feasible tangential velocity.
Definition ObstacleField.cpp:140
glm::vec3 markerForce(const glm::vec3 &pos, const std::vector< EnvironmentMarker > &markers, bool attract)
Marker force.
Definition BoidsCommon.h:76
NeighborAccum gatherNeighbors(std::span< const AgentState > agents, int selfIndex, const glm::vec3 &forward, float sepR, float cohR, float aliR, float fovDeg, int maxSamples)
Gather neighborhood forces with compact weights and FOV / sample caps.
Definition BoidsCommon.h:46
Definition AgentInstanceRenderer.cpp:5
glm::quat lookRotation(const glm::vec3 &forward, const glm::vec3 &upHint=glm::vec3(0.f, 1.f, 0.f))
Builds a facing quaternion from a unit forward and approximate up.
Definition AgentState.h:36
Standardized per-agent simulation output shared by all effect kinds.
Definition AgentState.h:12
Type-erased profile bundle owned by an EffectBackend.
Definition EffectProfile.h:130
Read-only environment semantics prepared by GpuAgentWorld each tick.
Definition EnvironmentSnapshot.h:26
const ObstacleField * obstacles
Definition EnvironmentSnapshot.h:36
std::vector< EnvironmentMarker > goals
Definition EnvironmentSnapshot.h:32
glm::vec3 windVelocity
Definition EnvironmentSnapshot.h:28