Blender V5.0
BKE_boids.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2009 by Janne Karhu. All rights reserved.
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
10
11struct BoidSettings;
12struct BoidState;
13struct Object;
14struct ParticleData;
15struct ParticleSettings;
17struct RNG;
18
19typedef struct BoidBrainData {
24
25 /* Goal stuff */
26 struct Object *goal_ob;
27 float goal_co[3];
28 float goal_nor[3];
30
31 struct RNG *rng;
33
34void boids_precalc_rules(struct ParticleSettings *part, float cfra);
38void boid_brain(BoidBrainData *bbd, int p, struct ParticleData *pa);
42void boid_body(BoidBrainData *bbd, struct ParticleData *pa);
43void boid_default_settings(struct BoidSettings *boids);
44struct BoidRule *boid_new_rule(int type);
45struct BoidState *boid_new_state(struct BoidSettings *boids);
46struct BoidState *boid_duplicate_state(struct BoidSettings *boids, struct BoidState *state);
47void boid_free_settings(struct BoidSettings *boids);
48struct BoidSettings *boid_copy_settings(const struct BoidSettings *boids);
49struct BoidState *boid_get_current_state(struct BoidSettings *boids);
struct BoidState * boid_duplicate_state(struct BoidSettings *boids, struct BoidState *state)
Definition boids.cc:1683
struct BoidSettings * boid_copy_settings(const struct BoidSettings *boids)
void boid_brain(BoidBrainData *bbd, int p, struct ParticleData *pa)
Definition boids.cc:1054
void boid_body(BoidBrainData *bbd, struct ParticleData *pa)
Definition boids.cc:1211
void boid_default_settings(struct BoidSettings *boids)
Definition boids.cc:1638
struct BoidState * boid_get_current_state(struct BoidSettings *boids)
Definition boids.cc:1734
struct BoidRule * boid_new_rule(int type)
Definition boids.cc:1585
void boid_free_settings(struct BoidSettings *boids)
Definition boids.cc:1695
struct BoidState * boid_new_state(struct BoidSettings *boids)
Definition boids.cc:1664
void boids_precalc_rules(struct ParticleSettings *part, float cfra)
Definition boids.cc:957
static ulong state[N]
float wanted_co[3]
Definition BKE_boids.h:23
float goal_nor[3]
Definition BKE_boids.h:28
struct ParticleSettings * part
Definition BKE_boids.h:21
struct Object * goal_ob
Definition BKE_boids.h:26
struct RNG * rng
Definition BKE_boids.h:31
float timestep
Definition BKE_boids.h:22
float wanted_speed
Definition BKE_boids.h:23
float goal_priority
Definition BKE_boids.h:29
struct ParticleSimulationData * sim
Definition BKE_boids.h:20
float goal_co[3]
Definition BKE_boids.h:27
Definition rand.cc:33