嵌入式3D图形引擎的设计与实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
嵌入式图形用户界面是嵌入式设备与使用者之间的对话接口。随着军事、医学、嵌入式3D游戏日益广泛的应用,人们对高性能、稳定可靠的嵌入式人机图形交互界面的要求越来越迫切。在这个背景下,对嵌入式系统的关键技术——嵌入式GUI的研究就有着非常重要的意义。
     大多数传统嵌入式GUI系统只提供2D控件绘制,即提供给用户的显示平面从逻辑设计上讲是二维的。这种体系最大的缺点在于反映信息量小,在对真实场景进行模拟显示的时候,无法提供真实的场景数据。随着嵌入式系统硬件功能的不断提高,如何开发一款支持3D建模的嵌入式GUI已成为一个迫切的话题。要满足这种需求,就需要研究如何将图形学算法应用到嵌入式系统中;如何在嵌入式系统中实现桌面3D GUI的流水线。但要在速度慢,内存小,显示分辨率低的情况下,在嵌入式设备上实时显示三维图形,就不能完全照搬已有的图形学算法和引擎设计思路,需要对已有的真实感图形学算法开展工程化,实用化的研究。
     本文在深入分析了多种流行嵌入式GUI特点和实现方式的基础上,总结了3D图形绘制的最基本元素,进而设计了一种采用层次化体系结构、可剪裁可配置、包括3D图形支持的嵌入式GUI——AUTO GUI。该GUI不但可以提供传统2D和一般3D的API,而且提供代码生成模块,可根据用户的要求,采用数据驱动方式自生成可执行代码,从而减轻用户编程的复杂性,使AUTO GUI更易于使用。
     本论文的特色和创新之处包括:
     1)分析了嵌入式GUI软件开发的共性,尤其对体系结构和图形代码自动生成进行了深入的研究。
     2)提出了一种支持3D建模的嵌入式GUI模型,并分析该模型的层次结构。
     3)设计了AUTO GUI的体系结构,并依此实现了一个实用的嵌入式GUI系统模型。
     4)运用数据驱动方法,实现代码自动生成。
Embedded graphical user interface is the communication bridge between embedded equipments and users. With the increasing use of embedded equipments in military, medical and embedded 3D games, people pay more and more attention to high performance, dependable embedded dialogue graphical interface. In this situation, it is very important to put the research on embedded GUI—the key technique of embedded system.
     Most traditional embedded GUI systems only provide 2D control to draw. That is, from the logical design, the manifestation plane that it provides to users is two dimensions. The biggest disadvantage of the system lies in the small amount reflection of information. When it is simulated display in real scene, it isn't able to provide the true datum. With the continuously improvement of hardware functions in embedded system, how to develop an embedded GUI which supports 3D modeling has become an urgent topic. To meet the need, we need to study how to apply graphical algorithms into embedded systems; how to achieve the pipeline of desktop 3D GUI in embedded systems. But in the situation of low speed, small memory and low resolving power, if users want to display 3D graphics in embedded equipments real-time, the existed graphical algorithms and engine design thoughts can't be fully copied. The real graphical algorithms need to be changed to make them engineering and practical.
     This thesis analyzes the features and running ways of most embedded GUI in the market based on summarizing the basic elements of 3D graphical rendering. Then an embedded GUI—AUTO GUI was designed , which adopts the layer system structure, is able to delete and configure, and includes 3D graphics support. AUTO GUI not only can provide the traditional 2D and the general API, but also the code generation module. Besides, according to the request of users, it can generate usable codes automatically using the data driven method, in this way to reduce the complexity of programming and make AUTO GUI liable to be used.
     The features and innovations of the thesis include:
     Analyze the common features of embedded GUI software development, particularly do the overall research on system structure and graphical code generation
     Put forward a kind of embedded GUI model that supports 3D modeling, and analyze the layer structure of the model.
     Design an AUTO GUI system structure, and then produces a practical embedded GUI system model.
     Use data driven method, to achieve code generation automatically.
引文
[1]陈沨,毛洋林,潘志浩.基于嵌入式Linux的图形界面显示系统的设计[J].微计算机信息.2004年
    [2]魏忠,蔡勇,雷红卫.嵌入式开发详解[M].电子工业出版社,2003年1月
    [3]刘峥嵘,张智超,许振山.嵌入式Linux应用开发详解[M].机械工业出版社,2004年7
    [4]王田苗.嵌入式系统设计与实例分析.清华大学出版社,2003年10月第二版
    [5]孙家广.计算机图形学(第三版).北京:清华人学出版社,2003
    [6]Donald Hearn,M.Pauline Baker.计算机图形学(蔡士杰,吴春,孙正兴等译).北京:电子工业出版社,1998
    [7]David H.Eberly.3D Game Engine Design:A Parctical Approach to Real-Time Computer Graphics.Morgan Kaufmann Publishers,2001
    [8]Richard N.Taylor,etal.A Component and Message-Based Architectural Style for GUI software.IEEE Transactions on Software Engineering,June 1996:104-176
    [9]Brad A Myers,Hudson,Pausch.Past、Present and Future of User Interface Software Tools[J].ACM Transactions on Computer-Human Interaction,2000,7(1):3-28
    [10]魏永明.实时嵌入式Linux系统上GUI的发展与展望.微电脑世界,2000.49
    [11]www.kernel.org、www.mini.org、www.linux.org、www.Ibm.com
    [12]马晓波.嵌入式GUI的研制—GUI支撑技术的研究与实现(硕士学位论文),2003年3月1日
    [13]Yonglei Tao.Design patterns for developing GUI applications.Frontiers in Education Conference,1999(01):11-19
    [14]http://www.minigui.org
    [15]http://www.trolltech.com/products/qt/embedded
    [16]Xavier Hubert,Chambellan,Dominique.Direct 3D-reconstruction from a single 2D-image obtained through a coded-aperture.IEEEVolume 5,Oct.26 2007-Nov.3 2007 Page(s):3886-3888
    [17]OpenGL ARB.OpenGL Programming Guide[M].Prentice Hall,1999
    [18]吴继承,江南.虚拟现实中粒子系统的设计与应用.计算机仿真.2004.21(11):137-140
    [19]Geyer L.Feature modeling using design spaces.Proceedings of the 1st German Workshop on Software Product Lines.2000.35-39
    [20]魏永明.实时嵌入式Linux系统上GUI的发展与展望.微电子界.2000.(49):25-28
    [21]周晓光,翟尹羚.基于嵌入式Linux下的MiniGUI的应用.电脑知识与技术.2005,(35):32-35
    [22]安成锦,孙茂阳.基于嵌入式Linux系统的MiniGUI图形界面开发.现代电子技术.2005,(20):45-49
    [23]白建军等。OpenGL三维图形与制作.北京:人民邮电出版社,1999
    [24]吴斌,毕丽蕴.OpellGL编程实例与技巧.北京:人民邮电出版社,1999
    [25]向世明.OpenGL编程与实例.北京:电子工业出版社,1999
    [26]彭晓民,王坚.OpenGL深入编程与实例揭秘.北京:人民邮电出版社,1999
    [27]http://opengl.org/developer/documtation/.2005.1.12
    [28]和平鸽工作室.OpenGL高级编程与可视化系统开发[M].北京:中国水利水电出版社,2003
    [29]OpenGLARB.OpenGL Programming Guide[M].Prentice Hall,1999
    [30]Dr.Eric M.Schaffer.C.P.E.How To Develop An Effective GUI Standard,2001
    [31]李文杰,王青.基于消息队列机制的应用服务系统的设计.计算机系统应用,2003
    [32]蔡志明.精通QT4编程.电子工业出版社,2008-1-1
    [33]彭文,陈虹,罗惠琼.嵌入式窗口系统的研究与实现.计算机应用研究,2002
    [34]官笑笑编著.3ds MAX 6完全征服手册[M].北京:中国青年出版社,2004年4月
    [35]杨克俭,刘舒燕,陈定方.虚拟现实中的建模方法.武汉理工大学学报,2001.2.3
    [36]Richard N.Taylor,et al.A Component- and Message-Based Architectural Style for GUI software.IEEE Transactions on Software Engineering,June 1996,205-304
    [37]Don Batory,Sean O'Mallet'.The design and implementation of hierarchical software systems with reusable components.ACM Press,October,1994
    [38]Bennet,Paul A.,Applications of Display Prototyping and Rehosting Tools to the Development of Simulator,Flight Training Device,and Cockpit Displays,American Institute if Aeronautics and Astronautics,1997
    [39]Snyder,M.,Mark Snyder,solving the embedded OpenGL puzzle—making standards,tools,and APIs work together in highly embedded and safety critical environments,Digital Avionics Systems Conference,2005.
    [40]Snyder,Mark I.,A Data-based Paradigm for Rapid Development of Advanced Avionics Displays,Proc.Digital Avionics Systems Conference,Indianapolis,IN,2003
    [41]姚敏,王惠南.基于OpenGL与3D Studio MAX 的三维模型格式的转换[J]:电脑学习.2004年,5:39-40
    [42]Silver D.Object-Oriented Visualization[J]:IEEE Computer Graphics and Application.1995,15(3):143-152
    [43]Brian Hook.Building a 3d Game Engine in C++.John Wiley&Sons,1995
    [44]David H.Eberly.3D Game Engine Design:A Parctical Approach to Real-Time ComputerGraphics.Morgan Kaufmann Publishers,2001.
    [45]Andre LaMothe.Tricks of the 3D Programming advanced 3D Graphics and Rasterization.人民邮电出版社,2003
    [46]Eric Lecolinet.A molecular architecture for creating advanced GUIs.ACM Press,Nor,2003
    [47]Ross McKegney,Dr.Terry Shepard.Design Patterns and Real-time Object-oriented Modeling,2000
    [48]Richard NT.A component-and message-based architectural style for GUI software[J],IEEE Trans on Software Engineering,1996,22(8):390-406
    [49]Hubbard P M.Collision detection for intersection graphics application.IEEE Transacions on Visualization and Computer Graphics.1995,1(3):218-230
    [50]N.Greene and M.Kass.Hierarchical Z-Buffer Visibility.In Proceedings of SIGGRAPH Computer Graphics Proceedings.Annual Confereice Series,1993.2
    [51]淮永建,郝重阳等.LOD和多边形表面简化.系统仿真学报,2001.11.13
    [52]Yonglei Tao.Design paterns for developing GUI applications.Frontiersin Education Conference,1999(01):11-19
    [53]Don Batory,with reusable Sean O' Mallet'.The design and implementation of hierarchical software systems components.ACM Press,October,1994
    [54]William D,Hurley S,John L,et al.application interaction[J].IEEE Software,Modeling user 1989,6(1)interface 62-70
    [55]Heam D.计算机图形学(第2版)[M].电子工业出版社,2003
    [56]Feng Yuan,Windows图形编程[M].机械工业出版社,2002年4月
    [57]Memon A,Pollack M,Soffa M L.Using a Goal driven Approach to Generate Test Cases for GUIs.Proc.of the 21 th Int.conon Software Eng[J].Los Angeles.CA,1999
NGLC 2004-2010.National Geological Library of China All Rights Reserved.
Add:29 Xueyuan Rd,Haidian District,Beijing,PRC. Mail Add: 8324 mailbox 100083
For exchange or info please contact us via email.