CN108958568A - 一种三维图形引擎中曲面ui的显示、交互方法和装置 - Google Patents
一种三维图形引擎中曲面ui的显示、交互方法和装置 Download PDFInfo
- Publication number
- CN108958568A CN108958568A CN201710347058.7A CN201710347058A CN108958568A CN 108958568 A CN108958568 A CN 108958568A CN 201710347058 A CN201710347058 A CN 201710347058A CN 108958568 A CN108958568 A CN 108958568A
- Authority
- CN
- China
- Prior art keywords
- plane
- ray
- module
- video camera
- curved surface
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种三维图形引擎中曲面UI的显示、交互方法和装置,该方法应用于电子设备,包括:获取所述电子设备的平面UI,并对所述平面UI进行渲染;将渲染后的所述平面UI输出到预设的纹理中;将所述纹理作为贴图依附于预设的曲面模型上,以形成所述曲面UI并显示。该方法简单、高效地实现了真正的UI曲面化显示,在不增加开发成本的前提下实现了曲面UI效果,且不影响正常的头控交互,改善了用户体验。
Description
技术领域
本发明涉及计算机技术领域,具体涉及虚拟现实领域,尤其涉及一种三维图形引擎中曲面用户界面UI的显示方法,三维图形引擎中曲面UI的显示装置,三维图形引擎中曲面UI的交互方法,以及三维图形引擎中曲面用户界面UI的交互装置。
背景技术
随着社会不断的发展,VR(Virtual Reality)虚拟现实技术在我们的生活中得到了越来越广泛的应用。虚拟现实是指借助计算机系统及传感器技术生成一个三维环境,创造出一种崭新的人机交互状态。在这种交互中,通过调动用户所有的感官(视觉、听觉、触觉、嗅觉等)带来更加真实的、身临其境的体验,通过手势或者动作以及一些外置设备来实现交互、动作追踪。VR技术广泛应用于游戏、新闻媒体、社交、文娱体育、医学等领域。有时候,虚拟现实领域中为了增加真实感,可以将三维空间的界面做成曲面,向用户的方向弯曲,符合人体以眼睛为中心的球形视觉。通常用户界面UI都是以平面的方式开发并展示。例如在三维空间中将平面分成不同的部分,各个部分按一定角度摆放,整体形成近似曲面形状。正前方的UI垂直于视线正常摆放,非中心的UI以竖直方向为轴旋转,越靠近左右边缘的UI旋转角度越大,这是一种近似曲面的方法。美中不足是该方法并未实现真正的曲面UI,由于构成整体UI的若干个局部UI还是平面,因此真实感不强,严重影响到用户体验。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种三维图形引擎中曲面UI的显示、交互方法和装置,该显示方法能够将平面UI直接渲染成真实感强烈的曲面UI,支持用户与该曲面UI的交互,在基本不增加开发成本的前提下实现了提升曲面UI效果。
第一方面,提供了一种三维图形引擎中曲面用户界面UI的显示方法,应用于电子设备,包括:
获取所述电子设备的平面UI,并对所述平面UI进行渲染;
将渲染后的所述平面UI输出到预设的纹理中;
将所述纹理作为贴图依附于预设的曲面模型上,以形成所述曲面UI并显示。
第二方面,提供了一种三维图形引擎中曲面UI的显示装置,应用于电子设备,包括获取模块,渲染模块和处理模块:
所述获取模块用于获取所述电子设备的平面UI,以使所述渲染模块对所述平面UI进行渲染;
所述处理模块用于将渲染后的所述平面UI输出到预设的纹理中,并将所述纹理作为贴图依附于预设的曲面模型上,以形成所述曲面UI并显示。
第三方面,提供了一种电子设备,所述电子设备包括三维图形引擎,一个或多个处理器和存储装置;
所述存储装置用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器在所述三维图形引擎中实现如上述的曲面用户界面UI的显示方法。第四方面,提供了一种三维图形引擎中曲面UI的交互方法,所述曲面UI基于上述的显示方法而显示,所述交互方法包括:
基于用户头部姿态,在所述三维图形引擎中创建第二摄像机并从该第二摄像机发出第一射线;
检测所述第一射线与所述曲面模型的碰撞结果;
当所述第一射线碰撞到所述曲面模型时,从所述曲面模型上的第一碰撞点沿预设方向发射第二射线;
当所述第二射线碰撞到所述平面UI时,产生所述用户与所述平面UI的交互。
第五方面,提供了一种三维图形引擎中曲面用户界面UI的交互装置,应用于电子设备,所述曲面UI通过上述的显示装置而显示,所述交互装置包括创建模块,发射模块,检测模块和交互生成模块:
基于用户头部姿态,所述创建模块配置为在所述三维图形引擎中创建第二摄像机;
发射模块用于驱动所述第二摄像机向所述曲面模型发射第一射线,以使所述检测模块检测所述第一射线与所述曲面模型的碰撞结果;
当所述第一射线碰撞到所述曲面模型时,所述发射模块从所述曲面模型上的第一碰撞点沿预设方向发射第二射线,并当所述第二射线碰撞到所述平面UI时,产生所述用户与所述平面UI的交互。
第六方面,提供了一种电子设备,所述电子设备包括三维图形引擎,用户交互装置,一个或多个处理器和存储装置;
所述用户交互装置用于捕获用户头部姿态;
所述存储装置用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器在所述三维图像引擎中实现如上所述的曲面用户界面UI的交互方法。第七方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的曲面用户界面UI的显示方法。
第八方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的曲面用户界面UI的交互方法。
根据本申请实施例提供的技术方案,通过三维图形引擎中曲面UI的显示方法,将纹理作为曲面模型的贴图依附于预设的曲面模型上,以形成曲面UI并显示,能够解决简单、高效的实现真正的UI曲面化显示的问题。进一步的,根据本申请的某些实施例,通过三维图形引擎中曲面UI的交互方法,还能解决在实现真正的UI曲面化显示的同时做到不影响正常的基于用户头部姿态的头控交互问题,获得改善用户体验的良好效果。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为三维图形引擎中曲面UI的显示方法的实施例流程图;
图2为三维图形引擎中曲面UI的显示装置实施例的结构示意图;
图3为三维图形引擎中曲面UI的交互方法的实施例流程图;
图4为三维图形引擎中曲面UI的交互装置实施例的结构示意图;
图5为三维图形引擎中曲面UI的显示与交互原理结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
请参考图1,提供一种三维图形引擎中曲面UI的显示方法的实施方式,结合图1,本方法应用于电子设备,此过程具体步骤为:
步骤100,获取电子设备的平面UI 4,并对平面UI 4进行渲染;
步骤200,将渲染后的平面UI 4输出到预设的纹理5中;
步骤300,将纹理5作为贴图依附于预设的曲面模型3上,以形成曲面UI并显示。
其中步骤200中包括在三维图形引擎中创建第一摄像机;使用第一摄像机对平面UI 4进行渲染。
其中步骤300中包括当渲染后的平面UI 4输出到预设的纹理5中的工作完毕后,将纹理5作为贴图依附于预设的曲面模型3上,以形成曲面UI并显示。本发明实施例中涉及的纹理5是三维图形引擎渲染的要素之一,通常依附于模型,用来表现模型的皮肤色彩等。依据纹理5获得曲面模型3的贴图并将贴图结合曲面模型3渲染输出,获得曲面的UI显示;上述三维空间中曲面模型3比平面UI 4的位置更加靠近摄像机。实施例中涉及的摄像机并不是具有摄像功能的设备,而是三维图形引擎中一个特殊的物体。在三维图形引擎中,一般会创建一个虚拟的摄像机物体来模仿人眼,该摄像机具有方向和角度,符合透视原理,摄像机所能看到的区域即为程序运行时人眼所能看到的区域。
在一些实施方式中,形成的曲面UI与第一摄像机的距离小于平面UI 4与第一摄像机的距离。
在一些实施方式中,将纹理5作为贴图依附于预设的曲面模型3上后,还要对贴图进行渲染,以形成曲面UI。
本发明提供的多个实施方式中涉及的UI(User Interface)是用户1界面的简称,泛指用户1的操作界面。
进一步参考图2,其示出了根据本申请一个实施例的用于三维图形引擎中曲面UI的显示装置的结构示意图。该显示装置600包括获取模块601,渲染模块603和处理模块604:
获取模块601用于获取电子设备的平面UI 4,以使渲染模块对平面UI 4进行渲染;
处理模块604用于将渲染后的平面UI 4输出到预设的纹理5中,并将纹理5作为贴图依附于预设的曲面模型3上,以形成曲面UI并显示。
在一些实施方式中,上述显示装置600还包括创建模块602,创建模块602用于在三维图形引擎中创建第一摄像机,以使渲染模块使用第一摄像机对平面UI 4进行渲染。
在一些实施方式中,为了三维空间中曲面模型3比平面UI 4的位置更加靠近摄像机,通常设置曲面UI与第一摄像机的距离小于平面UI 4与第一摄像机的距离。进一步地,渲染模块进一步配置将纹理5作为贴图依附于预设的曲面模型3上后,还要对贴图进行渲染,以形成曲面UI。
在一些实施方式中,纹理5的制作包括如下流程:接收3D纹理制作指令,获取页面标签模板,接收用户1输入的内容并将其填充到页面标签模板中,将页面标签模板中填充的用户1输入的内容渲染到2D图形缓冲区,记录并向3D纹理应用装置发送页面标签模板的标识,以使3D纹理应用装置根据页面标签模板的标识获取对应的2D图形缓冲区,并将2D图形缓冲区中的包含用户1输入的内容的2D图形内容映射到3D纹理应用装置中的3D纹理对象上。
在本发明的一个实施例中,提供了一种电子设备,该电子设备能够增加真实感,可以将平面UI 4直接做成曲面UI并提升了曲面UI的效果,显示出更加符合人体以眼镜为中心的球形视觉。显电子设备包括三维图形引擎,一个或多个处理器和存储装置,处理器可以驱动存储装置,并调用和执行存储在该存储装置中的程序,存储装置用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器在所述三维图形引擎中实现如上所述的曲面用户界面UI的显示方法。处理器在执行多个程序时,可以按照预设的步骤先后获同时执行。
请参考图3,提供三维图形引擎中曲面UI的交互方法的实施例流程图,此过程具体步骤为:
步骤210,基于用户1头部姿态,在三维图形引擎中创建第二摄像机并从该第二摄像机发出第一射线;
步骤220,检测第一射线与曲面模型3的碰撞结果;
步骤230,当第一射线碰撞到曲面模型3时,从曲面模型3上的第一碰撞点沿预设方向发射第二射线;
步骤240,当第二射线碰撞到平面UI 4时,产生用户1与平面UI 4的交互。
其中步骤210中,以第二摄像机所在位置为起始点,沿第二摄像机的前方,朝向曲面模型3发出第一射线;通常将曲面模型3设置在第二摄像机的正前方。
其中步骤220中,当第一射线碰撞到曲面模型3时,借助碰撞检测模块检测得到第一碰撞点;以第一碰撞点为起始点,沿预设方向发出第二射线;
其中步骤230和步骤240中,碰撞检测模块将第二射线碰撞平面UI 4的碰撞检测结果输入至处理模块,处理模块根据碰撞检测结果判定是否建立用户1与平面UI 4之间的交互。
在一些实施方式中,交互方法还包括在平面UI 4上设置一个或更多个碰撞体,当第二射线碰撞到碰撞体上时,产生交互信号。
在一些实施方式中,每个碰撞体上预设有一组或更多组第二碰撞点,每组第二碰撞点均对应有相应的交互信号。在三维图形引擎中曲面UI的交互过程中,曲面模型3有存在多种情况,可能是单一的曲面构成的曲面模型3,也可能是多个曲面构成的立体模型,例如球体,柱体等等,当从第一碰撞点为起始点发出第二射线时能够碰撞到碰撞体上,在不同的操作下,或者对于不同的曲面模型3,第二射线碰撞到碰撞体上的第二碰撞点可能不同,在一个实施例中,碰撞体上预设有多组第二碰撞点,每组第二碰撞点均对应有相应的交互信号,其中每组第二碰撞点对应的交互信号可以相同。也就是说,例如,当第二碰撞点处于碰撞体上预设的第一个区域时产生的交互信号可以相同,而当第二碰撞点处于碰撞体上预设的其他的区域时产生的交互信号可以不与在第一个区域产生的交互信号相同,如用户1在虚拟三维立体影像中多次拿起一物体,虽然每次拿的位置不完全一样(即第二碰撞点处于碰撞体上预设的第一个区域,但不是相同的点),但同样能够将该物体拿起来。
在一些实施方式中,预设方向包括三维图形引擎中的三维坐标系的任意一个坐标轴的方向。例如沿第二摄像机空间的正前方,朝向曲面模型3方向发出一条射线作为第一射线,并检测碰撞情况,当碰撞到曲面模型3时,以碰撞点为起始点,优选沿z轴正方向发出一条射线作为第二射线,做二次碰撞检测,如果碰到平面UI 4的碰撞体,则表示碰撞成功,可实现电子设备与平面UI 4之间交互。z轴通常表示一个物体离使用和表现三维图形的显示屏幕的远近,当物体的z轴位置增加时,物体朝远离屏幕的方向运动,当物体的z值减小时,物体朝接近屏幕的方向运动。在另一个实施例中,根据曲面模型的形状,第二摄像机的位置及第一碰撞点的位置,预设方向可以为非z轴正方向的三维坐标系的其他坐标轴的方向,也就是第二射线可以根据实际情况和预先设计的方案朝着三维坐标系中的任意一个坐标轴的方向发射。
碰撞检测方法通常是跟踪虚拟世界里每对物体间的距离,如果一对物体间的距离小于某个阈值,那么认为物体相互碰撞了。碰撞检测到的值传送到用于检测碰撞结果的检测模块,碰撞模块根据该值驱动相应力学模型变化及变形并相应驱动虚拟效果。
碰撞检测在三维图形引擎中曲面UI的交互中至关重要,例如3D游戏中碰撞检测要求人物在场景中可以平滑移动,遇到一定高度内的台阶可以自动上去,而过高的台阶则把人挡住,遇到斜率较小的斜坡可以上去,斜率过大则把人挡住,在各种前进方向被挡住的情况下都要尽可能地让人物沿合理的方向滑动而不是被迫停下。碰撞检测可以选择基于BSP树的碰撞检测算法及包装盒方式。即采用一个描述用的正方体或者球型体包裹住3D物体对象整体(或者是主要部分),之后根据"描述用"包装盒的距离、位置等信息来计算是否发生碰撞。这个算法是针对物体与场景之间的碰撞检测的。它要求场景是以很多的三角形组成的。目前几乎所有的3D程序的场景或者物体都是由许多三角形组成的。另外,需要记录物体在上一帧的位置和当前帧的位置。首先,根据物体的运动规律或用户1的输入计算物体在即将渲染的一帧(当前帧)时的位置(这时还不用考虑碰撞检测的问题)然后,循环遍历场景中每一个三角形。在循环过程中,作如下操作:
找到当前三角形所在的平面,我们暂且称之为平面S。沿平面法线方向对它做一个平移d,表示物体和平面之间所能接近的距离。
判断物体在上一帧和当前帧时的位置与平面S的关系。因为前后两帧物体在平面的异侧,说明物体穿过了平面S。但这时还不能说物体与三角形发生了碰撞,因为平面是无边界的,还需进一步判断物体是否在三角形三条边范围之内穿过平面S。过三角形的三边,做垂直于三角形的平面PS1,PS2,PS3。并且令它们的法线指向三角形的内部,为了体现物体和三角形所能接近的最短距离,这三个平面需要沿着其法线负方向做一个平移L,得到另外三个与PS1,PS2,PS3平行的平面PS4,PS5,PS6。如果三角形有很尖利的锐角,就会使其界定的区域过大,需要PS4,PS5,PS6来削去产生的锐角。
然后判断物体位置是否在这六个平面之内。
当所有的三角形都遍历了一次之后,物体的位置就是经过碰撞检测并修正了之后的。以该位置渲染物体和场景,并在下一帧之前,更新旧的位置为当前帧的位置
在一些实施方式中,若第一射线自发射点到第一碰撞点的距离小于第一阈值,则认为第一射线碰撞到曲面模型3;若第二射线自发射点到平面UI 4的碰撞体的距离小于第二阈值,则表示第二射线碰撞到平面UI 4。
进一步参考图4,其示出了根据本申请三维图形引擎中曲面UI的交互装置的一个实施例的结构示意图。该交互装置800包括发射模块801,创建模块802,检测模块803,交互生成模块804和碰撞模块805:结合图4所示,该装置包括创建模块802,发射模块801和检测模块803:
创建模块802配置为在三维图形引擎中创建第二摄像机,第二摄像机朝向上述任意一个曲面模型3;
发射模块801用于驱动第二摄像机向曲面模型3发射第一射线,以使检测模块检测第一射线与曲面模型3的碰撞结果;
发射模块801进一步用于响应于检测模块803检测到第一射线碰撞到曲面模型3时,发射模块801从曲面模型3上的第一碰撞点沿预设方向发射第二射线。
检测模块803进一步用于检测第二射线与平面UI 4的碰撞结果。
交互生成模块804用于响应于检测模块803检测到第二射线与上述任意一个平面UI 4发生碰撞,产生用户1与平面UI 4的交互,从而模拟出用户1与其看到的曲面UI进行了交互,增加了真实感。
在一些实施方式中,交互装置还包括在平面UI 4上设置的碰撞体,碰撞体用于当第二射线碰撞到碰撞体上时产生交互信号。
进一步地,碰撞体上预设有多组第二碰撞点,每组第二碰撞点均对应有相应的交互信号。在三维图形引擎中曲面UI的交互过程中,曲面模型3有存在多种情况,可能是单一的曲面构成的曲面模型3,也可能是多个曲面构成的立体模型,例如球体,柱体等等,当从第一碰撞点为起始点发出第二射线时能够碰撞到碰撞体上,在不同的操作下,或者对于不同的曲面模型3,第二射线碰撞到碰撞体上的第二碰撞点可能不同,在一个实施例中,碰撞体上预设有多组第二碰撞点,每组第二碰撞点均对应有相应的交互信号,其中每组第二碰撞点对应的交互信号可以相同。也就是说,例如,当第二碰撞点处于碰撞体上预设的第一个区域时产生的交互信号可以相同,而当第二碰撞点处于碰撞体上预设的其他的区域时产生的交互信号可以不与在第一个区域产生的交互信号相同,这样用户1与曲面UI进行交互时,对于不同的操作方式便可以产生不同的交互结果,而对于相似的操作方式可以产生相同的交互结果,如用户1在虚拟三维立体影像中多次拿起一物体,虽然每次拿的位置不完全一样(即第二碰撞点处于碰撞体上预设的第一个区域,但不是相同的点),但同样能够将该物体拿起来。
进一步地,预设方向包括三维图形引擎中的三维坐标系的任意一个坐标轴的方向。例如沿第二摄像机空间的正前方,朝向曲面模型3方向发出一条射线作为第一射线,并检测碰撞情况,当碰撞到曲面模型3时,以碰撞点为起始点,沿z轴正方向发出一条射线作为第二射线,做二次碰撞检测,如果碰到平面UI 4的碰撞体,则表示碰撞成功,可实现电子设备与平面UI 4之间交互。在另一个实施例中,根据曲面模型的形状,第二摄像机的位置及第一碰撞点的位置,预设方向可以为非z轴正方向的三维坐标系的其他坐标轴的方向,也就是第二射线可以根据实际情况和预先设计的方案朝着三维坐标系中的任意一个坐标轴的方向发射。
在一些实施方式中,电子设备包括虚拟现实的头控设备,结合图5,用户1使用头控设备与平面UI 4产生交互,通常为用户1仅通过头的摆动就可以完成,不需要额外的游戏手柄,或者其它输入设备。包括:在三维图形引擎中创建第二摄像机,第二摄像机朝向曲面模型3并向曲面模型3发射第一射线。
图5示出了第一射线发出后与曲面成功碰撞,第一射线碰撞到曲面模型3时,从曲面模型3上的第一碰撞点向平面UI 4方向发射第二射线;当第二射线碰撞到平面UI 4时,头控2与平面UI 4实现交互,这种头控2与平面UI 4之间的交互实际上是一种间接交互。虚拟现实最大的特点是人的视线不再固定在一个方向,而是可以全方位,水平360度,垂直180度的转动,每个角度眼镜所看到的东西是不同的,这样就可以形成沉浸感。所以转动头部是这个领域人机交互的最自然的方式,这一交互方式即头控2。图5中的曲面模型3是由普通的平面UI 4直接3D引擎渲染成曲面,渲染后的平面UI 4输出到预设的纹理中的工作完毕后,将纹理5作为曲面模型3的贴图依附于预设的曲面模型3上得到的,是依据纹理5获得曲面模型3的贴图并将贴图结合曲面模型3渲染输出,获得曲面的UI显示;上述三维空间中曲面模型3比平面UI 4的位置更加靠近摄像机。实施例中涉及的摄像机并不是具有摄像功能的设备,而是三维图形引擎中一个特殊的物体。在三维图形引擎中,一般会创建一个虚拟的摄像机物体来模仿人眼,该摄像机具有方向和角度,符合透视原理,摄像机所能看到的区域即为程序运行时人眼所能看到的区域。
在本发明的一个实施例中,提供了一种电子设备,该电子设备能够在基本不增加开发成本的前提下在上述的曲面UI环境中实现交互,并且整个交互过程简单高效,改善了用户1体验,该电子设备包括三维图形引擎,用户交互装置,一个或多个处理器和存储装置,用户交互装置用于捕获用户头部姿态,例如用户交互装置可以利用转动头部这个自然的方式来捕获用户头部姿态,处理器可以驱动存储装置,并调用和执行存储在该存储装置中的程序,存储装置用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器在所述三维图像引擎中实现如上所述的曲面用户界面UI的交互方法。处理器在执行多个程序时,可以按照预设的步骤先后获同时执行。
本发明实施例还提供了一种计算机可读存储介质,在一个实施例中,该计算机可读存储介质可以为U盘,硬盘或光盘等介质,也可以直接为计算机,服务器等多种智能设备。该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现如上述的曲面用户界面UI的显示方法,从而实现强立体感的曲面UI效果,用户体验效果好。
本发明实施例还提供了一种计算机可读存储介质,在一个实施例中,该计算机可读存储介质可以为U盘,硬盘或光盘等介质,也可以直接为计算机,服务器等多种智能设备。该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现如上述的曲面用户界面UI的交互方法,从而在不增加成本的情况下顺利实现曲面用户界面UI的交互,用户体验效果好。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (20)
1.一种三维图形引擎中曲面用户界面UI的显示方法,应用于电子设备,其特征在于,包括:
获取所述电子设备的平面UI,并对所述平面UI进行渲染;
将渲染后的所述平面UI输出到预设的纹理中;
将所述纹理作为贴图依附于预设的曲面模型上,以形成所述曲面UI并显示。
2.根据权利要求1所述的显示方法,其特征在于,对所述平面UI进行渲染包括:在所述三维图形引擎中创建第一摄像机;使用所述第一摄像机对所述平面UI进行渲染。
3.根据权利要求2所述的显示方法,其特征在于,形成的所述曲面UI与所述第一摄像机的距离小于所述平面UI与所述第一摄像机的距离。
4.根据权利要求1所述的显示方法,其特征在于,将所述纹理作为贴图依附于预设的曲面模型上后,还对所述贴图进行渲染,以形成所述曲面UI。
5.一种三维图形引擎中曲面用户界面UI的显示装置,应用于电子设备,其特征在于,包括获取模块,渲染模块和处理模块:
所述获取模块用于获取所述电子设备的平面UI,以使所述渲染模块对所述平面UI进行渲染;
所述处理模块用于将渲染后的所述平面UI输出到预设的纹理中,并将所述纹理作为贴图依附于预设的曲面模型上,以形成所述曲面UI并显示。
6.根据权利要求5所述的显示装置,其特征在于,所述装置还包括创建模块,所述创建模块用于在所述三维图形引擎中创建第一摄像机,以使所述渲染模块使用所述第一摄像机对所述平面UI进行渲染。
7.根据权利要求6所述的显示装置,其特征在于,所述曲面UI与所述第一摄像机的距离小于所述平面UI与所述第一摄像机的距离。
8.根据权利要求5所述的显示装置,其特征在于,所述渲染模块进一步用于在将所述纹理作为贴图依附于预设的曲面模型上后,还对所述贴图进行渲染,以形成所述曲面UI。
9.一种电子设备,所述电子设备包括三维图形引擎,一个或多个处理器和存储装置;
所述存储装置用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器在所述三维图形引擎中实现如权利要求1-4中任一所述的曲面用户界面UI的显示方法。
10.一种三维图形引擎中曲面用户界面UI的交互方法,其特征在于,所述曲面UI基于权利要求1至4任意一项所述的方法而显示,所述交互方法包括:
基于用户头部姿态,在所述三维图形引擎中创建第二摄像机并从该第二摄像机发出第一射线;
检测所述第一射线与所述曲面模型的碰撞结果;
当所述第一射线碰撞到所述曲面模型时,从所述曲面模型上的第一碰撞点沿预设方向发射第二射线;
当所述第二射线碰撞到所述平面UI时,产生所述用户与所述平面UI的交互。
11.根据权利要求10所述的交互方法,其特征在于,所述交互方法还包括在所述平面UI上设置一个或更多个碰撞体,当所述第二射线碰撞到所述碰撞体上时,产生交互信号。
12.根据权利要求11所述的交互方法,其特征在于,每个所述碰撞体上预设有一组或更多组第二碰撞点,每组所述第二碰撞点均对应有相应的交互信号。
13.根据权利要求10所述的交互方法,其特征在于,所述预设方向包括所述三维图形引擎中的三维坐标系的任意一个坐标轴的方向。
14.一种三维图形引擎中曲面用户界面UI的交互装置,应用于电子设备,其特征在于,所述曲面UI通过权利要求5至8任意一项所述的显示装置而显示,所述交互装置包括创建模块,发射模块,检测模块和交互生成模块:
所述创建模块用于基于用户头部姿态,在所述三维图形引擎中创建第二摄像机;
所述发射模块用于驱动所述第二摄像机发射第一射线;
所述检测模块检测所述第一射线与所述曲面模型的碰撞结果;
所述发射模块进一步用于响应于所述检测模块检测到所述第一射线碰撞到所述曲面模型,从所述曲面模型上的第一碰撞点沿预设方向发射第二射线;
所述检测模块进一步用于检测所述第二射线与所述平面UI的碰撞结果,
所述交互生成模块用于响应于所述检测模块检测到所述第二射线与所述平面UI发生碰撞,产生所述用户与所述平面UI的交互。
15.根据权利要求14所述的交互装置,其特征在于,所述交互装置还包括在所述平面UI上设置的碰撞体,所述碰撞体用于当所述第二射线碰撞到所述碰撞体上时产生交互信号。
16.根据权利要求15所述的交互装置,其特征在于,所述碰撞体上预设有多组第二碰撞点,每组所述第二碰撞点均对应有相应的交互信号。
17.根据权利要求14所述的交互装置,其特征在于,所述预设方向包括所述三维图形引擎中的三维坐标系的任意一个坐标轴的方向。
18.一种电子设备,所述电子设备包括三维图形引擎,用户交互装置,一个或多个处理器和存储装置;
所述用户交互装置用于捕获用户头部姿态;
所述存储装置用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器在所述三维图像引擎中实现如权利要求10-13中任一所述的曲面用户界面UI的交互方法。
19.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的方法。
20.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求10-13中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710347058.7A CN108958568A (zh) | 2017-05-17 | 2017-05-17 | 一种三维图形引擎中曲面ui的显示、交互方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710347058.7A CN108958568A (zh) | 2017-05-17 | 2017-05-17 | 一种三维图形引擎中曲面ui的显示、交互方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108958568A true CN108958568A (zh) | 2018-12-07 |
Family
ID=64462530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710347058.7A Pending CN108958568A (zh) | 2017-05-17 | 2017-05-17 | 一种三维图形引擎中曲面ui的显示、交互方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108958568A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109671147A (zh) * | 2018-12-27 | 2019-04-23 | 网易(杭州)网络有限公司 | 基于三维模型的纹理贴图生成方法及装置 |
CN111476874A (zh) * | 2020-04-21 | 2020-07-31 | 网易(杭州)网络有限公司 | 曲面交互界面生成方法及装置、电子设备、存储介质 |
CN114578972A (zh) * | 2022-05-05 | 2022-06-03 | 江西科骏实业有限公司 | Vr场景中兼容平面与曲面ui事件的触发方法及系统 |
-
2017
- 2017-05-17 CN CN201710347058.7A patent/CN108958568A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109671147A (zh) * | 2018-12-27 | 2019-04-23 | 网易(杭州)网络有限公司 | 基于三维模型的纹理贴图生成方法及装置 |
CN109671147B (zh) * | 2018-12-27 | 2023-09-26 | 网易(杭州)网络有限公司 | 基于三维模型的纹理贴图生成方法及装置 |
CN111476874A (zh) * | 2020-04-21 | 2020-07-31 | 网易(杭州)网络有限公司 | 曲面交互界面生成方法及装置、电子设备、存储介质 |
CN111476874B (zh) * | 2020-04-21 | 2024-03-01 | 网易(杭州)网络有限公司 | 曲面交互界面生成方法及装置、电子设备、存储介质 |
CN114578972A (zh) * | 2022-05-05 | 2022-06-03 | 江西科骏实业有限公司 | Vr场景中兼容平面与曲面ui事件的触发方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8933928B2 (en) | Multiview face content creation | |
US8411092B2 (en) | 2D imposters for simplifying processing of plural animation objects in computer graphics generation | |
CN107315470B (zh) | 图形处理方法、处理器和虚拟现实系统 | |
KR101947650B1 (ko) | 게임 엔진 기반의 머신 러닝 학습이미지 생성 장치 및 방법 | |
WO2020018252A1 (en) | Selectively alerting users of real objects in a virtual environment | |
JP7008733B2 (ja) | 挿入される画像コンテンツについての影生成 | |
KR20210075225A (ko) | 큐보이드 검출을 위한 딥 러닝 시스템 | |
KR20180121494A (ko) | 단안 카메라들을 이용한 실시간 3d 캡처 및 라이브 피드백을 위한 방법 및 시스템 | |
US20130207962A1 (en) | User interactive kiosk with three-dimensional display | |
KR20200102114A (ko) | 학습기반 3d 모델 생성 장치 및 방법 | |
KR20140043945A (ko) | 이미지 기반 멀티 뷰 3d 얼굴 생성 | |
WO2022205762A1 (zh) | 三维人体重建方法、装置、设备及存储介质 | |
US20180089895A1 (en) | Augmented reality creations with interactive behavior and modality assignments | |
CN110956695B (zh) | 信息处理装置、信息处理方法和存储介质 | |
CN106919899A (zh) | 基于智能机器人的模仿人脸表情输出的方法和系统 | |
US11423602B2 (en) | Fast 3D reconstruction with depth information | |
CN109255749A (zh) | 自主和非自主平台中的地图构建优化 | |
US20210304509A1 (en) | Systems and methods for virtual and augmented reality | |
US11335008B2 (en) | Training multi-object tracking models using simulation | |
CN108958568A (zh) | 一种三维图形引擎中曲面ui的显示、交互方法和装置 | |
CN114514493A (zh) | 增强设备 | |
JP2022550644A (ja) | パススルー視覚化 | |
WO2014170757A2 (en) | 3d rendering for training computer vision recognition | |
Reale et al. | Using eye gaze, head pose, and facial expression for personalized non-player character interaction | |
US20140306953A1 (en) | 3D Rendering for Training Computer Vision Recognition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |