Blender V4.3
#include "DNA_listBase.h"

Go to the source code of this file.

Classes

struct  BoidRule
 
struct  BoidRuleGoalAvoid
 
struct  BoidRuleAvoidCollision
 
struct  BoidRuleFollowLeader
 
struct  BoidRuleAverageSpeed
 
struct  BoidRuleFight
 
struct  BoidData
 
struct  BoidState
 
struct  BoidSettings
 

Macros

#define BRULE_LEADER_IN_LINE   (1 << 0)
 
#define BOIDSTATE_CURRENT   1
 

Typedefs

typedef enum eBoidRuleType eBoidRuleType
 
typedef struct BoidRule BoidRule
 
typedef struct BoidRuleGoalAvoid BoidRuleGoalAvoid
 
typedef struct BoidRuleAvoidCollision BoidRuleAvoidCollision
 
typedef struct BoidRuleFollowLeader BoidRuleFollowLeader
 
typedef struct BoidRuleAverageSpeed BoidRuleAverageSpeed
 
typedef struct BoidRuleFight BoidRuleFight
 
typedef enum eBoidMode eBoidMode
 
typedef struct BoidData BoidData
 
typedef enum eBoidRulesetType eBoidRulesetType
 
typedef struct BoidState BoidState
 
typedef struct BoidSettings BoidSettings
 

Enumerations

enum  eBoidRuleType {
  eBoidRuleType_None = 0 , eBoidRuleType_Goal = 1 , eBoidRuleType_Avoid = 2 , eBoidRuleType_AvoidCollision = 3 ,
  eBoidRuleType_Separate = 4 , eBoidRuleType_Flock = 5 , eBoidRuleType_FollowLeader = 6 , eBoidRuleType_AverageSpeed = 7 ,
  eBoidRuleType_Fight = 8
}
 
enum  { BOIDRULE_CURRENT = 1 << 0 , BOIDRULE_IN_AIR = 1 << 2 , BOIDRULE_ON_LAND = 1 << 3 }
 
enum  { BRULE_GOAL_AVOID_PREDICT = 1 << 0 , BRULE_GOAL_AVOID_ARRIVE = 1 << 1 , BRULE_GOAL_AVOID_SIGNAL = 1 << 2 }
 
enum  { BRULE_ACOLL_WITH_BOIDS = 1 << 0 , BRULE_ACOLL_WITH_DEFLECTORS = 1 << 1 }
 
enum  eBoidMode {
  eBoidMode_InAir = 0 , eBoidMode_OnLand = 1 , eBoidMode_Climbing = 2 , eBoidMode_Falling = 3 ,
  eBoidMode_Liftoff = 4
}
 
enum  eBoidRulesetType { eBoidRulesetType_Fuzzy = 0 , eBoidRulesetType_Random = 1 , eBoidRulesetType_Average = 2 }
 
enum  { BOID_ALLOW_FLIGHT = 1 << 0 , BOID_ALLOW_LAND = 1 << 1 , BOID_ALLOW_CLIMB = 1 << 2 }
 

Macro Definition Documentation

◆ BOIDSTATE_CURRENT

#define BOIDSTATE_CURRENT   1

◆ BRULE_LEADER_IN_LINE

#define BRULE_LEADER_IN_LINE   (1 << 0)

Definition at line 77 of file DNA_boid_types.h.

Referenced by rna_def_boidrule_follow_leader(), and rule_follow_leader().

Typedef Documentation

◆ BoidData

typedef struct BoidData BoidData

◆ BoidRule

typedef struct BoidRule BoidRule

◆ BoidRuleAverageSpeed

typedef struct BoidRuleAverageSpeed BoidRuleAverageSpeed

◆ BoidRuleAvoidCollision

typedef struct BoidRuleAvoidCollision BoidRuleAvoidCollision

◆ BoidRuleFight

typedef struct BoidRuleFight BoidRuleFight

◆ BoidRuleFollowLeader

typedef struct BoidRuleFollowLeader BoidRuleFollowLeader

◆ BoidRuleGoalAvoid

typedef struct BoidRuleGoalAvoid BoidRuleGoalAvoid

◆ BoidSettings

typedef struct BoidSettings BoidSettings

◆ BoidState

typedef struct BoidState BoidState

◆ eBoidMode

typedef enum eBoidMode eBoidMode

◆ eBoidRulesetType

◆ eBoidRuleType

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
BOIDRULE_CURRENT 
BOIDRULE_IN_AIR 
BOIDRULE_ON_LAND 

Definition at line 44 of file DNA_boid_types.h.

◆ anonymous enum

anonymous enum
Enumerator
BRULE_GOAL_AVOID_PREDICT 
BRULE_GOAL_AVOID_ARRIVE 
BRULE_GOAL_AVOID_SIGNAL 

Definition at line 54 of file DNA_boid_types.h.

◆ anonymous enum

anonymous enum
Enumerator
BRULE_ACOLL_WITH_BOIDS 
BRULE_ACOLL_WITH_DEFLECTORS 

Definition at line 68 of file DNA_boid_types.h.

◆ anonymous enum

anonymous enum

BoidSettings::options

Enumerator
BOID_ALLOW_FLIGHT 
BOID_ALLOW_LAND 
BOID_ALLOW_CLIMB 

Definition at line 206 of file DNA_boid_types.h.

◆ eBoidMode

enum eBoidMode
Enumerator
eBoidMode_InAir 
eBoidMode_OnLand 
eBoidMode_Climbing 
eBoidMode_Falling 
eBoidMode_Liftoff 

Definition at line 95 of file DNA_boid_types.h.

◆ eBoidRulesetType

Enumerator
eBoidRulesetType_Fuzzy 
eBoidRulesetType_Random 
eBoidRulesetType_Average 

Definition at line 137 of file DNA_boid_types.h.

◆ eBoidRuleType

Enumerator
eBoidRuleType_None 
eBoidRuleType_Goal 

go to goal assigned object or loudest assigned signal source

eBoidRuleType_Avoid 

get away from assigned object or loudest assigned signal source

eBoidRuleType_AvoidCollision 

Maneuver to avoid collisions with other boids and deflector object in near future.

eBoidRuleType_Separate 

keep from going through other boids

eBoidRuleType_Flock 

move to center of neighbors and match their velocity

eBoidRuleType_FollowLeader 

follow a boid or assigned object

eBoidRuleType_AverageSpeed 

Maintain speed, flight level or wander.

eBoidRuleType_Fight 

go to closest enemy and attack when in range

Definition at line 13 of file DNA_boid_types.h.