CN102523473A - 一种三维界面显示装置、方法及终端 - Google Patents

一种三维界面显示装置、方法及终端 Download PDF

Info

Publication number
CN102523473A
CN102523473A CN2011103931764A CN201110393176A CN102523473A CN 102523473 A CN102523473 A CN 102523473A CN 2011103931764 A CN2011103931764 A CN 2011103931764A CN 201110393176 A CN201110393176 A CN 201110393176A CN 102523473 A CN102523473 A CN 102523473A
Authority
CN
China
Prior art keywords
module
graphic
dimensional
played
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011103931764A
Other languages
English (en)
Other versions
CN102523473B (zh
Inventor
顾伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201110393176.4A priority Critical patent/CN102523473B/zh
Publication of CN102523473A publication Critical patent/CN102523473A/zh
Priority to PCT/CN2012/077950 priority patent/WO2013078859A1/zh
Application granted granted Critical
Publication of CN102523473B publication Critical patent/CN102523473B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种三维界面显示装置、方法及终端,所述方法包括三维界面视图模块检测用户对三维图形的操作并将其发送至三维控制器;三维控制器依据用户的操作向三维处理引擎发送三维界面渲染指令;三维渲染引擎依据所述三维界面渲染指令对***作的三维图形执行渲染处理。采用本发明,对于没有三维图形硬件加速的终端,也可以获得真实感较强的三维界面,从而为用户提供更好的交互体验。

Description

一种三维界面显示装置、方法及终端
技术领域
本发明涉及终端的图形用户界面技术领域,具体而言,涉及一种三维界面显示装置、方法及终端。
背景技术
随着电子技术的不断发展以及手机的日益普及,人们对于手机的功能要求也日益提高,例如,目前手机设计公司都非常重视手机图形用户界面的美化设计。这是因为手机产品出色的外观设计对于商品的销售与推广而言,有着举足轻重的作用,为此,向手机用户提供优美的图形用户界面以为其提供良好的交互体验便显得尤为重要。
目前,为了向手机用户提供更好的交互体验,常常对于人机交互界面采用三维界面的形式。其流畅动效、细腻柔和的画面、真实的空间感,能更真实的贴近用户感受,能使手机用户在更高层次的界面得到享受。
传统的在没有三维图形硬件加速的手机上进行三维图形界面显示的方法中,一般采用的是利用二维图形技术去仿造三维界面。由于不是使用三维图形技术,交互体验不能达到真实三维界面的效果,从而使得用户体验较差。
例如中国专利公开号为CN101655989,发明名称为《一种手机3D特效图形用户界面***及方法》,公开日为2010年2月24日的专利则公开了一种类似的三维界面显示方法,该技术的工作原理是:通过其三维特效处理模块对用户界面资源图片进行图片翻转、扭曲、变色等运算处理,然后将处理后的图片按照逻辑顺序进行排列,存储在手机内存中;当用户选择进入菜单界面时,人机接口模块按照逻辑顺序调用上述图片,使其产生立体翻转特效,从而达到三维立体效果。
该技术的不足之处在于,其操作的图片是二维图片资源,采用二维图形技术以仿造三维界面,不能制作出接近于真实感受的三维图形,从而降低了用户体验,同时,该方法也无法让其仿造的三维立体图片进行上下、左右、斜角等各种方向的翻转,因此其用户体验进一步被遏制。
发明内容
本发明的目的在于提供一种三维界面显示装置、方法及终端,采用所述三维界面显示装置及方法的终端,在没有三维图形硬件时,能够获得真实的三维界面。
为了达到本发明的目的,本发明采用以下技术方案:
一种三维界面显示装置,包括三维界面视图模块、三维控制器,以及三维渲染引擎,其中,
三维界面视图模块,用于检测用户对三维图形的操作并将其发送至三维控制器;
三维控制器,用于依据用户的操作向三维处理引擎发送三维界面渲染指令;
三维渲染引擎,用于依据所述三维界面渲染指令对***作的三维图形执行渲染处理。
优选地,所述三维界面视图模块包括图形用户界面窗口数据模块、用户输入检测模块,以及屏幕交互模块,其中,
图形用户界面窗口数据模块,用于封装图形用户界面GUI的窗口信息;
用户输入检测模块,用于检测用户对三维图形的操作并将其发送至三维控制器;
屏幕交互模块,用于显示三维界面。
优选地,所述三维渲染引擎至少包括模型坐标变换模块、世界坐标变换模块、物体剔除模块、***渲染列表模块、背面消除模块、相机坐标变换模块、光照着色模块、三维物体空间裁剪模块、纹理映射模块、透视变换模块、图像空间裁剪模块、以及光栅化模块中的一种,其中,
模型坐标变换模块,用于对三维图形的模型坐标进行变换;
世界坐标变换模块,用于依据三维图形的位置将模型坐标变换为世界坐标;
物体剔除模块,用于在执行世界坐标到相机坐标变换之前,选择并剔除三维图形中相对相机视点而言不可见的部分;
***渲染列表模块,用于将三维图形的可见部分的每个多边形面***到渲染列表中;
背面消除模块,用于消除被遮挡的三维图形中的多边形面;
相机坐标变换模块,用于依据相机视点对三维图形进行变换;
三维物体空间裁剪模块,用于依据三维视景体对三维图形中可见的部分进行裁剪;
光照着色模块,用于将三维图形由线框渲染为实体,以增强三维图形的三维真实感;
纹理映射模块,用于将一幅二维图像作为纹理贴到三维图形的一个多边形面上;
透视变换模块,用于将相机坐标变换为透视坐标,以使得三维图形变换为二维图片;
图像空间裁剪模块,用于将透视坐标变换为屏幕坐标;进一步用于将越过了屏幕边界的三维图形的部分进行裁剪;
光栅化模块,用于渲染三维图形到显示缓冲区。
优选地,所述三维渲染引擎依据三维界面渲染指令对***作的三维图形执行渲染处理的步骤包括:
依据用户对三维图形的操作,将三维图形的模型坐标值变换为世界坐标值;
将三维图形的每个多边形面***到渲染列表中;
创建照相机变换矩阵;
消除处于背面的多边形;
依据相机视点将三维图形的世界坐标值变换为相机坐标值;
根据三维视景体对只能看到一部分的三维图形进行裁剪;
对渲染列表执行深度排序;
将三维图形的相机坐标值变换为屏幕坐标值,将三维图形由线框渲染为实体;
绘制渲染场景,并将渲染后的三维图形保存到显存中。
一种终端,其包括如上所述的三维界面显示装置,所述装置包括三维界面视图模块、三维控制器,以及三维渲染引擎,其中,
三维界面视图模块,用于检测用户对三维图形的操作并将其发送至三维控制器;
三维控制器,用于依据用户的操作向三维处理引擎发送三维界面渲染指令;
三维渲染引擎,用于依据所述三维界面渲染指令对***作的三维图形执行渲染处理。
一种三维界面显示方法,其三维界面显示装置包括三维界面视图模块、三维控制器,以及三维渲染引擎,所述方法包括:
三维界面视图模块检测用户对三维图形的操作并将其发送至三维控制器;
三维控制器依据用户的操作向三维处理引擎发送三维界面渲染指令。
优选地,所述三维界面视图模块包括图形用户界面窗口数据模块、用户输入检测模块,以及屏幕交互模块,其中,
图形用户界面窗口数据模块,用于封装图形用户界面GUI的窗口信息;
用户输入检测模块,用于检测用户对三维图形的操作并将其发送至三维控制器;
屏幕交互模块,用于显示三维界面。
优选地,所述三维渲染引擎至少包括模型坐标变换模块、世界坐标变换模块、物体剔除模块、***渲染列表模块、背面消除模块、相机坐标变换模块、光照着色模块、三维物体空间裁剪模块、纹理映射模块、透视变换模块、图像空间裁剪模块、以及光栅化模块中的一种,其中,
模型坐标变换模块,用于对三维图形的模型坐标进行变换;
世界坐标变换模块,用于依据三维图形的位置将模型坐标变换为世界坐标;
物体剔除模块,用于在执行世界坐标到相机坐标变换之前,选择并剔除三维图形中相对相机视点而言不可见的部分;
***渲染列表模块,用于将三维图形的可见部分的每个多边形面***到渲染列表中;
背面消除模块,用于消除被遮挡的三维图形中的多边形面;
相机坐标变换模块,用于依据相机视点对三维图形进行变换;
三维物体空间裁剪模块,用于依据三维视景体对三维图形中可见的部分进行裁剪;
光照着色模块,用于将三维图形由线框渲染为实体,以增强三维图形的三维真实感;
纹理映射模块,用于将一幅二维图像作为纹理贴到三维图形的一个多边形面上;
透视变换模块,用于将相机坐标变换为透视坐标,以使得三维图形变换为二维图片;
图像空间裁剪模块,用于将透视坐标变换为屏幕坐标;进一步用于将越过了屏幕边界的三维图形的部分进行裁剪;
光栅化模块,用于渲染三维图形到显示缓冲区。
优选地,所述三维渲染引擎依据三维界面渲染指令对***作的三维图形执行渲染处理的步骤包括:
依据用户对三维图形的操作,将三维图形的模型坐标值变换为世界坐标值;
将三维图形的每个多边形面***到渲染列表中;
创建照相机变换矩阵;
消除处于背面的多边形;
依据相机视点将三维图形的世界坐标值变换为相机坐标值;
根据三维视景体对只能看到一部分的三维图形进行裁剪;
对渲染列表执行深度排序;
将三维图形的相机坐标值变换为屏幕坐标值,将三维图形由线框渲染为实体;
绘制渲染场景,并将渲染后的三维图形保存到显存中。
通过上述本发明的技术方案可以看出,本发明的有益效果是,对于没有三维图形硬件加速的终端(例如手机),也可以使用该本发明提供的三维界面显示装置、方法去获得真实感较强的三维界面,从而为用户提供更好的交互体验。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例提供的三维界面显示装置结构示意图;
图2是本发明实施例提供的三维界面显示方法流程示意图;
图3是本发明实施例提供的制作三维图形(三维立方体)的流程图;
图4是本发明实施例提供的制作三维图形(三维立方体)每个平面的流程图;
图5是本发明实施例提供的绘制三维界面的流程图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明实施例提供了一种三维界面显示装置,包括三维界面视图模块10、三维控制器20,以及三维渲染引擎30,其中,
三维界面视图模块10,用于检测用户对三维图形的操作并将其发送至三维控制器20;
三维控制器20,用于依据用户的操作向三维处理引擎发送三维界面渲染指令;
三维渲染引擎30,用于依据所述三维界面渲染指令对***作的三维图形执行渲染处理。
具体实施时,本发明实施例提供的三维界面显示装置采用MVC模式进行设计,将三维渲染引擎30、三维界面视图模块10、三维控制器20进行分离及解耦,使三维界面的设计和开发有了很大的灵活性。
其中,所述三维界面视图模块10用于解决可移植性问题,因为本发明实施例提供的三维界面显示装置是需要独立于手机图形用户界面GUI的,这样可以减少不同终端(例如手机,本发明实施例将主要以手机为例进行说明)上三维界面的开发成本。所以,提供三维界面视图模块10将手机图形用户界面GUI封装,以致在将三维界面显示装置移植到新的手机时,需要做的仅仅是在新的手机上对三维界面视图模块10进行修改,而其它部分不变。例如,在不同的手机上,显示的三维界面是相同的,不同的是仅仅修改其三维界面视图模块10。
三维界面视图模块10还用来和用户交互。具体来说,它封装了手机图形用户界面GUI的窗口,并具备用户输入一级屏幕输出功能,用以传递用户输入给三维控制器20。
具体地,继续参照图1,所述三维界面视图模块10包括图形用户界面窗口数据模块101、用户输入检测模块102,以及屏幕交互模块103,其中,
图形用户界面窗口数据模块101,用于封装图形用户界面GUI的窗口信息;
用户输入检测模块102,用于检测用户对三维图形的操作并将其发送至三维控制器20;
屏幕交互模块103,用于显示三维界面。
所述三维控制器20用于解决可扩展性问题,这是因为对于各种三维界面,它们的用户体验是不同的,但三维图形渲染是一致的,用户交互方式也是一致的。所以,在实际的实施过程中,各种不同的三维界面可以拥有各自的三维控制器20,而对于三维图形的渲染处理则统一由三维处理引擎处理,对于人机交互则统一由三维界面视图模块10处理。
在实际应用中,允许三维界面更换三维控制器20,而且可以根据用户需要动态地打开或关闭相对应的三维控制器20,甚至在运行期间可以进行三维控制器20的替换。例如,手机运行时,可以使得三维界面在各种风格之间进行切换。
三维控制器20的功能是用来取得用户输入并解读,例如解读用户对三维图形的操作,以获取用户对三维界面的操作用意。具体来说,它依据用户对于三维图形的操作,改变三维界面的视觉效果。
另外,三维渲染引擎30用于解决高性能问题,因为三维界面显示装置的处理速度性能必须非常快,才能在没有硬件加速的情况下,进行流畅地三维界面显示。所以,将性能消耗最多和代码量最多的三维渲染引擎30独立出来,专门用于高性能三维渲染。而且,在优化三维渲染引擎30性能时,不用修改各种手机上的三维界面。
三维渲染引擎30的功能是用来渲染三维图形的,它持有所有三维图形的数据、状态和程序逻辑。具体来说,它负责处理三维图形的数据结构(包括所有的光源、运动和常规状态信息)以及从用户或相机所在的视点渲染三维图形。
继续参照图1,所述三维渲染引擎30至少包括模型坐标变换模块301、世界坐标变换模块302、物体剔除模块303、***渲染列表模块304、背面消除模块305、相机坐标变换模块306、光照着色模块307、三维物体空间裁剪模块308、纹理映射模块309、透视变换模块310、图像空间裁剪模块311、以及光栅化模块312中的一种,其中,
模型坐标变换模块301,用于对三维图形的模型坐标进行变换。对三维图形的模型坐标进行变换。例如在原地执行旋转、缩放或其他顶点操作,即修改模型坐标。
世界坐标变换模块302,用于依据三维图形的位置将模型坐标变换为世界坐标;
物体剔除模块303,用于在执行世界坐标到相机坐标变换之前,选择并剔除三维图形中相对相机视点而言不可见的部分。在执行世界坐标到相机坐标变换之前,需要判断哪些三维图形相对相机视点而言是可见的,以免错误地渲染它们。
***渲染列表模块304,用于将三维图形的可见部分的每个多边形面***到渲染列表中。渲染列表是一个指针数组,其中每个指针指向一个自包含的、可渲染的多边形面。可见三维图形的每个多边形面都会***到渲染列表中。
背面消除模块305,用于消除被遮挡的三维图形中的多边形面;
相机坐标变换模块306,用于依据相机视点对三维图形进行变换;
三维物体空间裁剪模块308,用于依据三维视景体对三维图形中可见的部分进行裁剪;
光照着色模块307,用于将三维图形由线框渲染为实体,以增强三维图形的三维真实感;
纹理映射模块309,用于将一幅二维图像作为纹理贴到三维图形的一个多边形面上;
透视变换模块310,用于将相机坐标变换为透视坐标,以使得三维图形变换为二维图片;
图像空间裁剪模块311,用于将透视坐标变换为屏幕坐标;进一步用于将越过了屏幕边界的三维图形的部分进行裁剪;
光栅化模块312,用于渲染三维图形到显示缓冲区。
其中,所述三维渲染引擎30依据三维界面渲染指令对***作的三维图形执行渲染处理的步骤包括:
(1)依据用户对三维图形的操作,将三维图形的模型坐标值变换为世界坐标值;
(2)将三维图形的每个多边形面***到渲染列表中;
(3)创建照相机变换矩阵;
(4)消除处于背面的多边形;
(5)依据相机视点将三维图形的世界坐标值变换为相机坐标值;
(6)根据三维视景体对只能看到一部分的三维图形进行裁剪;
(7)对渲染列表执行深度排序;
(8)将三维图形的相机坐标值变换为屏幕坐标值,将三维图形由线框渲染为实体;
(9)绘制渲染场景,并将渲染后的三维图形保存到显存中。
更为具体地,请参考图5,其为本发明实施例提供的绘制三维界面的流程图,所述绘制流程包括如下步骤:
步骤S401、变换模型坐标。对三维立方体执行翻转、缩放或其他顶点操作,修改了三维立方体的模型坐标值。根据三维图形的位置将模型坐标变换为世界坐标。
步骤S402、将物体***到渲染列表中。为了更快地绘制,将每个物体中的多边形提取出来,统一地保存在渲染列表中。渲染列表是一个指针数组,其中每个指针指向一个自包含的、可渲染的多边形面,可见三维图形的每个多边形面都会***到渲染列表中。
步骤S403、创建照相机变换矩阵。用于下面步骤中的矩阵运算。
步骤S404、消除处于背面的多边形。执行世界坐标到相机坐标变换之前,需要判断哪些三维图形对相机而言是可见的,以免错误地渲染它们。人眼看不到的背面是不用绘制的,通过使用照相机变换矩阵,消除渲染列表中处于背面的多边形。
步骤S405、变换世界坐标到相机坐标。根据相机位置和视角对可能的可见三维图形进行变换。
步骤S406、对多边形进行三维裁剪。根据三维视景体对只能看到一部分的三维图形进行裁剪。
步骤S407、对渲染列表执行深度排序。用于加速渲染列表中多边形的绘制。
步骤S408、变换相机坐标到屏幕坐标。将三维图形由线框渲染为实体,来增强三维图形的三维真实感。使用一幅二维图像作为纹理贴到三维图形的一个多边形面上。将相机坐标变换为透视坐标,三维图形变换为二维图像。将透视坐标变换为屏幕坐标,有些多边形图像可能越过了屏幕边界,需要对其裁剪。
步骤S409、绘制渲染场景。渲染三维图形的最终图像到手机屏幕的显存中。例如,三维立方体是以不透明方式绘制,三维立方体镜像是以半透明的方式绘制,所述三维立方体镜像模拟了所述三维立方体的倒影,其翻转方向就像倒影一样,和三维立方体的翻转方向相反。
步骤S410、完成三维立方体的绘制。
相应地,本发明实施例还提供了一种终端,其包括如上所述的三维界面显示装置,继续参照图1,所述装置包括三维界面视图模块10、三维控制器20,以及三维渲染引擎30,其中,
三维界面视图模块10,用于检测用户对三维图形的操作并将其发送至三维控制器20;
三维控制器20,用于依据用户的操作向三维处理引擎发送三维界面渲染指令;
三维渲染引擎30,用于依据所述三维界面渲染指令对***作的三维图形执行渲染处理。
本发明实施例提供的终端,由于其包含如上文所述的三维界面显示装置,且由于上文对该三维界面显示装置进行了详细的描述,这里将不再对其进行重复赘述。
如图2所示,本发明实施例还提供了一种三维界面显示方法,其三维界面显示装置包括三维界面视图模块10、三维控制器20,以及三维渲染引擎30,所述方法包括:
S101、三维界面视图模块10检测用户对三维图形的操作并将其发送至三维控制器20;
S102、三维控制器20依据用户的操作向三维处理引擎发送三维界面渲染指令;
S103、三维渲染引擎30依据所述三维界面渲染指令对***作的三维图形执行渲染处理。
对于所述三维界面显示装置详细说明,请参考上文所述,这里不再重复说明。
如图3所示,其为本发明实施例制作三维立方体的流程示意图,所述流程包括:
步骤S201、设置绘制区域。确定三维立方体在手机屏幕中的位置,三维立方***于绘制区域之内的部分会被绘制出来,位于绘制区域之外的部分会被裁剪掉,而不会被绘制。
步骤S202、设置有效区域。对于触摸屏手机,用户的触摸位置位于有效区域之内时,三维立方体才会做出交互反应。例如,用户的手指在有效区域移动时,三维立方体会向手指移动方向翻转,用户的手指在有效区域之外移动时,三维立方体不会翻转。
步骤S203、新建帧缓冲区。本发明三维界面引擎使用双缓冲机制,在手机屏幕中,被逐行扫描出来的是帧缓冲区中完整的三维界面,而不是绘制三维界面的过程。
步骤S204、判断是最后一个面。循环处理三维立方体的六个平面。
步骤S205、新建三维立方体的平面。制作三维立方体的每个平面,具体步骤见下文关于图4的描述。
步骤S206、新建绘制区域背景。该图像作为三维立方体的背景。
步骤S207、新建照相机。模拟了人的眼睛,在三维空间中,人通过眼睛观察三维物体,离自己近的物体看上去大,而离自己远的物体看上去小,这会产生真实的空间感。
步骤S208、新建深度缓存。在三维空间中,离自己近的物体会挡住离自己远的物体,深度缓存保存了物体的远近位置。二维空间使用X、Y两个坐标轴,三维空间使用X、Y、Z三个坐标轴,深度缓存中的值代表了Z坐标轴上的值。
步骤S209、新建渲染场景。这是绘制三维物体时的上下文,渲染场景包括渲染列表、深度缓存、屏幕显存、透明度的具体数据,它决定三维物体以何种方式绘制出来。
步骤S210、新建半透明表。半透明的三维立方体镜像102是三维立方体101的倒影,绘制镜像时要用到该半透明表。
步骤S211、完成三维立方体的制作。
如图4所示,其为本发明实施例提供的制作三维立方体每个平面的流程示意图。它详细描述了上述步骤S205的具体实现内容,其实现步骤如下:
步骤S301、设置三维立方体面标示。三维立方体有六个面,位于上下左右前后,其数值是各不相同的,通过标示决定赋予该面何种数值。
步骤S302、新建顶点列表。该列表保存了三维立方体面每个顶点的位置,使用的是模型坐标,所有多边形是由顶点构成的。
步骤S303、新建纹理坐标列表。该列表保存了要贴在该面上,纹理的坐标位置,通过这些坐标位置对图像进行采样,然后构成了纹理的像素数据。
步骤S304、新建顶点纹理映射表。该列表建立了顶点与纹理坐标一一对应的关系,决定了该顶点使用纹理中哪个具体的像素数据。
步骤S305、新建多边形列表。该列表保存了多边形数据,这里的多边形都是三角形,使用三角形的好处是三角形的每个顶点都是共面的,而且三角形结构简单,易于三维图形算法快速绘制。三角形是三维图形渲染流水线绘制的基本图元,所有三维物体是由三角形构成的。
步骤S306、设置物***置。确定三维物体在三维空间中的位置,即它在世界坐标系中的位置。
步骤S307、设置物体坐标轴。为了准确翻转,三维物体有用于记录朝向的模型坐标轴,使用世界坐标。这样沿X、Y、Z三个坐标轴翻转时,才能知道三维物体的朝向。
步骤S308、使物体大小匹配绘制区域。三维立方体会自动匹配绘制区域的大小,使它自己能被完整地被绘制出来。
步骤S309、新建纹理。每个三维立方体面都会填一张图像,使用纹理对图像缩放采样,已匹配三维立方体面的大小。
步骤S310、设置所有列表的值。顶点列表、纹理坐标列表、多边形列表会填上准确的数值,这些数值在绘制流程中使用。
步骤S311、完成三维立方体面的制作。
在本发明实施例中,所述三维渲染引擎30依据三维界面渲染指令对***作的三维图形执行渲染处理的步骤包括:
(1)依据用户对三维图形的操作,将三维图形的模型坐标值变换为世界坐标值;
(2)将三维图形的每个多边形面***到渲染列表中;
(3)创建照相机变换矩阵;
(4)消除处于背面的多边形;
(5)依据相机视点将三维图形的世界坐标值变换为相机坐标值;
(6)根据三维视景体对只能看到一部分的三维图形进行裁剪;
(7)对渲染列表执行深度排序;
(8)将三维图形的相机坐标值变换为屏幕坐标值,将三维图形由线框渲染为实体;
(9)绘制渲染场景,并将渲染后的三维图形保存到显存中。
更为具体地,请参考图5,其为本发明实施例提供的绘制三维界面的流程图,所述绘制流程包括如下步骤:
步骤S401、变换模型坐标。对三维立方体执行翻转、缩放或其他顶点操作,修改了三维立方体的模型坐标值。根据三维图形的位置将模型坐标变换为世界坐标。
步骤S402、将物体***到渲染列表中。为了更快地绘制,将每个物体中的多边形提取出来,统一地保存在渲染列表中。渲染列表是一个指针数组,其中每个指针指向一个自包含的、可渲染的多边形面,可见三维图形的每个多边形面都会***到渲染列表中。
步骤S403、创建照相机变换矩阵。用于下面步骤中的矩阵运算。
步骤S404、消除处于背面的多边形。执行世界坐标到相机坐标变换之前,需要判断哪些三维图形对相机而言是可见的,以免错误地渲染它们。人眼看不到的背面是不用绘制的,通过使用照相机变换矩阵,消除渲染列表中处于背面的多边形。
步骤S405、变换世界坐标到相机坐标。根据相机位置和视角对可能的可见三维图形进行变换。
步骤S406、对多边形进行三维裁剪。根据三维视景体对只能看到一部分的三维图形进行裁剪。
步骤S407、对渲染列表执行深度排序。用于加速渲染列表中多边形的绘制。
步骤S408、变换相机坐标到屏幕坐标。将三维图形由线框渲染为实体,来增强三维图形的三维真实感。使用一幅二维图像作为纹理贴到三维图形的一个多边形面上。将相机坐标变换为透视坐标,三维图形变换为二维图像。将透视坐标变换为屏幕坐标,有些多边形图像可能越过了屏幕边界,需要对其裁剪。
步骤S409、绘制渲染场景。渲染三维图形的最终图像到手机屏幕的显存中。例如,三维立方体是以不透明方式绘制,三维立方体镜像是以半透明的方式绘制,所述三维立方体镜像模拟了所述三维立方体的倒影,其翻转方向就像倒影一样,和三维立方体的翻转方向相反。
步骤S410、完成三维立方体的绘制。
上述说明示出并描述了本发明的一个优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

Claims (9)

1.一种三维界面显示装置,其特征在于,包括三维界面视图模块、三维控制器,以及三维渲染引擎,其中,
三维界面视图模块,用于检测用户对三维图形的操作并将其发送至三维控制器;
三维控制器,用于依据用户的操作向三维处理引擎发送三维界面渲染指令;
三维渲染引擎,用于依据所述三维界面渲染指令对***作的三维图形执行渲染处理。
2.如权利要求1所述的三维界面显示装置,其特征在于,所述三维界面视图模块包括图形用户界面窗口数据模块、用户输入检测模块,以及屏幕交互模块,其中,
图形用户界面窗口数据模块,用于封装图形用户界面GUI的窗口信息;
用户输入检测模块,用于检测用户对三维图形的操作并将其发送至三维控制器;
屏幕交互模块,用于显示三维界面。
3.如权利要求1所述的三维界面显示装置,其特征在于,所述三维渲染引擎至少包括模型坐标变换模块、世界坐标变换模块、物体剔除模块、***渲染列表模块、背面消除模块、相机坐标变换模块、光照着色模块、三维物体空间裁剪模块、纹理映射模块、透视变换模块、图像空间裁剪模块、以及光栅化模块中的一种,其中,
模型坐标变换模块,用于对三维图形的模型坐标进行变换;
世界坐标变换模块,用于依据三维图形的位置将模型坐标变换为世界坐标;
物体剔除模块,用于在执行世界坐标到相机坐标变换之前,选择并剔除三维图形中相对相机视点而言不可见的部分;
***渲染列表模块,用于将三维图形的可见部分的每个多边形面***到渲染列表中;
背面消除模块,用于消除被遮挡的三维图形中的多边形面;
相机坐标变换模块,用于依据相机视点对三维图形进行变换;
三维物体空间裁剪模块,用于依据三维视景体对三维图形中可见的部分进行裁剪;
光照着色模块,用于将三维图形由线框渲染为实体,以增强三维图形的三维真实感;
纹理映射模块,用于将一幅二维图像作为纹理贴到三维图形的一个多边形面上;
透视变换模块,用于将相机坐标变换为透视坐标,以使得三维图形变换为二维图片;
图像空间裁剪模块,用于将透视坐标变换为屏幕坐标;进一步用于将越过了屏幕边界的三维图形的部分进行裁剪;
光栅化模块,用于渲染三维图形到显示缓冲区。
4.如权利要求1或3所述的三维界面显示装置,其特征在于,所述三维渲染引擎依据三维界面渲染指令对***作的三维图形执行渲染处理的步骤包括:
依据用户对三维图形的操作,将三维图形的模型坐标值变换为世界坐标值;
将三维图形的每个多边形面***到渲染列表中;
创建照相机变换矩阵;
消除处于背面的多边形;
依据相机视点将三维图形的世界坐标值变换为相机坐标值;
根据三维视景体对只能看到一部分的三维图形进行裁剪;
对渲染列表执行深度排序;
将三维图形的相机坐标值变换为屏幕坐标值,将三维图形由线框渲染为实体;
绘制渲染场景,并将渲染后的三维图形保存到显存中。
5.一种终端,其特征在于,包括如权利要求1-4任一所述的三维界面显示装置。
6.一种三维界面显示方法,其特征在于,其三维界面显示装置包括三维界面视图模块、三维控制器,以及三维渲染引擎,所述方法包括:
三维界面视图模块检测用户对三维图形的操作并将其发送至三维控制器;
三维控制器依据用户的操作向三维处理引擎发送三维界面渲染指令;
三维渲染引擎依据所述三维界面渲染指令对***作的三维图形执行渲染处理。
7.如权利要求6所述的三维界面显示方法,其特征在于,所述三维界面视图模块包括图形用户界面窗口数据模块、用户输入检测模块,以及屏幕交互模块,其中,
图形用户界面窗口数据模块,用于封装图形用户界面GUI的窗口信息;
用户输入检测模块,用于检测用户对三维图形的操作并将其发送至三维控制器;
屏幕交互模块,用于显示三维界面。
8.如权利要求6所述的三维界面显示方法,其特征在于,所述三维渲染引擎至少包括模型坐标变换模块、世界坐标变换模块、物体剔除模块、***渲染列表模块、背面消除模块、相机坐标变换模块、光照着色模块、三维物体空间裁剪模块、纹理映射模块、透视变换模块、图像空间裁剪模块、以及光栅化模块中的一种,其中,
模型坐标变换模块,用于对三维图形的模型坐标进行变换;
世界坐标变换模块,用于依据三维图形的位置将模型坐标变换为世界坐标;
物体剔除模块,用于在执行世界坐标到相机坐标变换之前,选择并剔除三维图形中相对相机视点而言不可见的部分;
***渲染列表模块,用于将三维图形的可见部分的每个多边形面***到渲染列表中;
背面消除模块,用于消除被遮挡的三维图形中的多边形面;
相机坐标变换模块,用于依据相机视点对三维图形进行变换;
三维物体空间裁剪模块,用于依据三维视景体对三维图形中可见的部分进行裁剪;
光照着色模块,用于将三维图形由线框渲染为实体,以增强三维图形的三维真实感;
纹理映射模块,用于将一幅二维图像作为纹理贴到三维图形的一个多边形面上;
透视变换模块,用于将相机坐标变换为透视坐标,以使得三维图形变换为二维图片;
图像空间裁剪模块,用于将透视坐标变换为屏幕坐标;进一步用于将越过了屏幕边界的三维图形的部分进行裁剪;
光栅化模块,用于渲染三维图形到显示缓冲区。
9.如权利要求6所述的三维界面显示方法,其特征在于,所述三维渲染引擎依据三维界面渲染指令对***作的三维图形执行渲染处理的步骤包括:
依据用户对三维图形的操作,将三维图形的模型坐标值变换为世界坐标值;
将三维图形的每个多边形面***到渲染列表中;
创建照相机变换矩阵;
消除处于背面的多边形;
依据相机视点将三维图形的世界坐标值变换为相机坐标值;
根据三维视景体对只能看到一部分的三维图形进行裁剪;
对渲染列表执行深度排序;
将三维图形的相机坐标值变换为屏幕坐标值,将三维图形由线框渲染为实体;
绘制渲染场景,并将渲染后的三维图形保存到显存中。
CN201110393176.4A 2011-12-01 2011-12-01 一种三维界面显示装置、方法及终端 Active CN102523473B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110393176.4A CN102523473B (zh) 2011-12-01 2011-12-01 一种三维界面显示装置、方法及终端
PCT/CN2012/077950 WO2013078859A1 (zh) 2011-12-01 2012-06-29 一种三维界面显示装置、方法及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110393176.4A CN102523473B (zh) 2011-12-01 2011-12-01 一种三维界面显示装置、方法及终端

Publications (2)

Publication Number Publication Date
CN102523473A true CN102523473A (zh) 2012-06-27
CN102523473B CN102523473B (zh) 2016-08-31

Family

ID=46294249

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110393176.4A Active CN102523473B (zh) 2011-12-01 2011-12-01 一种三维界面显示装置、方法及终端

Country Status (2)

Country Link
CN (1) CN102523473B (zh)
WO (1) WO2013078859A1 (zh)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092612A (zh) * 2012-12-31 2013-05-08 深圳天珑无线科技有限公司 实现安卓操作***3d桌面贴图的方法及电子装置
WO2013078859A1 (zh) * 2011-12-01 2013-06-06 中兴通讯股份有限公司 一种三维界面显示装置、方法及终端
CN103309562A (zh) * 2013-06-28 2013-09-18 北京小米科技有限责任公司 桌面显示方法、装置和移动终端
CN103455970A (zh) * 2013-08-30 2013-12-18 天津市测绘院 利用三维数字城市***模型非可见部分的加速显示方法
CN104598182A (zh) * 2014-12-25 2015-05-06 北京数码大方科技股份有限公司 用于文档的三维演示方法及装置
CN105007480A (zh) * 2015-07-06 2015-10-28 上海玮舟微电子科技有限公司 一种三维数据的裸眼3d显示方法及***
CN105051792A (zh) * 2012-12-26 2015-11-11 英特尔公司 用于使用深度映射和光源合成增强3d图像的设备
CN105808220A (zh) * 2014-12-30 2016-07-27 深圳Tcl数字技术有限公司 应用程序显示三维立体效果的方法及装置
CN105894566A (zh) * 2015-12-01 2016-08-24 乐视致新电子科技(天津)有限公司 模型渲染方法及装置
CN106412562A (zh) * 2015-07-31 2017-02-15 深圳创锐思科技有限公司 三维场景中显示立体内容的方法及其***
CN107015654A (zh) * 2017-04-10 2017-08-04 深圳大学 基于增强现实的导航方法及装置
CN107045437A (zh) * 2016-02-05 2017-08-15 阿里巴巴集团控股有限公司 一种实现批渲染的方法、装置和设备
CN107527377A (zh) * 2017-08-25 2017-12-29 扆冰蕾 一种基于移动平台的三维虚拟地球悬空中文字符渲染方法
CN107608608A (zh) * 2017-09-25 2018-01-19 浙江科澜信息技术有限公司 一种三维图形渲染引擎的信息交互方法、装置及***
CN108305208A (zh) * 2017-12-12 2018-07-20 杭州品茗安控信息技术股份有限公司 一种模型动态分析优化及三维交互处理方法
CN108479067A (zh) * 2018-04-12 2018-09-04 网易(杭州)网络有限公司 游戏画面的渲染方法和装置
CN108537874A (zh) * 2017-03-01 2018-09-14 黎志毅 三维灯光数据自动转换到ue4的方法
CN108734792A (zh) * 2018-05-24 2018-11-02 北京邮电大学 具有远程交互功能的全息投影辅助教学方法、装置及***
CN109828818A (zh) * 2019-01-29 2019-05-31 广联达科技股份有限公司 一种基于浏览器端显示引擎的图元样式变换方法
CN109887078A (zh) * 2019-03-12 2019-06-14 百度在线网络技术(北京)有限公司 天空绘制方法、装置、设备和介质
CN110232718A (zh) * 2019-05-10 2019-09-13 西安航天动力试验技术研究所 一种三维瀑布图渲染颜色定制化方法
CN113808271A (zh) * 2020-06-17 2021-12-17 广东博智林机器人有限公司 三维模型的渲染方法、装置、电子设备及存储介质
CN113900744A (zh) * 2020-06-22 2022-01-07 深圳市万普拉斯科技有限公司 屏幕显示方法、装置、终端和计算机可读存储介质
WO2023138504A1 (zh) * 2022-01-21 2023-07-27 北京字跳网络技术有限公司 图像渲染方法、装置、电子设备及存储介质
CN118154760A (zh) * 2024-05-10 2024-06-07 山东捷瑞数字科技股份有限公司 一种基于三维引擎在模型表面的实时交互方法及***

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060236260A1 (en) * 2004-12-09 2006-10-19 Microsoft Corporation Journal display having three dimensional appearance
CN101340598A (zh) * 2008-08-07 2009-01-07 北京衡准科技有限公司 一种实现媒体三维播放的方法及装置
CN101500328A (zh) * 2008-02-02 2009-08-05 德信智能手机技术(北京)有限公司 一种在手机上实现三维交互的装置和方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102523473B (zh) * 2011-12-01 2016-08-31 南京中兴软件有限责任公司 一种三维界面显示装置、方法及终端

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060236260A1 (en) * 2004-12-09 2006-10-19 Microsoft Corporation Journal display having three dimensional appearance
CN101500328A (zh) * 2008-02-02 2009-08-05 德信智能手机技术(北京)有限公司 一种在手机上实现三维交互的装置和方法
CN101340598A (zh) * 2008-08-07 2009-01-07 北京衡准科技有限公司 一种实现媒体三维播放的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张建中: "《3D图形渲染引擎的设计与实现》", 《中国优秀硕士学位论文全文数据库信息科技辑》, 31 March 2007 (2007-03-31), pages 138 - 1113 *

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013078859A1 (zh) * 2011-12-01 2013-06-06 中兴通讯股份有限公司 一种三维界面显示装置、方法及终端
CN105051792A (zh) * 2012-12-26 2015-11-11 英特尔公司 用于使用深度映射和光源合成增强3d图像的设备
CN105051792B (zh) * 2012-12-26 2019-02-22 英特尔公司 用于使用深度映射和光源合成增强3d图像的设备
CN103092612B (zh) * 2012-12-31 2016-12-28 深圳天珑无线科技有限公司 实现安卓操作***3d桌面贴图的方法及电子装置
CN103092612A (zh) * 2012-12-31 2013-05-08 深圳天珑无线科技有限公司 实现安卓操作***3d桌面贴图的方法及电子装置
CN103309562A (zh) * 2013-06-28 2013-09-18 北京小米科技有限责任公司 桌面显示方法、装置和移动终端
CN103455970A (zh) * 2013-08-30 2013-12-18 天津市测绘院 利用三维数字城市***模型非可见部分的加速显示方法
CN104598182A (zh) * 2014-12-25 2015-05-06 北京数码大方科技股份有限公司 用于文档的三维演示方法及装置
CN104598182B (zh) * 2014-12-25 2018-02-02 北京数码大方科技股份有限公司 用于文档的三维演示方法及装置
CN105808220B (zh) * 2014-12-30 2020-03-17 深圳Tcl数字技术有限公司 应用程序显示三维立体效果的方法及装置
CN105808220A (zh) * 2014-12-30 2016-07-27 深圳Tcl数字技术有限公司 应用程序显示三维立体效果的方法及装置
CN105007480A (zh) * 2015-07-06 2015-10-28 上海玮舟微电子科技有限公司 一种三维数据的裸眼3d显示方法及***
CN106412562A (zh) * 2015-07-31 2017-02-15 深圳创锐思科技有限公司 三维场景中显示立体内容的方法及其***
CN106412562B (zh) * 2015-07-31 2019-10-25 深圳超多维科技有限公司 三维场景中显示立体内容的方法及其***
CN105894566A (zh) * 2015-12-01 2016-08-24 乐视致新电子科技(天津)有限公司 模型渲染方法及装置
WO2017092307A1 (zh) * 2015-12-01 2017-06-08 乐视控股(北京)有限公司 模型渲染方法及装置
CN107045437A (zh) * 2016-02-05 2017-08-15 阿里巴巴集团控股有限公司 一种实现批渲染的方法、装置和设备
CN108537874A (zh) * 2017-03-01 2018-09-14 黎志毅 三维灯光数据自动转换到ue4的方法
WO2018188479A1 (zh) * 2017-04-10 2018-10-18 深圳大学 基于增强现实的导航方法及装置
CN107015654A (zh) * 2017-04-10 2017-08-04 深圳大学 基于增强现实的导航方法及装置
CN107527377A (zh) * 2017-08-25 2017-12-29 扆冰蕾 一种基于移动平台的三维虚拟地球悬空中文字符渲染方法
CN107608608A (zh) * 2017-09-25 2018-01-19 浙江科澜信息技术有限公司 一种三维图形渲染引擎的信息交互方法、装置及***
CN108305208A (zh) * 2017-12-12 2018-07-20 杭州品茗安控信息技术股份有限公司 一种模型动态分析优化及三维交互处理方法
CN108479067A (zh) * 2018-04-12 2018-09-04 网易(杭州)网络有限公司 游戏画面的渲染方法和装置
US11217015B2 (en) 2018-04-12 2022-01-04 Netease (Hangzhou) Network Co., Ltd. Method and apparatus for rendering game image
CN108734792A (zh) * 2018-05-24 2018-11-02 北京邮电大学 具有远程交互功能的全息投影辅助教学方法、装置及***
CN108734792B (zh) * 2018-05-24 2020-11-13 北京邮电大学 具有远程交互功能的全息投影辅助教学方法、装置及***
CN109828818A (zh) * 2019-01-29 2019-05-31 广联达科技股份有限公司 一种基于浏览器端显示引擎的图元样式变换方法
CN109828818B (zh) * 2019-01-29 2022-03-01 广联达科技股份有限公司 一种基于浏览器端显示引擎的图元样式变换方法
CN109887078A (zh) * 2019-03-12 2019-06-14 百度在线网络技术(北京)有限公司 天空绘制方法、装置、设备和介质
CN110232718A (zh) * 2019-05-10 2019-09-13 西安航天动力试验技术研究所 一种三维瀑布图渲染颜色定制化方法
CN110232718B (zh) * 2019-05-10 2021-01-08 西安航天动力试验技术研究所 一种三维瀑布图渲染颜色定制化方法
CN113808271A (zh) * 2020-06-17 2021-12-17 广东博智林机器人有限公司 三维模型的渲染方法、装置、电子设备及存储介质
CN113900744A (zh) * 2020-06-22 2022-01-07 深圳市万普拉斯科技有限公司 屏幕显示方法、装置、终端和计算机可读存储介质
WO2023138504A1 (zh) * 2022-01-21 2023-07-27 北京字跳网络技术有限公司 图像渲染方法、装置、电子设备及存储介质
CN118154760A (zh) * 2024-05-10 2024-06-07 山东捷瑞数字科技股份有限公司 一种基于三维引擎在模型表面的实时交互方法及***

Also Published As

Publication number Publication date
CN102523473B (zh) 2016-08-31
WO2013078859A1 (zh) 2013-06-06

Similar Documents

Publication Publication Date Title
CN102523473A (zh) 一种三维界面显示装置、方法及终端
US10192363B2 (en) Math operations in mixed or virtual reality
KR101491035B1 (ko) 3-d 모델 뷰 조작 장치
CN1932885B (zh) 三维图像处理
EP3814876B1 (en) Placement and manipulation of objects in augmented reality environment
CN110546951B (zh) 合成立体视觉图像内容捕获
CN106415667A (zh) 具有增强的深度效果的计算机图形
US20160140761A1 (en) Using depth information for drawing in augmented reality scenes
CN109725956B (zh) 一种场景渲染的方法以及相关装置
KR20210082242A (ko) 증강-현실 또는 가상-현실 씬에서 오브젝트들의 표현들의 생성 및 수정
CN103959340A (zh) 用于自动立体三维显示器的图形呈现技术
CN111445563B (zh) 一种图像生成的方法以及相关装置
CN114514493A (zh) 增强设备
CN114089784B (zh) 一种基于mr眼镜的无人机控制方法及***
GB2558027A (en) Quadrangulated layered depth images
JP2012190428A (ja) 立体映像視覚効果処理方法
CN102147926A (zh) 3d图标的处理方法、装置及移动终端
CN110709893A (zh) 高品质分层深度图像纹理光栅化
JP4728721B2 (ja) プログラム、情報記憶媒体及び画像生成システム
CN115375822A (zh) 云模型的渲染方法、装置、存储介质及电子装置
JP7500017B2 (ja) 複数のデバイス間での3dオブジェクトの視覚化および操作を容易にする方法および装置
US9043707B2 (en) Configurable viewcube controller
Hachet et al. Touch-based interfaces for interacting with 3D content in public exhibitions
CN105046740A (zh) 基于OpenGL ES的3D图形处理方法及装置
CN115686202A (zh) 跨Unity/Optix平台的三维模型交互渲染方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160725

Address after: 210012 Nanjing, Yuhuatai District, South Street, Bauhinia Road, No. 68

Applicant after: Nanjing Zhongxing Software Co., Ltd.

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Applicant before: ZTE Corporation

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180425

Address after: 518057 five floor, block A, ZTE communication tower, Nanshan District science and Technology Park, Shenzhen, Guangdong.

Patentee after: ZTE Corporation

Address before: 210012 No. 68, Bauhinia Road, Ningnan street, Yuhuatai District, Nanjing, Jiangsu

Patentee before: Nanjing Zhongxing Software Co., Ltd.

TR01 Transfer of patent right