#ifndef BOIDS_H
#define BOIDS_H
/*
**-----------------------------------------------------------------------------
** File: Boids.h
** Purpose: Sample showing DrawPrimitive functionality
**
**Copyright (C) 1995 - 1997 Microsoft Corporation. All Rights Reserved.
**-----------------------------------------------------------------------------
*/
/*
**-----------------------------------------------------------------------------
**Include files
**-----------------------------------------------------------------------------
*/
#include "Common.h"
/*
**-----------------------------------------------------------------------------
**Typedefs
**-----------------------------------------------------------------------------
*/
typedef struct t_boid {
D3DVECTORloc;
D3DVECTORdir;// cur direction
D3DVECTORdelta_pos;// change in position from flock centering
D3DVECTORdelta_dir;// change in direction
intdelta_cnt;// number of boids that influence this delta_dir
floatspeed;
floatyaw, pitch, roll, dyaw;
D3DVECTORcolor;
} Boid;
typedef struct t_obstacle {
D3DVECTORloc;
floatradius;
} Obstacle;
typedef struct t_flock {
intnum_boids;
Boid*boids;
intnum_obs;
Obstacle*obs;
float**dist;// 2-d array of boid distances, yuk what a waste
D3DVECTORgoal;
} Flock;
/*
**-----------------------------------------------------------------------------
**Function Prototypes
**-----------------------------------------------------------------------------
*/
// Boids Functions
void UpdateFlock (Flock flock);
/*
**----------------------------------------------------------------------------
** End of File
**----------------------------------------------------------------------------
*/
#endif // BOIDS_H