bool DrawList::AddProjectile(const Body &body, const Point &adjustedVelocity, double clip)
{
	Point position = body.Position() + .5 * body.Velocity() - center;
	Point blur = adjustedVelocity - centerVelocity;
	if(Cull(body, position, blur) || clip <= 0.)
		return false;
	
	items.emplace_back(body, position, blur, 0., clip, body.GetSwizzle(), step);
	return true;
}
bool DrawList::Add(const Body &body, Point position)
{
	position -= center;
	Point blur = body.Velocity() - centerVelocity;
	if(Cull(body, position, blur))
		return false;
	
	items.emplace_back(body, position, blur, 0., 1., body.GetSwizzle(), step);
	return true;
}
bool DrawList::AddUnblurred(const Body &body)
{
	Point position = body.Position() - center;
	Point blur;
	if(Cull(body, position, blur))
		return false;
	
	items.emplace_back(body, position, blur, 0., 1., body.GetSwizzle(), step);
	return true;
}
// Add an object based on the Body class.
bool DrawList::Add(const Body &body, double cloak)
{
	Point position = body.Position() - center;
	Point blur = body.Velocity() - centerVelocity;
	if(Cull(body, position, blur) || cloak >= 1.)
		return false;
	
	items.emplace_back(body, position, blur, cloak, 1., body.GetSwizzle(), step);
	return true;
}