PXF0042-图形产品

Shanghai Passiontech Tech, 021-51870017, sales@51Lm.cn

     
     
     

图形产品


型号: PXF0042


简介:高级图形框架QNX 高级图形技术开发工具包 (TDK) 是一套专门用于制作逼真显示效果(具有加速 2D 和 3D 图形渲染功能且占用极少 CPU)的工具组合及运行组件。这套工具包由QNX自主开发,完全基于业内标准 OpenGL ES 应用程序接口 (API),因此能确保开发人员充分利用现有的 OpenGL 代码和业内先进的编程技术。开...
品牌 qnx qnx
产地加拿大
型号PXF0042
折扣其他电询
高级图形框架

   QNX 高级图形技术开发工具包 (TDK) 是一套专门用于制作逼真显示效果(具有加速 2D 和 3D 图形渲染功能且占用极少 CPU)的工具组合及运行组件。这套工具包由QNX自主开发,完全基于业内标准 OpenGL ES 应用程序接口 (API),因此能确保开发人员充分利用现有的 OpenGL 代码和业内先进的编程技术。
开发工具
·  可开发 2D 与 3D 应用程序的编程环境(头文件与库文件)
·  2D、3D、视频采集、图像处理、光标控制和字体使用的示例代码
运行时组件
·   图形控制器驱动程序
·   2D 绘图、图层控制和视频采集用动态连接库
·   3D(OpenGL® ES 应用程序接口认证)
动态连接库
·   字体与图像绘制动态连接库
·   图形显示管理器 (io-display)



技术概览
QNX 高级图形技术开发工具包 (TDK) 的核心技术是图形框架 (GF)。图形程序员可利用 GF 的诸多优势制作各种界面,从最简单的 2D 环境到功能丰富的 2D 和 3D 环境,包括网络浏览器和电子邮件程序。
GF 架构允许程序直接访问硬件,使其在资源有限的嵌入式环境下更快更灵敏地运行。GF 通过允许直接访问图形驱动程序(显示过程中不会出现信息传递和上下文切换)并尽可能利用硬件加速来实现这一功能。这正是嵌入式环境所需要的,在那里它可用作基本图层以制作各种界面系统,从最简单的全屏用户界面到面向多应用程序的高级视窗系统。它还可用作现有用户界面的移植层。
为满足嵌入式 3D 的要求,QNX 高级图形技术开发工具包 (TDK) 可支持 OpenGL® ES 1.0 应用程序接口规范,即专门用于嵌入式应用程序的定义明确的 OpenGL®子集。QNX 实现可支持通用配置文件和 EGL 平台界面。
图形框架在支持全屏应用程序用户界面的同时,还能同时处理多线程和多个应用程序;用户需要时,
 

可同时运行 2D 和 OpenGL® ES 应用程序以及 Photon 应用程序。

用户利用高级图形技术开发工具包 (TDK) 能做什么?

 
·   采用透明混合处理技术显示菜单和紧急提示的 2D 导航系统
·   使用多个图层
   
  采用 OpenGL® ES 应用程序接口的 3D 导航系统
支持旋转字体

 
 采用 OpenGLL® ES 应用程序接口的 3D 导航系统
在屏幕右侧增加网页浏览器,以显示选中的“兴趣点”的网页内容。

   
采用高速趋势图和触摸屏的 2D 监视器。

支持 2D 功能 (全部功能详述……)
·   微小快速的 2D 图形基元
·   图像支持
·   字体支持
·   视频采集应用程序接口
·   分层应用程序接口(硬件支持时)
·   尽可能使用 2D 硬件加速图形驱动程序,否则使用软件返回例程
支持 3D 功能 (全部功能详述……
·   OpenGL® ES 应用程序 Common Profile(公用类)1.0 版
·   尽可能使用 3D 硬件加速图形驱动程序,否则使用软件返回例程
·   用于图形环境无需 3D 硬件加速的软件 3D 库
技术重点
减少内存占用量
·    应用程序只加载其需要的图形处理功能(如 2D 绘图、3D 绘图、字体、图像)。因而减少了内存的占用。
平衡标准
·    丰富的编程经验与 OpenGL ES 源代码
提供最佳图形显示性能
·    占用最小 CPU 资源的图形加速
·    集成图形设备的完整复合功能,支持移动显示(如导航或游戏)的分层功能。
·    3D 硬件加速
o    可用于特定的芯片组(如富士通的 Coral-P)
·   2D 硬件加速
o    实现硬件加速的透明混合处理,它广泛用于地图应用程序中,对消除锯齿或弧形非常重要。
制作无闪烁动画
·    采用多缓冲方式支持快速动画
·    标准互换调用可实现上下文或视图间的无缝转换
商业收益
节约材料清单 (BOM) 成本
软件模块化允许用户只配置所需的功能。
节约硬件成本
架构本身及高性能驱动程序的研发目的都是让低端硬件发挥最佳性能。
加快产品面市
标准 3D 图形工具确保开发人员不会浪费时间以加速开发进程。
架构
这是一个使用 QNX 高级图形技术开发工具包 (TDK) 并采用图形框架制作应用程序的典型实例。注意,所有这些组件都是可选的,除了图形驱动程序 (devg) 和应用程序代码本身(它只静态连接高级图形库所需的例程)。
示意图:高级图形应用程序架构的实例
上述实例中包含的其他组件有:
·   输入管理器控制的键盘和鼠标输入组件(配备面向目标系统的板级支持包)
·   字体渲染系统管理的字体渲染组件(如配备高级图形技术开发工具包的 Bitstream 字体融合库)
·    图像库提供的图像支持组件(配备高级图形技术开发工具包)
·    OpenGL® ES 库支持组件(配备高级图形技术开发工具包)
当图形框架用于全屏应用程序用户界面时,还能同时处理多线程和多个应用程序;用户需要时可同时运行 2D 和 OpenGL® ES 应用程序以及 Photon 应用程序。
图形框架采用客户机/服务器模式,并由 io-display 监视进程充当服务器以管理设备资源(如内存和图层)和硬件访问。客户机(图形应用程序)可直接访问硬件。客户通过调用 gf_draw_begin() 获得锁定(共享内存中的互斥锁),确保一次只有一个线程或程序访问硬件。io-display 监视进程通过及时发现客户机的异常终止、在终止后清理资源,并恢复共享内存互斥(如其被出现异常的客户机占用)以不断提高系统的稳定性。共享内存互斥会被分配至优先级最高的等待线程,以确保能首先绘制优先级最高的图形程序。
图形框架程序访问的所有硬件均由 io-display 监视进程进行管理。io-display 监视进程还通过释放分配的内存和锁定的硬件(必要时),来分配所有视频内存并处理应用程序终止(正常和异常)。这种控制对客户机的图形程序而言是 不可见的 ,因为所有的交互都是由图形库进行内部处理的。
下图说明了监视进程与三个分离的程序或客户机之间的关系:
·   QNX Photon microGUI® 环境(具有网页浏览器、电子邮件程序等)
·   使用第三方 2D 图形库(调用高级图形技术开发工具包)定制的图形用户界面
·   使用 OpenGL® ES 应用程序接口的程序


 
注意,三个程序全部载入图形驱动程序 (devg),并直接控制图形硬件。每个程序都有机会使用图形硬件(通过请求并接收 io-display 监视进程控制的互斥)。独占访问的顺序是根据请求程序的优先级确定的。
io-display 监视进程启动后,应用程序就可使用图形框架库 (libgf) 和 OpenGL® ES 库以获取图形上下文并交给设备。
第三方应用程序框架或现有的内部框架可与 QNX 高级图形技术开发工具包一起轻松连用。现有的图形框架可选择使用任何一种底层支持功能,如 2D/3D 绘图、图像和字体支持。简单的包装例程可以淡化方式使绘图操作抽象化,同时仍能为现有框架提供图形框架本身固有的性能和实时功能。
图形框架组件
QNX 图形框架内部的概念组件可将图形环境划分成可理解的层次。这些组件包括:
·   图形设备
·   显示器
·   图层
·   表面
·   上下文
图形设备与显示器是代表图形框架管理的硬件组件的逻辑实体。图形设备是一个图形硬件,它隶属 io-display 显示进程并由其通过适当的 devg-* 驱动程序进行控制。每个设备在 /dev/io-display 中都有一个入口。
每个设备都至少有一个显示器,代表终端用户观看的视频显示器。某些设备是多头的,即其支持多台显示器。
图形层表示显示器显示的内存区域。某些现代图形设备支持多个图层,尽管从图形框架的角度看,所有显示器应至少有一个图层(层 0)。图层为在显示器上对内容进行分层提供了极大的灵活性。例如,用户可在背景图层中置入卷动地图,然后通过图形用户界面控制地图在前面图层中的卷动。应用程序可顺利地卷动地图而无需重画图形用户界面控制,从而消除了闪烁并减少了对 CPU 的占用。用户无论何时想显示文本或在视觉信息上方显示图形用户界面,分层都能提供极大的帮助。
该图说明了图形设备、显示器和图层三者间的关系:
示意图:图形设备、显示器和图形层阶


注意,三个程序全部载入图形驱动程序 (devg),并直接控制图形硬件。每个程序都有机会使用图形硬件(通过请求并接收 io-display 监视进程控制的互斥)。独占访问的顺序是根据请求程序的优先级确定的。
io-display 监视进程启动后,应用程序就可使用图形框架库 (libgf) 和 OpenGL® ES 库以获取图形上下文并交给设备。
第三方应用程序框架或现有的内部框架可与 QNX 高级图形技术开发工具包一起轻松连用。现有的图形框架可选择使用任何一种底层支持功能,如 2D/3D 绘图、图像和字体支持。简单的包装例程可以淡化方式使绘图操作抽象化,同时仍能为现有框架提供图形框架本身固有的性能和实时功能。
图形框架组件
QNX 图形框架内部的概念组件可将图形环境划分成可理解的层次。这些组件包括:
·   图形设备
·   显示器
·   图层
·   表面
·   上下文
图形设备与显示器是代表图形框架管理的硬件组件的逻辑实体。图形设备是一个图形硬件,它隶属 io-display 显示进程并由其通过适当的 devg-* 驱动程序进行控制。每个设备在 /dev/io-display 中都有一个入口。
每个设备都至少有一个显示器,代表终端用户观看的视频显示器。某些设备是多头的,即其支持多台显示器。
图形层表示显示器显示的内存区域。某些现代图形设备支持多个图层,尽管从图形框架的角度看,所有显示器应至少有一个图层(层 0)。图层为在显示器上对内容进行分层提供了极大的灵活性。例如,用户可在背景图层中置入卷动地图,然后通过图形用户界面控制地图在前面图层中的卷动。应用程序可顺利地卷动地图而无需重画图形用户界面控制,从而消除了闪烁并减少了对 CPU 的占用。用户无论何时想显示文本或在视觉信息上方显示图形用户界面,分层都能提供极大的帮助。
该图说明了图形设备、显示器和图层三者间的关系:


表面是图形框架库可渲染的一块内存。如表面与图层(图层可见)相连,渲染到表面上的所有内容都会出现在图层的显示器上。表面必须具有图层支持的像素格式,以正确显示渲染到表面上的对象。通常,一个图层会对应一个单独表面(或与其相关)。在普通平面数据以外,如通常用于视频采集的平面 YUV,它需要三个表面(每个视频组件对应一个表面)。
在默认情况下,图形框架会在视频内存中分配一个表面,以达到最佳显示性能。但在创建表面时,用户可以请求对其优化以便访问 CPU,这意味着它会被分配到系统内存中。
上下文是指在渲染函数调用间保持渲染目标信息的结构,如笔宽、前景/背景颜色和裁剪矩形。一个上下文对应一个表面,而且它还是所有图形框架绘图函数的一个参数。表面可用于 2D 绘图或 OpenGL ES 3D 绘图。在显示之前,表面可组合到多个图层中。
该图说明了上下文、表面和图层之间的关系:
示意图:上下文、表面和图层


通过综合利用显示器、图层、表面和绘图上下文,用户就能通过简单的程序制作极精良的屏幕显示效果。下面的 2D 导航实例显示的是支持四个图层的图形环境。有三个图层正在被使用:一个用于 2D 地图显示,一个用于菜单/触摸屏,另一用于警告信息。系统设计人员可选择将其制作成一个完整的程序,也可制作成三个独立的程序。正确使用色度键和透明混合处理技术,将保证图层之间的可见度。
增加 3D 效果就像开发 OpenGL® ES 程序一样简单,无论是使用 3D 升级取代 2D 程序,还是在同一图层中以 2D 方式(分屏)运行 OpenGL® ES 程序。
增加网页浏览器就像在图层中启动 Photon 程序,然后运行定制网页浏览器(利用 QNX 网页浏览器技术开发工具包开发的)一样简单。
规格说明
·  二进制文件
o    用于 PPC、X86、SH 和 ARM 的 OpenGL ES 库和二维库
o    纯软件 OpenGL ES 库,为缺少 3D 硬件加速的图形芯片提供 3D支持
o    io-display 监视进程
o    管理器支持同时运行 3D 和 2D 程序
o    图像加载库支持多种图像格式。
§  JPEG, PNG, BMP, TGA, SGA, GIF
o    字体库
§  TrueType, Bitmap, Font Fusion (Bitstream 笔画字体)。(示例字体文件由 QNX Momentics 开发工具套装提供)
o    Fujitsu Coral B/P/PA 图形驱动程序:x86, PPC, SH
o    Fujitsu Carmine 图形驱动程序:x86, SH
o    Intel Extreme2 (855GM) 图形驱动程序:x86
o    VESABios 图形驱动程序:用于符合 x86 VESA 标准的图形控制器
o    VMWare 图形驱动程序:用于 QNX VMWare 会话
o    预编译的用于测试 2D 和 3D 的示例程序
·         文档
o    图形框架开发人员应用指南
o    OpenGL ES 1.0 文档集
o    字体融合应用程序接口文件
·         配置文本文件
o    定义视频设置的配置文件(图形芯片初始化等无需修改代码就能轻松适应显示组合)
·         示例源代码
o    2D 示例:绘制矩形、载入并显示图像、载入并显示文本等
o    图层控制:打开/关闭图层、改变色度等
o    3D 示例:顶点数组、纹理地图等
o    还有更多
如 QNX Photon microGUI 视窗系统与客户产品一起提供,则每个运行时均需要 Photon 授权许可。
用于定制网页浏览器的网页浏览器技术开发工具包是单独销售的。
系统要求
·  QNX Momentics® 开发工具套件专业版 v6.3 及更高版本
·  QNX Neutrino® 实时操作系统 v6.3 及更高版本(运行时)
·  支持硬件:
·  X86、PPC、SH4 和 ARM 目标机
·  支持图像渲染器
o    Fujitsu Coral-B/P/PA
o    Fujitsu Carmine
o    Intel Extreme2
o    VMWare 会话(可选,用于在 Windows 下检测 2D/3D 程序的有用目标机)
o    VESABios X86 图形芯片支持(非加速型)

url: http://www.51lm.cn/p/templates/cn/show.php?cid=30&aid=42

 

电话400-878-1895, 传真:021-51561359 邮箱:sales@51LM.cn
sales@51LM.cn 上海徐汇区斜土路2601号嘉汇广场T1-11B