Scene Graph 小记(Qt5)

转载 2012年03月28日 14:18:19

http://blog.csdn.net/dbzhang800/article/details/6864540


在Qt5中,传统的QWidget系列,仍然使用BackStoring技术,但新的Qt Quick2,将使用Scene Graph。后者能更好地发挥GPU的性能,但是移植QWidget到这上面来的话,工作量似乎又太大。所以...

本文: 跟随 官方blog,简单了解 Scene Graph

背景:硬件加速

显卡按显存架构可分两类:

  • UMA(Unified Memory Architecture)统一内存体系结构,使用部分的电脑主内存作为显存
  • 非UMA,使用独立的显存。

显卡按其支持的图形操作可以粗略分为:

No acceleration (framebuffer only)

常见于嵌入式设备中

Blitter & alpha-blending hardware

在PC中不多见了
仍用于嵌入式

Path based 2D vector graphics

取代前者(?)

Fixed-function 3D

老式的PC机中,被后者取代

Programmable 3D

 

这样以来2*5=10,将有10中情况了。对此,Qt曾这样规划,每种情况对应一个paint engine。

 

UMA

非UMA

None

Raster

Raster*

Blitter

DirectFB

DirectFB**

2D vector

OpenVG***

OpenVG***

Fixed-3D

OpenGL (ES) 1.x

OpenGL (ES) 1.x

Programmable-3D

OpenGL (ES) 2.x

OpenGL (ES) 2.x****

使用OpenGL引擎

引入了!OpenGL2,但是看来,在当前的这种graphics stack(Backstoring)下,性能不太令人满意。

Scene Graph出场

在做了种种努力之后。官方决定后退一步,然后看看如果采用一种新的模型会得到些什么。这个新模型就是 Scene Graph,它是由一系列节点构成的树

  • GeometryNode

  • TransformNode

  • ClipNode

然后使用Renderer的子类遍历这个类并渲染它。

几个月后,已可以将QML建立在Scene Graph的基本结构之上。此时特点:可以见到

  • QtSceneGraph 这个库

  • qmlscene 这个可执行文件

今年5月底,QML Scene Graph 进入Qt5源码仓库的master分支。

后续

和Qt Quick关系太大了,暂时看不懂。只好先到这儿了...



相关文章推荐

Scene Graph 小记(Qt5)

Scene Graph 小记(Qt5) 在Qt5中,传统的QWidget系列,仍然使用BackStoring技术,但新的Qt Quick2,将使用Scene Graph。后者能更好地发挥GPU的...

Scene Graph 小记(Qt5)

在Qt5中,传统的QWidget系列,仍然使用BackStoring技术,但新的Qt Quick2,将使用Scene Graph。后者能更好地发挥GPU的性能,但是移植QWidget到这上面来的话,工...

Qt Scene Graph渲染方式在不同系统的差异

Qt Scene Graph是Qt 5提出的新渲染底层,它是Qt Quick在绝大多数平台上渲染的基础(Qt 4的是依赖Qt Graphics View)。了解和学习Qt的Scene Graph,怎么...

Qt新渲染底层Scene Graph研究(一)

Qt 5提出了一个新的渲染底层,以替代Qt4时期的Graphics View,这个渲染底层就是Scene Graph。其实这个底层的作用和Open Scene Graph是差不多的,但是由于是不同的团...

Qt新渲染底层Scene Graph研究(三)

上一篇文章介绍了Qt Quick和Scene Graph的一些理论上的内容。这也是我最新的研究成果。接下来我要介绍一下如何使用Scene Graph来制作一些好玩的效果。这也是我进行一次Scene G...

Qt新渲染底层Scene Graph研究(二)

上一篇文章初步介绍了Qt新渲染底层Scene Graph,我们该如何利用这个框架为应用程序增添绚丽的效果呢?首先,我们要明确利用Scene Graph开发的目的是什么。如果是简单的,纯粹的显示2D图形...

Qt Scene graph画线

前言想要实现在QML中画线,有几种方式: 第一种,用在QML中用Canvas来实现画线功能,经过实践,效率比较低,折线非常严重,特别是在Android手机上运行。 第二种,通过QPainter来绘...

open scene graph库

  • 2014-03-23 21:14
  • 7.42MB
  • 下载

Open Scene Graph 内存管理

在Osg中有一个类被使用的最多,那就是ref_ptr.Osg中提供了一种自动管理内存的机制,这种机制涉及到两个类:第一个就是ref_ptr,另外一个就是osg::Referenced.osg::Ref...

QtQuick基础教程(四)---场景渲染(Scene Graph)

Qt Quick 一大特色在于其改变了界面渲染方式,自Qt Quick 2起统一使用OpenGL ES 2.0 或者 OpenGL 2.0 来渲染界面。这样做的好处是,所有要渲染的界面元素均在最后统一...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)