change to multi-threaded and change so new isn't used when tracing a ray