compacted draw particles func