void ParticleGenerator::draw(SpriteRenderer& renderer) {
	// use additive blending to make particles glow
	glBlendFunc( GL_SRC_ALPHA, GL_ONE );
	for( Particle particle : particles ) {
		//std::cout << "drawing " << std::endl;
		if( particle.life > 0.0f ) {
			renderer.drawSprite(texture, particle.pos, glm::vec2(particleSize), particle.rotation, particle.color );
		}
	}
	// reset blending mode
	glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );
}
void PaddleObject::draw( SpriteRenderer& renderer ) {
	renderer.drawSprite(animations[animationIndex], pos, size, rotation, color);
}
void GameObject::draw( SpriteRenderer& renderer ) {
	renderer.drawSprite( sprite, pos, size, rotation, color );
}