🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 构造参数 ## canvas > 类型 HTMLCanvasElement | [OffscreenCanvas](https://developer.mozilla.org/zh-CN/docs/Web/API/OffscreenCanvas) > dom 节点 ``` js // 例一 new WebGLRenderer({ canvas:document.createElement('canvas') }) // 例二 new WebGLRenderer({ canvas: new OffscreenCanvas(256, 256) }) ``` ## context > 类型 WebGLRenderingContext >可用于将渲染器附加到已有的渲染环境([RenderingContext](https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext))中。默认值是null ``` js // 例一 var canvas = document.getElementById('myCanvas'); new WebGLRenderer({ // '2d' or '3d' 都是不行的 context:canvas.getContext('webgl') }) ``` ## precision > 类型 string > 精度 可以是 **"highp"** , **"mediump"** 或者 **"lowp"** . 如果设备支持,默认为 **"highp"** ## alpha > 类型 boolean > canvas是否包含alpha (透明度)。默认为**false** ## premultipliedAlpha > 类型 boolean > renderer是否假设颜色有premultiplied alpha > ([位图图像](https://en.wikipedia.org/wiki/Bitmap_image "位图图像")或[alpha混合](https://en.wikipedia.org/wiki/Alpha_blending "阿尔法混合")计算的一种变体,其中假定RGB颜色值已经乘以alpha通道,以减少[Alpha混合](https://en.wikipedia.org/wiki/Alpha_blending "阿尔法混合")期间的计算;使用[混合操作](https://en.wikipedia.org/w/index.php?title=Blend_operation&action=edit&redlink=1 "混合操作(页面不存在)"):`dst *= (1 - alpha) + src`;能够[混合](https://en.wikipedia.org/wiki/Alpha_blending "阿尔法混合")具有[混合](https://en.wikipedia.org/wiki/Additive_blending "添加剂混合")效果的[Alpha混合](https://en.wikipedia.org/wiki/Alpha_blending "Alpha blending")) ## antialias > 类型 boolean > 是否执行抗锯齿。默认为 **false**. ## stencil > 类型 boolean > 绘图缓存是否有一个至少8位的模板缓存([stencil buffer](https://en.wikipedia.org/wiki/Stencil_buffer)) > 模版缓冲([stencil buffer](https://en.wikipedia.org/wiki/Stencil_buffer))或印模缓冲,是在OpenGL三维绘图等计算机图像硬件中常见的除颜色缓冲、像素缓冲、深度缓冲之外另一种数据缓冲 > [相关连接csdn](https://blog.csdn.net/silangquan/article/details/46608915) ## preserveDrawingBuffer > 类型 boolean > 是否保留缓直到手动清除或被覆盖 ## powerPreference > 类型 string > 提示用户代理怎样的配置更适用于当前WebGL环境。 可能是 **"high-performance"** , **"low-power"** 或 **"default"** 。默认是 **"default"** . 详见[WebGL spec](https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.12) ## failIfMajorPerformanceCaveat > 类型 boolean ## depth > 类型 boolean > 绘图缓存是否有一个至少6位的深度缓存([depth buffer](https://en.wikipedia.org/wiki/Z-buffering))。 默认是 **true**. ## logarithmicDepthBuffer > 类型 boolean > 是否使用对数深度缓存。如果要在单个场景中处理巨大的比例差异,就有必要使用