如何探索独特的HTML5渲染方法从而优化层

html-css015

如何探索独特的HTML5渲染方法从而优化层,第1张

在 OpenGL 或 WebGL 等低级别渲染中,通过逐帧地清理和绘制场景来执行渲染。实现渲染之后,需要优化游戏,以减少渲染的量,所需成本因情况而异。因为画布是一个 DOM 元素,它使您能够对多个画布进行分层,以此作为一种优化方法。本文将探讨对画布进行分层的合理性。了解 DOM 设置,从而实现分层的画布。使用分层进行优化需要各种实践。本文还将探讨一些优化策略的概念和技术,它们扩展了分层方法。选择优化策略选择最佳优化策略可能很难。在选择分层的场景时,需要考虑场景是如何组成的。大屏幕上固定物的渲染经常需要重用若干个组件,它们是进行研究的极佳候选人。视差或动画实体等效果往往需要大量的变化的屏幕空间。在探索您的最佳优化策略时,最好注意这些情况。虽然画布的分层优化需要采用几种不同的技术,但在正确应用这些技术后,往往会大幅提升性能。设置层在使用分层的方法时,第一步是在 DOM 上设置画布。通常情况下,这很简单,只需定义画布元素,将其放入 DOM 中即可,但画布层可能需要一些额外的样式。在使用 CSS 时,成功地实现画布分层有两个要求:各画布元素必须共存于视区 (viewport) 的同一位置上。每个画布在另一个画布下面必须是可见的。图1 显示了层设置背后的通用重叠概念。 设置层的步骤如下:将画布元素添加到 DOM。添加画布元素定位样式,以便支持分层。样式化画布元素,以便生成一个透明的背景。设置画布重叠堆栈在CSS 中创建一个重叠堆栈 (overlay stack) 可能需要少量的样式。使用 HTML 和 CSS 有许多方法进行重叠。本文中的示例使用一个 标签来包含画布。 标签指定了一个惟一 ID,它将样式应用于其子 HTML5 画布元素,如 清单 1 所示。清单1. 画布定位样式 #viewport { /** * Position relative so that canvas elements * inside of it will be relative to the parent */ position: relative} #viewport canvas { /** * Position absolute provides canvases to be able * to be layered on top of each other * Be sure to remember a z-index! */ position: absolute} 容器 通过将所有子画布元素样式化为使用绝对定位来完成重叠要求。通过选择让 #viewport 使用相对定位,您可以适应未来的发展,因此,应用于子样式的绝对布局样式将会是相对于 #viewport 容器的样式。这些HTML5 画布元素的顺序也很重要。可以按元素出现在 DOM 上的顺序进行顺序管理,也可以按照画布应该显示的顺序来样式化 z-index 样式,从而管理顺序。虽然并非总是如此,但其他样式可能也会影响渲染;在引入额外的样式(比如任何一种 CSS 转换)时要小心。透明的背景通过使用重叠可见性来实现层技术的第二个样式要求。该示例使用这个选项来设置 DOM 元素背景颜色,如 清单 2 所示。清单2. 设置透明背景的样式表规则 canvas { /** * Set transparent to let any other canvases render through */ background-color: transparent} 将画布样式化为拥有一个透明背景,这可以实现第二个要求,即拥有可见的重叠画布。现在,您已经构造了标记和样式来满足分层的需要,所以您可以设置一个分层的场景。

HTML的全称是超文本标记语言,是一种标记语言。它包括一系列标签,可以统一网络上文档的格式,将分散的互联网资源连接成一个逻辑整体。HTML是由HTML命令组成的描述性文本,可以解释文字、图形、动画、声音、表格、链接等。Html是一种用来描述网页的语言。它被称为超文本标记语言,它是一种标记语言。它包括一系列标签,可以统一网络上文档的格式,将分散的互联网资源连接成一个逻辑整体。