- refactoring
 - ring spawning moved to render()