A Parallel Ray Tracer

نویسنده

  • Mackenzie Ryan Scott
چکیده

The graphics industry has advanced very far from the days of pixelated 2D images on small monitors. The main focus of graphics hardware work has been achieving the most realistic images while maintaining the interactive nature of realtime applications. This focus has matured and today’s modern graphics card is able to process millions of triangles and vertices to form complex 3D images with a variety of realistic effects. However the realism achieved is mainly due to a bunch of ”hacks.” Many of the algorithms used in realtime graphics applications favor speed over the quality of work produced. These ”hacks” allow us to just barely get by without increasing the computation time significantly. To better meet the needs of todays consumers, the graphics industry will need to spend time updating the poorly looked over quality metric. Using ray tracing, we can upgrade quality. Current graphics APIs such as OpenGL and DirectX use an overly simple lighting model to compute the effects of light on a scene. Ray tracing is a way to more accurately compute lighting effects on surfaces by simulating how rays are transported around the scene. This is more realistic since it not only takes into account how the initial light from a source bounces off an object, but also takes contributions of light which have been reflected off of objects. This enables ray tracing to be very good at rendering highly reflective and shadowed surfaces [1]. Many algorithms have been developed to implement ray tracing efficiently on a standard sequential CPU. Most ray tracers are implemented by shooting out rays of light from points on the screen into the scene. This way only rays of light which contribute to the rendered image will be computed. This still happens to be very computationally intensive for any CPU today. The computation time prevents ray tracing techniques from getting into main stream graphics cards since images can no longer be rendered in real-time. However there is nothing inherently stopping this computation from happening in parallel [1]. The ”embarrassing amount of parallelism” which can be taken advantage of in ray tracing is the focus of my project. Today many companies are moving towards multiprocessor systems and multicore chips. This provides much more hardware and computatoin power to use in parallel for ray tracing applications. So it is important to see how the feasibility of using ray tracing for more applications changes with these advancements in technology.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Distributed Ray Tracer on GPU

Ray tracing is a method for producing photorealistic 3D computer generated imagery by modeling the interaction of light rays with a scene. Because each primary ray is independent of other primary rays being modeled, ray tracing offers massive degrees of parallelism that is suitable to parallel architectures like GPUs, multicore CPUs, and distributed computing environments. Our goal is to implem...

متن کامل

Accelerated Ray Tracing on the KSR 1 Virtual Shared - Memory Parallel Computer

This report describes the results of experiments with accelerated ray tracing on a virtual shared-memory parallel computer. The machine used, the Kendall Square Research KSR1, is described in sufficient detail for its novel features to be appreciated. The report describes a new ray tracer written specifically to capitalise on the KSR1’s features. Models used in the experiments include well-know...

متن کامل

A Comparison of Parallelization and Performance Optimizations for Two Ray-tracing Applications

Ray-tracing is a compute-intensive technique to render three-dimensional graphics and is embarrassingly parallel. There are many examples of ray-tracing applications from both academic and public domain projects. We ask if the parallelization and optimization issues are similar. This paper uses two sequential raytracing applications (POV-Ray (Persistence of Vision Raytracer) and PBRT (Physicall...

متن کامل

Order of Pixel Traversal and Parallel Volume Ray-tracing on the Distributed Shared Volume Buuer

The distributed shared volume buuer (DSVB) is a software package we developed to facilitate general, parallel volume ray-tracing on networked workstations. It is internally implemented with message-passing and adopts the cache-coherent shared memory model. Thus the cache eeciency of volume data access is of utter importance to the performance of a DSVB-based ray-tracer. For a given data set, th...

متن کامل

Enhancing Visual Rendering on Multicore Accelerators with Explicitly Managed Memories

Recent electronic devices are equipped with processors extended with multicore accelerators to take advantage of the powerful performance from acceleration co-processors. Applications on such high-end electronic products require capability to run graphic-rich applications. Scalable acceleration co-processors are frequently designed as multicores with explicitly managed memories. Such multicore ...

متن کامل

A Study of Ray Tracing Large-scale Scientific Data in Parallel Visualization Applications

Large-scale analysis and visualization is becoming increasingly important as supercomputers and their simulations produce larger and larger data. These large data sizes are pushing the limits of traditional rendering algorithms and tools thus motivating a study exploring these limits and their possible resolutions through alternative rendering algorithms . In order to better understand real-wor...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005