void InitBuffer()
{
// バッファを初期化
_boidDataBuffer = new ComputeBuffer(MaxObjectNum,
Marshal.SizeOf(typeof(BoidData)));
_boidForceBuffer = new ComputeBuffer(MaxObjectNum,
Marshal.SizeOf(typeof(Vector3)));
// Boidデータ, Forceバッファを初期化
var forceArr = new Vector3[MaxObjectNum];
var boidDataArr = new BoidData[MaxObjectNum];
for (var i = 0; i < MaxObjectNum; i++)
{
forceArr[i] = Vector3.zero;
boidDataArr[i].Position = transform.position + Random.insideUnitSphere * 1.0f;
boidDataArr[i].Velocity = Random.insideUnitSphere * 0.1f;
}
_boidForceBuffer.SetData(forceArr);
_boidDataBuffer.SetData(boidDataArr);
forceArr = null;
boidDataArr = null;
}