added multithreading, added particle emitter