12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <!DOCTYPE html>
- <html lang="zh">
- <head>
- <meta charset="utf-8" />
- <base href="../../../" />
- <script src="page.js"></script>
- <link type="text/css" rel="stylesheet" href="page.css" />
- </head>
- <body>
- <h1>[name]</h1>
- <p class="desc">
- 此类从立方体贴图环境纹理生成经过预过滤的Mipmapped辐射环境贴图(PMREM)。
- 这允许根据材料粗糙度快速访问不同级别的模糊。
- 它被打包成一种特殊的CubeUV格式,允许我们执行自定义插值,以便我们可以支持RGBE等非线性格式。
- 与传统的mipmap链不同,它只下降到LOD_MIN级别(上图),然后以相同的 LOD_MIN 分辨率创建额外的甚至更多的过滤“mips”,并与更高的粗糙度级别相关联。
- 通过这种方式,我们保持分辨率以平滑地插入漫射照明,同时限制采样计算。
- </p>
- <h2>构造器(Constructor)</h2>
- <h3>[name]( [param:WebGLRenderer renderer] )</h3>
- <p>
- 此构造函数创建一个新的[name]。
- </p>
- <h2>方法(Methods)</h2>
- <h3>[method:WebGLRenderTarget fromScene]( [param:Scene scene], [param:Number sigma], [param:Number near], [param:Number far] )</h3>
- <p>
- [page:Scene scene] - 给定的场景<br>
- [page:Number sigma] - (可选)指定在PMREM生成之前应用于场景的以弧度为单位的模糊半径。默认为0。<br>
- [page:Number near] - (可选)近平面值,默认值为0.1。<br>
- [page:Number far] - (可选)远平面值。默认值为100。<br /><br />
- 从提供的场景生成PMREM,如果网络带宽较低,这可能比使用图像更快。可选的近平面和远平面确保场景被完整渲染(cubeCamera放置在原点)。
- </p>
- <h3>[method:WebGLRenderTarget fromEquirectangular]( [param:Texture equirectangular] )</h3>
- <p>
- [page:Texture equirectangular] - equirectangular纹理。<br /><br />
- 从等距柱状纹理生成PMREM,可以是LDR或HDR。理想的输入图像大小为1k(1024x512),因为这与256x256立方体贴图输出最匹配。
- </p>
- <h3>[method:WebGLRenderTarget fromCubemap]( [param:CubeTexture cubemap] )</h3>
- <p>
- [page:CubeTexture cubemap] - 立方体贴图纹理。<br /><br />
- 从立方体贴图纹理生成PMREM,可以是LDR或HDR。理想的输入立方体大小为256x256,因为这与 256x256立方体贴图输出最匹配。
- </p>
- <h3>[method:undefined compileCubemapShader]()</h3>
- <p>
- 预编译立方体贴图着色器。您可以通过在纹理的网络获取期间调用此方法来提高并发性,从而加快启动速度。
- </p>
- <h3>[method:undefined compileEquirectangularShader]()</h3>
- <p>
- 预编译等距柱状着色器。您可以通过在纹理的网络获取期间调用此方法来提高并发性,从而加快启动速度。
- </p>
- <h3>[method:undefined dispose]()</h3>
- <p>
- 处理PMREMGenerator的内部存储器。
- 请注意,PMREMGenerator是一个静态类,因此您不需要多个PMREMGenerator对象。
- 如果这样做,对其中之一调用dispose()将导致任何其他对象也变得不可用。
- </p>
- <h2>源代码(Source)</h2>
- <p>
- [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
- </p>
- </body>
- </html>
|