找回密码
 注册账户
查看: 347|回复: 0

Chromium改进硬件加速图形系统(图)

[复制链接]
业界达人 发表于 2010-8-30 21:05:32 | 显示全部楼层 |阅读模式
近段时间,Chromium对图形系统进行了大幅的改进,一方面为了适应新的API(即WebGL,结合了Javascript和OpenGL的底层3D图形API)和新的标记语言(如Apple带头提出的3D CSS),一方面可以更好利用GPU来增强整个浏览器的图形绘制速度,受益于此,一些常见的操作如二维图像合成、伸缩,可以得到显著的加速。</P><P style="TEXT-INDENT: 2em">在硬件加速条件下,GPU接受来自渲染进程的命令,并将其输入OpenGL 或 Direct3D 进行处理,Chrome在此一直落后于其他对手,原因是Google考虑到安全因素,将浏览器的渲染工作安排在一个独立的进程内,导致无法与操作系统的硬件接口直接通信。因此为了实现硬件加速,Chrome需要特殊的方案:</P><P style="TEXT-ALIGN: center"><IMG alt=Chromium改进硬件加速图形系统(图) src="http://img1.gtimg.com/tech/pics/hv1/26/250/612/39859076.png"></P><P style="TEXT-INDENT: 2em">Google将这种方案称为GPU process.</P><P style="TEXT-INDENT: 2em">在渲染进程和GPU两者无法直接通信的情况下,Chrome特意分出了一片共享存储区,让渲染进程将命令缓存录入存储区,再等GPU从存储区读取命令,进而执行相应命令。这方案解决了核心问题,但因为始终不是直接通信,功能上还有一定的限制。</P><P style="TEXT-INDENT: 2em">依靠这个结构,Chromium开始对部分内容实施硬件加速。对于普通的网页内容(文本、CSS、静态图片)依旧直接使用CPU渲染,而GPU负责大型媒体(如视频)的加速渲染任务,更为特殊的WebGL元素,则完全交由GPU渲染。</P><P style="TEXT-INDENT: 2em">对各层面的内容渲染完成后,最后关键的一步是将所有内容揉合进同一个页面,这项工作CPU无法很好胜任,而想使用GPU进行糅合工作,可以加入启动命令行参数--enable-accelerated-compositing。</P>
您需要登录后才可以回帖 登录 | 注册账户

本版积分规则

存档|黑屋|手机|网络实验室 本站服务器由美国合租以及IDCLayer国际数据提供!!!

GMT+8, 2026-6-10 06:14 , Processed in 0.013441 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表