CN105046740A - 基于OpenGL ES的3D图形处理方法及装置 - Google Patents
基于OpenGL ES的3D图形处理方法及装置 Download PDFInfo
- Publication number
- CN105046740A CN105046740A CN201510359206.8A CN201510359206A CN105046740A CN 105046740 A CN105046740 A CN 105046740A CN 201510359206 A CN201510359206 A CN 201510359206A CN 105046740 A CN105046740 A CN 105046740A
- Authority
- CN
- China
- Prior art keywords
- view
- opengles
- virtual
- picture
- screen
- 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
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于OpenGL?ES的3D图形处理方法及装置,该基于OpenGL?ES的3D图形处理方法包括:获取三维立体目标模型,使用OpenGL?ES建立所述目标模型的虚拟3D视图;获取触屏信号,得到滑动方向;获取图片,处理并保存所述图片;使用OpenGL?ES选择一幅所述图片渲染到所述虚拟3D视图的第一视图;使用OpenGL?ES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图;将渲染后的所述虚拟3D视图保存为3D视图文件。本发明使得用户可通过触摸旋转以自由地观察视图效果,提高了用户体验,增加了趣味性,有利于提升人的三维空间想象能力。
Description
技术领域
本发明涉及图形处理技术领域,尤其涉及一种基于OpenGLES的3D图形处理方法及装置。
背景技术
随着技术的发展,用户对软件界面等的视觉效果要求越来越高,3D界面已是一种不可逆转的趋势。OpenGLES(OpenGLforEmbeddedSystems)是免授权费的,跨平台的,功能完善的2D和3D图形应用程序接口API,针对手机、PAD和游戏主机等嵌入式设备而设计。我们可以利用这个技术实现对三维图形的渲染,从而绘制出逼真的3D场景。
现在的拼图游戏都是平面的图片进行拼接,平面模式的拼图显得太平淡枯燥,没有立体感。且拼接后再编辑效果不理想,用户体验不是很好。
发明内容
本发明实施例提供一种基于OpenGLES的3D图形处理方法及装置,使用OpenGLES对图片的拼接进行3D渲染,同时,用户可自由旋转,从而构建逼真的3D拼图场景,用户体验好,有利于开发人的空间想象力。
本发明实施例采用以下技术方案:
第一方面,本技术方案提供一种基于OpenGLES的3D图形处理方法,包括:
获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图;
获取触屏信号,得到滑动方向;
获取图片,处理并保存所述图片;
使用OpenGLES选择一幅所述图片渲染到所述虚拟3D视图的第一视图;
使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图;
将渲染后的所述虚拟3D视图保存为3D视图文件。
其进一步技术方案为,所述获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图之前,还包括:
建立三维立体模型库。
其进一步技术方案为,所述使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图之后,还包括:
获取清空屏幕的指令,清空屏幕;
将渲染后的所述虚拟3D视图的第一视图显示到屏幕;
若获取到触屏信号,得到滑动方向,则将渲染后的所述虚拟3D视图的第二视图显示到屏幕。
其进一步技术方案为,所述将渲染后的所述虚拟3D视图保存为3D视图文件之后,还包括:
发送所述3D视图文件至共享服务器共享到网络上。
其进一步技术方案为,所述三维立体目标模型为立方体。
第二方面,本技术方案提供一种基于OpenGLES的3D图形处理装置,包括:
虚拟3D视图建立单元,用于获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图;
滑动方向获得单元,用于获取触屏信号,得到滑动方向;
图片获取单元,用于获取图片,处理并保存所述图片;
第一视图渲染单元,用于使用OpenGLES选择一幅所述图片渲染到所述虚拟3D视图的第一视图;
第二视图渲染单元,用于使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图;
3D视图文件保存单元,用于将渲染后的所述虚拟3D视图保存为3D视图文件。
其进一步技术方案为,还包括:
三维立体模型库建立单元,用于建立三维立体模型库。
其进一步技术方案为,还包括:
清屏指令获取单元,用于获取清空屏幕的指令,清空屏幕;
显示单元,用于将渲染后的所述虚拟3D视图的第一视图显示到屏幕;具体用于若获取到触屏信号,得到滑动方向,则将渲染后的所述虚拟3D视图的第二视图显示到屏幕。
其进一步技术方案为,还包括:
3D视图文件发送单元,用于发送所述3D视图文件至共享服务器共享到网络上。
其进一步技术方案为,所述三维立体目标模型为立方体。
本发明实施例提供的技术方案带来的有益效果:
本技术方案中,使用OpenGLES对三维立体模型使用选定的图片进行3D渲染,同时,用户可自由旋转渲染后的虚拟3D视图,从而构建逼真的3D场景,尤其适用于3D拼图领域,3D场景使得用户可通过触摸旋转以自由地观察拼图效果,提高了用户体验,增加了趣味性,有利于提升人的三维空间想象能力。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。
图1是本发明实施例提供的基于OpenGLES的3D图形处理方法第一个实施例的方法流程图。
图2是本发明实施例提供的基于OpenGLES的3D图形处理方法第二个实施例的方法流程图。
图3是本发明实施例提供的基于OpenGLES的3D图形处理装置第一个实施例的结构方框图。
图4是本发明实施例提供的基于OpenGLES的3D图形处理装置第二个实施例的结构方框图。
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例提供的基于OpenGLES的3D图形处理方法第一个实施例的方法流程图。如图1所示,该基于OpenGLES的3D图形处理方法,包括:
S101、获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图。
具体地,在步骤S101之前,还包括建立三维立体模型库。三维立体模型库包括立方体、长方体、圆柱体、球体及椭球体等常见立体结构模型。这些常用立体结构的模型为常见模型,此处不再详述模型建立过程。
具体地,使用GLSurfaceView创建3D场景,需要实现Renderer(渲染器),它继承于GLSurfaceView.Renderer。
S102、获取触屏信号,得到滑动方向。
具体地,当有触屏事件发生时候,系统会调用publicbooleanonTouchEvent(finalMotionEventevent),将触屏事件类型,位置等信息存储在MotionEvent的对象中。
S103、获取图片,处理并保存所述图片。
该图片为通过照相机拍摄的照片,或者为提前保存的图片。
具体地,对所述图片进行缩放,并进行适当的修饰,使得所述图片显示效果更加绚丽,图片的数量可以是1张,也可以是多张,保存在数组中,传递给OpenGLES。
S104、使用OpenGLES选择一幅所述图片渲染到所述虚拟3D视图的第一视图。
具体地,OpenGLES将接收到的图片保存到数组,同时将图片的顶点和索引分别保存到不同的数组中。使用OpenGLES绘制图形,并用选定的图片产生纹理,将产生的纹理渲染到所述虚拟3D视图的第一视图。
在OpenGLES中,所有的物体,几何元素最终都是以顶点的形式表述的。一般来说,这些顶点将会产生三角形、直线或点。它做的工作就是将顶点提供给顶点处理器进行处理。顶点的数据包括顶点的位置(空间坐标)、大小、颜色、顶点的法向量(用于光照计算)、纹理坐标(可能有多个)等等。
S105、使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图。
具体地,所述三维立体目标模型为立方体,则所述第二视图可能为左视图、右视图、上视图、下视图,其对应的滑动方向分别为向右滑动,向左滑动,向下滑动及向上滑动。
此处仅是以立方体模型为例进行说明,当然也可以为其他立体模型。
S106、将渲染后的所述虚拟3D视图保存为3D视图文件。
渲染后的虚拟3D视图具有良好的立体效果,可以将所有设置保存在一个3D视图文件中,可以供其他人打开使用。
综上,该发明实施例提供的基于OpenGLES的3D图形处理方法使用OpenGLES对三维立体模型使用选定的图片进行3D渲染,同时,用户可自由旋转渲染后的虚拟3D视图,从而构建逼真的3D场景,尤其适用于3D拼图领域,3D场景使得用户可通过触摸旋转以自由地观察拼图效果,提高了用户体验,增加了趣味性,有利于提升人的三维空间想象能力。
图2是本发明实施例提供的基于OpenGLES的3D图形处理方法第二个实施例的方法流程图。
S200、获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图。
S201、获取触屏信号,得到滑动方向。
S202、获取图片,处理并保存所述图片。
S203、使用OpenGLES选择一幅所述图片渲染到所述虚拟3D视图的第一视图。
S204、使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图。
S205、获取清空屏幕的指令,清空屏幕。
具体地,调用glClear()来清空屏幕。
S206、将渲染后的所述虚拟3D视图的第一视图显示到屏幕。
S207、若获取到触屏信号,得到滑动方向,则将渲染后的所述虚拟3D视图的第二视图显示到屏幕。
S208、将渲染后的所述虚拟3D视图保存为3D视图文件。
S209、发送所述3D视图文件至共享服务器共享到网络上。
3D视图文件分享到社交网站可以供其他用户下载使用,当然也可以设置一定的下载权限,比如需要支付一定的积分才可以下载。
步骤200、步骤201、步骤202、步骤203、步骤204及S208的详细内容请参见图1所示方法相应内容,此处不再赘述。
综上,该发明实施例提供的基于OpenGLES的3D图形处理方法使用OpenGLES对三维立体模型使用选定的图片进行3D渲染,同时,用户可自由旋转渲染后的虚拟3D视图,从而构建逼真的3D场景,尤其适用于3D拼图领域,3D场景使得用户可通过触摸旋转以自由地观察拼图效果,提高了用户体验,增加了趣味性,有利于提升人的三维空间想象能力,而且可以将虚拟3D视图文件共享出去供其他人欣赏使用。
图3是本发明实施例提供的基于OpenGLES的3D图形处理装置第一个实施例的结构方框图。如图3所示,该基于OpenGLES的3D图形处理装置,包括:
虚拟3D视图建立单元10,用于获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图。
滑动方向获得单元11,用于获取触屏信号,得到滑动方向。
图片获取单元12,用于获取图片,处理并保存所述图片。
第一视图渲染单元13,用于使用OpenGLES选择一幅所述图片渲染到所述虚拟3D视图的第一视图。
第二视图渲染单元14,用于使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图。
3D视图文件保存单元15,用于将渲染后的所述虚拟3D视图保存为3D视图文件。
装置的详细内容请参见图1所示的方法,此处不再赘述。
综上,本发明实施例提供的基于OpenGLES的3D图形处理装置使用OpenGLES对三维立体模型使用选定的图片进行3D渲染,同时,用户可自由旋转渲染后的虚拟3D视图,从而构建逼真的3D场景,尤其适用于3D拼图领域,3D场景使得用户可通过触摸旋转以自由地观察拼图效果,提高了用户体验,增加了趣味性,有利于提升人的三维空间想象能力。
图4是本发明实施例提供的基于OpenGLES的3D图形处理装置第二个实施例的结构方框图。如图4所示,该基于OpenGLES的3D图形处理装置与图3所示装置的不同之处在于,还包括:
三维立体模型库建立单元16,用于建立三维立体模型库。
清屏指令获取单元17,用于获取清空屏幕的指令,清空屏幕。
显示单元18,用于将渲染后的所述虚拟3D视图的第一视图显示到屏幕。具体用于若获取到触屏信号,得到滑动方向,则将渲染后的所述虚拟3D视图的第二视图显示到屏幕。
3D视图文件发送单元19,用于发送所述3D视图文件至共享服务器共享到网络上。
具体地,所述三维立体目标模型为立方体。
综上,本发明实施例提供的基于OpenGLES的3D图形处理装置使用OpenGLES对三维立体模型使用选定的图片进行3D渲染,同时,用户可自由旋转渲染后的虚拟3D视图,从而构建逼真的3D场景,尤其适用于3D拼图领域,3D场景使得用户可通过触摸旋转以自由地观察拼图效果,提高了用户体验,增加了趣味性,有利于提升人的三维空间想象能力,而且可以将虚拟3D视图文件共享出去供其他人欣赏使用。
以上内容仅为本发明的较佳实施例,对于本领域的普通技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于OpenGLES的3D图形处理方法,其特征在于,包括:
获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图;
获取触屏信号,得到滑动方向;
获取图片,处理并保存所述图片;
使用OpenGLES选择一幅所述图片渲染到所述虚拟3D视图的第一视图;
使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图;
将渲染后的所述虚拟3D视图保存为3D视图文件。
2.根据权利要求1所述的方法,其特征在于,所述获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图之前,还包括:
建立三维立体模型库。
3.根据权利要求1所述的方法,其特征在于,所述使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图之后,还包括:
获取清空屏幕的指令,清空屏幕;
将渲染后的所述虚拟3D视图的第一视图显示到屏幕;
若获取到触屏信号,得到滑动方向,则将渲染后的所述虚拟3D视图的第二视图显示到屏幕。
4.根据权利要求1所述的方法,其特征在于,所述将渲染后的所述虚拟3D视图保存为3D视图文件之后,还包括:
发送所述3D视图文件至共享服务器共享到网络上。
5.根据权利要求1所述的方法,其特征在于,所述三维立体目标模型为立方体。
6.一种基于OpenGLES的3D图形处理装置,其特征在于,包括:
虚拟3D视图建立单元,用于获取三维立体目标模型,使用OpenGLES建立所述目标模型的虚拟3D视图;
滑动方向获得单元,用于获取触屏信号,得到滑动方向;
图片获取单元,用于获取图片,处理并保存所述图片;
第一视图渲染单元,用于使用OpenGLES选择一幅所述图片渲染到所述虚拟3D视图的第一视图;
第二视图渲染单元,用于使用OpenGLES选择另一幅所述图片渲染到所述虚拟3D视图的第二视图,所述第二视图为按照所述滑动方向旋转后得到的视图;
3D视图文件保存单元,用于将渲染后的所述虚拟3D视图保存为3D视图文件。
7.根据权利要求6所述的基于OpenGLES的3D图形处理装置,其特征在于,还包括:
三维立体模型库建立单元,用于建立三维立体模型库。
8.根据权利要求6所述的基于OpenGLES的3D图形处理装置,其特征在于,还包括:
清屏指令获取单元,用于获取清空屏幕的指令,清空屏幕;
显示单元,用于将渲染后的所述虚拟3D视图的第一视图显示到屏幕;具体用于若获取到触屏信号,得到滑动方向,则将渲染后的所述虚拟3D视图的第二视图显示到屏幕。
9.根据权利要求6所述的基于OpenGLES的3D图形处理装置,其特征在于,还包括:
3D视图文件发送单元,用于发送所述3D视图文件至共享服务器共享到网络上。
10.根据权利要求6所述的基于OpenGLES的3D图形处理装置,其特征在于,所述三维立体目标模型为立方体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510359206.8A CN105046740A (zh) | 2015-06-25 | 2015-06-25 | 基于OpenGL ES的3D图形处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510359206.8A CN105046740A (zh) | 2015-06-25 | 2015-06-25 | 基于OpenGL ES的3D图形处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105046740A true CN105046740A (zh) | 2015-11-11 |
Family
ID=54453256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510359206.8A Pending CN105046740A (zh) | 2015-06-25 | 2015-06-25 | 基于OpenGL ES的3D图形处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105046740A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105635805A (zh) * | 2015-12-18 | 2016-06-01 | 歌尔声学股份有限公司 | 一种虚拟现实场景中优化运动图像的方法和装置 |
CN106502667A (zh) * | 2016-10-18 | 2017-03-15 | 广州视睿电子科技有限公司 | 一种渲染方法及装置 |
CN106710003A (zh) * | 2017-01-09 | 2017-05-24 | 成都品果科技有限公司 | 一种基于OpenGL ES的三维拍照方法和系统 |
CN110049226A (zh) * | 2018-01-16 | 2019-07-23 | 飞狐信息技术(天津)有限公司 | 一种全景图片素材的拍摄方法及系统 |
-
2015
- 2015-06-25 CN CN201510359206.8A patent/CN105046740A/zh active Pending
Non-Patent Citations (2)
Title |
---|
陈茂 等: "动态立方体纹理生成算法", 《计算技术与自动化》 * |
顾大权 等: "基于纹理技术生成立方体表面全景图的算法", 《系统仿真学报》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105635805A (zh) * | 2015-12-18 | 2016-06-01 | 歌尔声学股份有限公司 | 一种虚拟现实场景中优化运动图像的方法和装置 |
CN105635805B (zh) * | 2015-12-18 | 2018-12-21 | 潍坊歌尔电子有限公司 | 一种虚拟现实场景中优化运动图像的方法和装置 |
CN106502667A (zh) * | 2016-10-18 | 2017-03-15 | 广州视睿电子科技有限公司 | 一种渲染方法及装置 |
CN106502667B (zh) * | 2016-10-18 | 2019-09-03 | 广州视睿电子科技有限公司 | 一种渲染方法及装置 |
CN110427236A (zh) * | 2016-10-18 | 2019-11-08 | 广州视睿电子科技有限公司 | 一种渲染方法及装置 |
CN110427236B (zh) * | 2016-10-18 | 2023-06-09 | 广州视睿电子科技有限公司 | 一种渲染方法及装置 |
CN106710003A (zh) * | 2017-01-09 | 2017-05-24 | 成都品果科技有限公司 | 一种基于OpenGL ES的三维拍照方法和系统 |
CN106710003B (zh) * | 2017-01-09 | 2020-07-10 | 成都品果科技有限公司 | 一种基于OpenGL ES的三维拍照方法和系统 |
CN110049226A (zh) * | 2018-01-16 | 2019-07-23 | 飞狐信息技术(天津)有限公司 | 一种全景图片素材的拍摄方法及系统 |
CN110049226B (zh) * | 2018-01-16 | 2021-01-29 | 飞狐信息技术(天津)有限公司 | 一种全景图片素材的拍摄方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107852573B (zh) | 混合现实社交交互 | |
WO2017092303A1 (zh) | 虚拟现实场景模型建立方法及装置 | |
US10127722B2 (en) | Mobile capture visualization incorporating three-dimensional and two-dimensional imagery | |
US10567449B2 (en) | Apparatuses, methods and systems for sharing virtual elements | |
CN111028336B (zh) | 场景切换方法及装置、存储介质 | |
US20170154468A1 (en) | Method and electronic apparatus for constructing virtual reality scene model | |
CN110533780B (zh) | 一种图像处理方法及其装置、设备和存储介质 | |
WO2018077071A1 (zh) | 一种全景图像的生成方法及装置 | |
CN110728755B (zh) | 场景间漫游、模型拓扑创建、场景切换方法及系统 | |
WO2018188479A1 (zh) | 基于增强现实的导航方法及装置 | |
CN109725956B (zh) | 一种场景渲染的方法以及相关装置 | |
CN112933599A (zh) | 三维模型渲染方法、装置、设备及存储介质 | |
CN105046740A (zh) | 基于OpenGL ES的3D图形处理方法及装置 | |
CN103959340A (zh) | 用于自动立体三维显示器的图形呈现技术 | |
US20190206109A1 (en) | Method, apparatus and device for generating live wallpaper and medium | |
WO2012097556A1 (zh) | 3d图标的处理方法、装置及移动终端 | |
CN113318428B (zh) | 游戏的显示控制方法、非易失性存储介质及电子装置 | |
WO2024103849A1 (zh) | 游戏角色的三维模型的展示方法、装置和电子装置 | |
CN106780759A (zh) | 基于图片构建场景立体全景图的方法、装置及vr系统 | |
CN116057577A (zh) | 用于增强现实的地图 | |
WO2019076084A1 (zh) | 一种以3d视差效果显示的方法及装置 | |
CN110889384A (zh) | 场景切换方法及装置、电子设备和存储介质 | |
US11288774B2 (en) | Image processing method and apparatus, storage medium, and electronic apparatus | |
WO2019042028A1 (zh) | 全视向的球体光场渲染方法 | |
CN116468839A (zh) | 模型渲染方法、装置、存储介质及电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151111 |
|
RJ01 | Rejection of invention patent application after publication |