| Rendering transparent objects reaching photographic level is always a challengeissue which attracts lots of attentions in Computer Graphics. In natural world, thephenomenon of ray going through transparent object is very beautiful. Especially, somespecial optical phenomenon can attract people s attention, such as caustic, internalreflection, multi-reflection, refraction and so on. However, the phenomenon makesalgorithms complex. In addition, real time rendering requirement aggravates the problembetween rendering quality and computing speed. For example, ray tracing is a proventechnique in order to get the accurate ray s condition. It can accurately trace the pathbetween ray and object for getting photographic rendering result. Actually, fortransparent object, the collision between the ray and the object costs lots of time, so thatinteractive rendering is hard to get. Therefore, people would like to use rasterizationmethod to get high speed instead of good quality.Focusing on real time rendering on transparent object, we propose a renderingmethod based on CUDA. With getting multi-texture information, ray path could betraced in multi-texture fields. The final rendering result is approximate to traditional raytracing. Meanwhile, rendering efficiency could be improved.The main contributions of the thesis are as follows.Propose an easily transplantable and extensible rendering framework oftransparent object based on CUDA. Since this framework doesn t depend neithermodels and scenes, nor rendering pipeline, different kinds of rendering methodscan be applied into our system. Meanwhile, adding other rendering methods to itsframework is also an easy thing, such as shadow, caustic and so forth.Bring out a Two-pass Depth Peeling algorithm improving traditional depthpeeling method. With propose the concept of layer and addition of depthinformation, rendering result can be more reliable. Based on our depth peelingalgorithm, our system can directly extract multi-layer information. Meanwhile, theconcept of multi-texture fields can be easily to store the layer information. Itgreatly promotes the rendering result s quality on transparent object. Propose ray tracing based on multi-texture fields widening the application of raytracing. It greatly helps to reduce rendering time and improve rendering s physicalreliability. We combine multi-texture fields and ray tracing together. Meanwhile,we use GPU to speed up rendering.Present some important optimization methods. Combining the advantage ofCUDA and adaptive storage methods, access speed and memory space can bepromoted. Interoperation between CUDA and OpenGL can also acceleratesystem s performance. Comparing to current method, our method has a goodefficiency and vivid rendering result. In addition, comparing with the methodbased on two layers, our method is much more approximate to real world. Finally,comparing to other parallel rendering algorithms, our method is faster than them. |