CN102253831A - 嵌入式终端中浏览器中嵌入OpenGL ES的方法 - Google Patents

嵌入式终端中浏览器中嵌入OpenGL ES的方法 Download PDF

Info

Publication number
CN102253831A
CN102253831A CN2011101631587A CN201110163158A CN102253831A CN 102253831 A CN102253831 A CN 102253831A CN 2011101631587 A CN2011101631587 A CN 2011101631587A CN 201110163158 A CN201110163158 A CN 201110163158A CN 102253831 A CN102253831 A CN 102253831A
Authority
CN
China
Prior art keywords
container
browser
opengl
effect
presents
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
CN2011101631587A
Other languages
English (en)
Other versions
CN102253831B (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.)
Shanghai Acoustics Laboratory Chinese Academy Of Sciences
Original Assignee
Shanghai Acoustics Laboratory Chinese Academy Of Sciences
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 Shanghai Acoustics Laboratory Chinese Academy Of Sciences filed Critical Shanghai Acoustics Laboratory Chinese Academy Of Sciences
Priority to CN201110163158.7A priority Critical patent/CN102253831B/zh
Publication of CN102253831A publication Critical patent/CN102253831A/zh
Application granted granted Critical
Publication of CN102253831B publication Critical patent/CN102253831B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及一种嵌入式终端中浏览器中嵌入OpenGL ES的方法,包括以下步骤:响应用户访问网站的指令,启动浏览器容器;当页面呈现不涉及三维效果时,仅运行所述浏览器容器;当页面呈现涉及三维效果时,启动OpenGL ES容器且同时运行所述浏览器容器和所述OpenGL ES容器,所述浏览器容器通过调用所述OpenGL ES容器来实现三维效果的页面呈现。

Description

嵌入式终端中浏览器中嵌入OpenGL ES的方法
技术领域
本发明涉及嵌入式终端开发中的3D技术开发,尤其是涉及嵌入式终端中浏览器中嵌入OpenGL ES的方法。
背景技术
OpenGL(Open Graphics Library,开放图形库)是一套免授权费的、跨编程语言、跨硬件平台、与操作系统无关的二维/三维图形编程接口规范。OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。OpenGL是行业领域中最为广泛接纳的2D/3D图形API,其自诞生至今已催生了各种计算机平台及设备上的数千优秀应用程序。OpenGL独立于操作系统,亦是网络透明的。在包含CAD、内容创作、能源、娱乐、游戏开发、制造业、制药业及虚拟现实等行业领域中,OpenGL帮助开发人员实现在PC、工作站、超级计算机等硬件设备上的高性能、极具冲击力的高视觉表现力图形处理软件的开发。OpenGL ES由OpenGL裁剪而来,是OpenGL三维图形API的子集,针对手机、机顶盒和智能网管等嵌入式设备而设计。同样,OpenGL ES是免授权费的、跨编程语言、跨硬件平台、与操作系统无关的、针对嵌入式系统量身定制的二维/三维图形编程接口规范。它定义了软件与图形加速间灵活强大的底层交互接口。OpenGL ES包含浮点运算和定点运算系统描述以及针对便携设备的本地视窗系统规范。
由于其开放性、稳定性、可扩展性等原因,浏览器是当前包括嵌入式开发在内的增值服务开发的主应用平台。浏览器以解析HTML和CSS、JavaScript等扩展性语言为主,辅以Java、Flash、3D等第三方插件,实现增值服务开发和应用。
近年来,3D游戏、3D界面具有更强的视觉冲击力和更强的可操控性,是未来嵌入式系统,包括数字电视的发展方向,能够为用户带来更加多样、炫丽的娱乐和操作体验。在现有嵌入式系统中,OpenGL ES由于其结构清晰、功能强大、内核简单的原因被普遍选为3D的显示方法。但OpenGL ES独立于浏览器,无法作为浏览器的组件被调用。因而一般来说,嵌入式系统中,浏览器中嵌入3D的方法只有般有以下几种:
Web3D:Web3D现在更多以基于PC的系统为主,目的在于在网络特别是在互联网上建立三维的虚拟世界。Web3D采用VRML(Virtual Reality ModelingLanguage,虚拟现实建模语言)在内的各种技术,在电子商务、远程教育、工程技术、计算机辅助设计等领域已经获得了广泛的应用。虚拟现实(Virtual Reality)技术是一种逼真地模拟人在自然环境中视觉、听觉、运动等行为的人机界面技术。它的技术特点是沉浸性(Immersionality)和交互性(Interactivity)。VR系统需要采用大量专用的硬件设备和复杂的软件支撑环境是其大规模普及的最大障碍。
Java3D:Java3D是Java语言在三维图形领域的扩展,是一组应用编程接口。利用Java3D提供的API,可以编写出基于网页的三维动画、各种计算机辅助教学软件和三维游戏等。利用Java3D编写的程序,只需要编程人员调用这些API进行编程,而客户端只需要使用标准的Java虚拟机就可以浏览,因此具有不需要安装插件的优点。但Java3D的体积较大,系统占用资源较多,对于系统硬件资源要求较高。
3DML:3DML(3D Modeling Language)是由Flatlang Online创建的标记语言,它允许使用标记创建3D虚拟场景。Flatlang Online提供了一个名为Rover的3DML浏览器,可以实现在3DML场景中漫游。3DML采用了类似XML的编码规范,但3DML实际上并不是一个XML的应用。3DML与一个实际的XML词表非常接近,但是3DML违反了大量的XML规则,如3DML文件中采用了大量的″&″符号;同时3DML不支持实体和默认属性值。3DML的性能是以削减了图形的复杂性为前提的,因而复杂的场景对于3DML是难于实现的。3DML从技术上讲虽然不是XML应用,但是它显示了XML在虚拟三维场景描述方面的可行性。
发明内容
本发明所要解决的技术问题是提供一种在嵌入式终端中浏览器中嵌入OpenGL ES的方法。
本发明为解决上述技术问题而采用的技术方案是提出一种嵌入式终端中浏览器中嵌入OpenGL ES的方法,包括以下步骤:响应用户访问网站的指令,启动浏览器容器;当页面呈现不涉及三维效果时,仅运行所述浏览器容器;当页面呈现涉及三维效果时,启动OpenGL ES容器且同时运行所述浏览器容器和所述OpenGL ES容器,所述浏览器容器通过调用所述OpenGL ES容器来实现三维效果的页面呈现。
在本发明的一实施例中,所述浏览器容器和所述OpenGL ES容器系统通讯的方式维持双方的互联互通和业务的时序性。
在本发明的一实施例中,向浏览器的上层应用程序提供启动OpenGL ES容器直接调用硬件调用指令来呈现三维效果和/或使用浏览器的软件图形接口调用硬件调用指令来呈现三维效果的选择。
在本发明的一实施例中,上述方法还包括:当页面呈现由涉及三维效果转换为不涉及三维效果时,所述浏览器容器释放所述OpenGL ES容器。
在本发明的一实施例中,上述方法还包括:当退出浏览器时,所述浏览器容器释放所述OpenGL ES容器。
在本发明的一实施例中,所述OpenGL ES容器的释放先于所述浏览器容器的释放。
本发明由于采用以上技术方案,使之与现有技术相比,实现了浏览器中嵌入和调用OpenGL ES。这一设计将对浏览器和OpenGL ES的运行时容器的改动降低到最低要求,甚至对OpenGL ES容器无需修改。
附图说明
为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式作详细说明,其中:
图1示出一种典型的包含浏览器的传统系统架构。
图2示出根据本发明一实施例的包含浏览器的系统架构。
图3示出根据本发明一实施例的容器启动时序。
图4示出根据本发明一实施例的进行页面跳转时的容器退出时序。
图5示出根据本发明一实施例的退出浏览器时的容器退出时序。
具体实施方式
本发明的下述实施例提出一种嵌入式系统中浏览器嵌入OpenGL ES的方法,是在嵌入式平台上的应用运行环境开发,主要是嵌入式终端开发,也包括必要的头端应用制作规范扩展。这些实施例的一个方面旨在解决在中低档硬件配置的嵌入式终端上,通过浏览器嵌入标准的OpenGL ES方法,提高系统界面的多样性和应用的多变性,去除了开发人员重复3D开发的弊端,提高开发效率和一致性。
考虑到嵌入式系统中,OpenGL ES作为标准的开放图形库,在非浏览器开发中已经成为主流的3D标准。但在浏览器集成OpenGL ES领域,业界涉及甚少,或无较好的解决方法。本发明的实施例利用浏览器的开放性,独创的采用将浏览器和OpenGL ES在两个不同的容器共存的方式,解决两者间的调用问题。
图2示出根据本发明一实施例的包含浏览器的系统架构。在图2所示实施例中,浏览器运行于嵌入式终端的核心中,硬件层之上。浏览器的上层为Web应用。
作为对照,同时提供了图1所示的一种典型的包含浏览器的传统系统架构。比较图1、图2所示系统架构可知,本实施例维持原有系统架构不变,即浏览器通过调用软件图形接口来访问硬件调用指令,实现图形的绘制。对于需要OpenGL ES的网页,浏览器调用OpenGL ES容器,由OpenGL ES容器直接调用硬件调用指令,实现图形的绘制。在本实施例架构下,传统的浏览器通过软件图形接口调用硬件调用指令绘图和浏览器通过OpenGL ES调用硬件调用指令绘图两种方式可以并存,而允许头端开发人员根据图形绘制压力自由选择其中一种或两种图形绘制方式,在兼顾系统性能的同时实现并提高浏览器内嵌3D图形绘制能力。
图3示出根据本发明一实施例的容器启动时序。参照图3所示,两个容器的启动步骤及相应的容器状态为:
首先是用户只使用浏览器浏览。例如,用户要使用浏览器登陆Web网站,响应于用户的指令,启动浏览器容器,进行标准(不涉及三维效果)的页面浏览和访问。在此期间,只有浏览器容器存在并运行。
其次是浏览器和OpenGL ES并存。例如,在用户浏览Web网站时,若发现扩展的JavaScript代码,需要呈现三维效果而要求OpenGL ES绑定。此时,浏览器在保持自身容器运行的前提下,启动OpenGL ES容器,在OpenGL ES容器中运行标准的OpenGL ES组件。同时,两个容器可以通过例如系统通讯的方式维持双方的互联互通和业务的时序性。如此,基于嵌入式终端上的浏览器,实现OpenGL ES的解析和运行,使浏览器可以借助硬件加速功能,在Web页面中更加流畅地展示3D场景和模型,创建复杂的导航和数据视觉化。
在浏览器容器和OpenGL ES容器这两个容器均启动后,用户浏览带3D效果的网站。
当用户浏览网站过程中,进行页面跳转或退出浏览器时,两个容器的释放时序图如图4所示。
首先是OpenGL ES容器的释放。当用户从带3D效果的网页跳转到不带3D效果的网页时,OpenGL ES组件运行完成,不需维持,此时浏览器容器通知释放OpenGL ES容器。
其次是浏览器容器的释放。当用户在浏览不带3D效果的网页期间退出浏览器时,释放浏览器容器。
当用户在浏览带3D效果的网站时,若直接选择退出浏览器时的容器释放时序图如图5所示,此时,OpenGL ES容器和浏览器容器依次释放。
综上所述,本发明的实施例所提出的方法,实现了浏览器中嵌入和调用OpenGL ES。浏览器和OpenGL ES同时运行,且两个容器可互相通讯,做到系统运行时一致性。这一设计将对浏览器和OpenGL ES的运行时容器的改动降低到最低要求,甚至对OpenGL ES容器无需修改。另外,本发明的实施例允许头端开发人员自由选择图形绘制方式,在保证系统性能的同时实现并提高浏览器内嵌3D图形的能力。由于OpenGL ES是事实上的嵌入式系统3D标准,本方面降低了3D开发人员的要求,开发人员只需熟悉OpenGL ES即可,无法熟悉第二套开发语言和工具。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。

Claims (6)

1.一种嵌入式终端中浏览器中嵌入OpenGL ES的方法,包括以下步骤:
响应用户访问网站的指令,启动浏览器容器;
当页面呈现不涉及三维效果时,仅运行所述浏览器容器;
当页面呈现涉及三维效果时,启动OpenGL ES容器且同时运行所述浏览器容器和所述OpenGL ES容器,所述浏览器容器通过调用所述OpenGL ES容器来实现三维效果的页面呈现。
2.如权利要求1所述的方法,其特征在于,所述浏览器容器和所述OpenGLES容器系统通讯的方式维持双方的互联互通和业务的时序性。
3.如权利要求1所述的方法,其特征在于,向浏览器的上层应用程序提供启动OpenGL ES容器直接调用硬件调用指令来呈现三维效果和/或使用浏览器的软件图形接口调用硬件调用指令来呈现三维效果的选择。
4.如权利要求1所述的方法,其特征在于,还包括:当页面呈现由涉及三维效果转换为不涉及三维效果时,所述浏览器容器释放所述OpenGL ES容器。
5.如权利要求1所述的方法,其特征在于,还包括:当退出浏览器时,所述浏览器容器释放所述OpenGL ES容器。
6.如权利要求5所述的方法,其特征在于,所述OpenGL ES容器的释放先于所述浏览器容器的释放。
CN201110163158.7A 2011-06-16 2011-06-16 嵌入式终端中浏览器中嵌入OpenGL ES的方法 Expired - Fee Related CN102253831B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110163158.7A CN102253831B (zh) 2011-06-16 2011-06-16 嵌入式终端中浏览器中嵌入OpenGL ES的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110163158.7A CN102253831B (zh) 2011-06-16 2011-06-16 嵌入式终端中浏览器中嵌入OpenGL ES的方法

Publications (2)

Publication Number Publication Date
CN102253831A true CN102253831A (zh) 2011-11-23
CN102253831B CN102253831B (zh) 2017-05-31

Family

ID=44981111

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110163158.7A Expired - Fee Related CN102253831B (zh) 2011-06-16 2011-06-16 嵌入式终端中浏览器中嵌入OpenGL ES的方法

Country Status (1)

Country Link
CN (1) CN102253831B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104038807A (zh) * 2014-06-13 2014-09-10 Tcl集团股份有限公司 一种基于OpenGL的图层混合方法及装置
CN104424288A (zh) * 2013-08-30 2015-03-18 腾讯科技(深圳)有限公司 一种网页的3d显示方法及装置
CN106249858A (zh) * 2015-12-31 2016-12-21 深圳超多维光电子有限公司 一种显示转换方法、装置及终端设备
WO2019075702A1 (en) * 2017-10-19 2019-04-25 Tencent Technology (Shenzhen) Company Limited METHODS AND SYSTEMS FOR PROCESSING GRAPHICS
CN113268757A (zh) * 2021-06-03 2021-08-17 西京学院 一种基于虚拟现实的工业设计模型展示方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102054289A (zh) * 2009-11-04 2011-05-11 沈阳隆惠科技有限公司 一种基于全景实景和地理信息的3d虚拟社区构建方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102054289A (zh) * 2009-11-04 2011-05-11 沈阳隆惠科技有限公司 一种基于全景实景和地理信息的3d虚拟社区构建方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
车洪: "高清机顶盒3D图形研究", 《仪器仪表学报》, vol. 31, no. 4, 30 April 2010 (2010-04-30), pages 280 - 283 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104424288A (zh) * 2013-08-30 2015-03-18 腾讯科技(深圳)有限公司 一种网页的3d显示方法及装置
CN104424288B (zh) * 2013-08-30 2018-04-27 腾讯科技(深圳)有限公司 一种网页的3d显示方法及装置
CN104038807A (zh) * 2014-06-13 2014-09-10 Tcl集团股份有限公司 一种基于OpenGL的图层混合方法及装置
CN106249858A (zh) * 2015-12-31 2016-12-21 深圳超多维光电子有限公司 一种显示转换方法、装置及终端设备
CN106249858B (zh) * 2015-12-31 2019-09-10 深圳超多维科技有限公司 一种显示转换方法、装置及终端设备
WO2019075702A1 (en) * 2017-10-19 2019-04-25 Tencent Technology (Shenzhen) Company Limited METHODS AND SYSTEMS FOR PROCESSING GRAPHICS
US10991065B2 (en) 2017-10-19 2021-04-27 Tencent Technology (Shenzhen) Company Limited Methods and systems for processing graphics
CN113268757A (zh) * 2021-06-03 2021-08-17 西京学院 一种基于虚拟现实的工业设计模型展示方法及系统
CN113268757B (zh) * 2021-06-03 2024-01-02 西京学院 一种基于虚拟现实的工业设计模型展示方法及系统

Also Published As

Publication number Publication date
CN102253831B (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN103713891B (zh) 一种在移动设备上进行图形渲染的方法和装置
CN102955854B (zh) 一种基于html5协议的网页展现方法及装置
CN107506517B (zh) 建筑模型显示、数据处理方法、装置、介质、设备和系统
CN102323882B (zh) 一种应用于Web3D的数据处理装置和方法
CN113282360A (zh) 2D canvas网页元素的渲染方法、装置及电子设备
JP2018514885A (ja) 3次元ボクセル・ベース・モデリングのためのシステム、方法、およびデバイス
CN107992301A (zh) 用户界面实现方法、客户端及存储介质
CN111966354A (zh) 一种页面显示方法、装置及计算机可读存储介质
CN107016170A (zh) 一种基于WebGL的LED灯具三维定制仿真方法
CN110309451A (zh) 一种web预加载页面的生成方法及装置
CN102253831A (zh) 嵌入式终端中浏览器中嵌入OpenGL ES的方法
CN102306174A (zh) 一种基于网页元素与用户进行互动的方法与设备
CN105930467A (zh) 一种信息处理方法及电子设备
US11900088B2 (en) Method for generating a binding between a C/C++ library and an interpreted language, and carrying out the method to transform a three- dimensional (3D) model
CN102880465A (zh) 一种基于OpenGL ES的嵌入式图像方法
CN104995622A (zh) 用于图形函数的合成器支持
Flotyński et al. Building multi-platform 3D virtual museum exhibitions with Flex-VR
CN109325157A (zh) 基于浏览器的地理空间信息承载方法
CN112711729A (zh) 基于页面动画的渲染方法、装置、电子设备及存储介质
KR102292789B1 (ko) 디스플레이장치 및 그 제어방법
CN102799425A (zh) 一种网页图形动画实现方法及装置
CN110069725A (zh) 可视化内嵌浏览器方法和装置
CN116503529A (zh) 渲染、3d画面控制方法、电子设备和计算机可读存储介质
CN115391692A (zh) 视频处理方法和装置
CN115131470A (zh) 一种图文素材合成方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170531

Termination date: 20190616

CF01 Termination of patent right due to non-payment of annual fee