Font Size: a A A

Research On Some Problems Of Graphics Engine

Posted on:2011-09-07Degree:MasterType:Thesis
Country:ChinaCandidate:L B LiFull Text:PDF
GTID:2178360305454931Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
With virtual reality, film effect, medical diagnostic, particularly the rapid development of online games, computer graphics ushered in a new development peak, graphics engine as a common basis in various fields reflects the tremendous economic value.The study of graphics engine was included the 863 program, at the same time, the development of culture industry is supported and then our country established a series of animation industrial park, which makes the study of the graphics engine into the white-hot phase. Kingsoft Corporation first put a Chinese-made graphics engine which was developed by itself into the online game, and those ended the situation of relying on importing graphics engine for a long time. Crystal Corporation put the technology of graphics engine into the opening ceremony of the 2008 Olympic Games, resulting in a shock effect. The State Key Laboratory of computer graphics in the Zhejiang University is researching the technology of facial animation with Microsoft Research Asia. Jointly developed by Beihang University and the army out of the virtual platform for the coordination combat of armed forces.Graphics engine consists of unrelated graphics which as a software approach runs on CPU and does not require hardware acceleration and related graphics which directly interacts with the graphics card in order to give full play to the function of graphics hardware. The part of related graphics which makes up of high-level programming language interface involves a large number of graphics terminology such as coordinate transformation, light, texture mapping and rasterization and so on.The development of graphics engine involves multiple programming areas. The problems to be solved are how to divide the module into reasonable parts, how to encapsulate the key technology, how to abstract of the unified interface. In this paper, aming at the characteristics of the graphics engine,developed a loosely coupled subsystems and provided a stable and reliable structure, the major work as follows:(1) Partition the graphics engine into scene management, rendering system and resource management, if a project beyond the scope of people with its capacity, the dividing can make people focus on the handling of the unit, which reducing the thinking dimension.(2) Object-oriented technology brings many benefits for the development and use of graphics engine. First, the object-oriented abstract object into an object, the object and the objects are independent,which communicates by sending messages,so that simplify the development process and reduce the development time, Seccond, object-oriented hidden the complexity by encapsulation and polymorphism, Abstract the interface of graphics engine from the solution space to the problem space using of object-oriented technology, simplifying the use of graphics engine.(3) Develop a plug-in strategy, plug-in system module is not really a part of graphics engine, plug-in system module is a strategy, which generationlizes of unified interface and postpones the realization of the specific algorithm into the sub-class, increasing the flexibility and scalability of graphics engine. On the one hand, the use of unified interface, the users of the graphics engine do not focus on the different graphic interface and can program the portable code, reducing the development difficulties and improving the development efficiency. On the other hand,due to differences be shielded under a unified interface,graphics developers and users can develop plug-ins for the actual situation and not change the interface,this can facilitate the maintanance and upgrading, flexibility improved significantly.(4) Achieve the scene management of graphics engine, including scalable and custom scene manager based on plug-in, the separation mechanism of scene management organization and core objects and scene management processing. Scene management module organizes and manages the objects on the scene by scene manager,the scene manager creates scene node is an important job,the scene node is the basic unit for the scene change. Scene manager is essentially some of the spatial data structure,the most commonly used is the binary space tree and octree space tree. In this paper, though combination replaced inheritance,division the scene manager organization structure and the core of the objects is a good strategy,thus forming two parallel hierarchies,so that the scene manager structure and the core architecture can change and combinate independently and do not affect each other.(5) Achieve the rendering system of graphics engine, including scalable and custom rendering component based on plug-in, rendering to texture and programmable pipeline. Rendering to texture is the texture as a render target, the frame buffer color values and texture color mixing, and then texture as nomal mapping, dynamic shadows and the water reflection and other special effects can be achieved. Programmable pipeline will transfer a large number of operations from the CPU to the GPU,can be well coordinated.(6) Achieve the resource management of graphics engine, including scalable and custom resource manager based on plug-in, resource life-cycle management and script technology. Resource life cycle can be divided into resource acquisition,resource management and resource release,you can use more mature management model of resources,how and when obtain the resources can be used Lookup,Lazy Acquisition,Enter Acquisition and Partial Acquisition pattern, resource access and procedding of resource dependence can be used Caching,Pooling,Coordinator and Resource Lifecycle Manager pattern,releasing the resources at the right time will maintian the stability of the system can be used Leasing and Evictor mode. Encapsulation script layer on top of the graphics engine core implements the separation of kenel and resoures,the user can not recompile the graphics engine in the case of viewing effects.In this paper, developing a graphics engine architecture with loose structure, good scalability and structural stability trait and giving a few application examples including RTT, spherical environment mapping, particle system and HDR effect.Finally, giving the work summary and outlooking the development trend of the graphics engine, including advanced graphics rendering technology, mathematics and physics simulation technology, networking technology, artificial intelligence technology, audio technology.
Keywords/Search Tags:graphics engine, plug-in, scene management, rendering, resource management, script
PDF Full Text Request
Related items