包含此页的版本:
不含此页的版本:
WebGL 是一个用于在 Web 浏览器中渲染图形的 API,它基于 OpenGL ES 图形库的功能。WebGL一种在 Web 浏览器中呈现 2D 和 3D 图形的 JavaScript API。Unity Web 构建选项允许 Unity 将内容发布为 JavaScript 程序,这些程序使用 HTML5 技术和 WebGL 渲染 API 在 Web 浏览器中运行 Unity 内容。更多信息
请参阅术语表2.0 (WebGL2) 是 Unity 支持的 WebGL 版本。WebGL2 几乎与 OpenGL ES 3.0 功能匹配。
WebGL2 被大多数浏览器广泛接受,是 Unity 中的默认 Web 图形 API。
使用 WebGL2 有一些最佳实践建议和限制:
默认情况下,Unity Web 会在每一帧后清除绘图缓冲区,这意味着无论 Camera.clearFlags 设置如何,帧缓冲区的内容都会被清除。但是,您可以在实例化时更改此行为。为此,请将webglContextAttributes.preserveDrawingBuffer自true在index.html文件。
注意:如果设置任何 WebGL 上下文属性,还必须添加一行以保留 Power Preference Player 设置。
script.onload = () => {
config['webglContextAttributes'] = {
preserveDrawingBuffer: true, //Add this line to preserve the Camera.clearFlags setting
powerPreference: {{{ WEBGL_POWER_PREFERENCE }}} //Add this line to preserve the Power Preference Player setting
};
createUnityInstance(canvas, config, (progress) => {
WebGL 支持在大多数(但不是所有)浏览器和 GPU 组合上进行抗锯齿。抗锯齿可柔化场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表.
要启用抗锯齿:
转到 质量设置(菜单:编辑(Edit) > 项目设置(Project Settings),然后选择 质量(Quality) 类别)。
在 渲染(Rendering) 分段中,确保 抗锯齿(Anti Aliasing) 未设置为 禁用(Disabled)。
WebGL 2.0 规范对 OpenGL 着色语言 (GLSL) 施加了一些限制着色器在 GPU 上运行的程序。更多信息
请参阅术语表法典。如果您编写自己的着色器,这主要相关。
精度限定符
WebGL 2.0 要求在着色器中指定所有变量的精度。您可以使用highp,mediump或lowp以指定变量的精度。如果未指定精度,则着色器将使用默认精度,即mediump.您还可以使用精度来指定变量块的精度。
有与这两个 Web 图形 API 相关的建议。有关详细信息,请参阅 WebGL2 和 WebGPU 图形 API 的建议。