Improved particle system with instance rendering and less opengl call when rendering