jon*_*br1 5 mobile android webgl three.js samsung-mobile
在三星操作系统的最新版本中(我正在使用 Galaxy S6 进行测试),Chrome 禁用了 WebGL。原因在此处记录。我正在使用此标志运行没有黑名单的 Chrome:
--ignore-gpu-blacklist

这些是 Three.js 向我吐槽的错误。我很想知道如果这些 OES 扩展不存在, Three.js 是否可以成功运行/渲染:
OES_texture_floatOES_texture_float_linearOES_texture_half_floatOES_texture_half_float_linearOES_texture_filter_anisotropic如果是这样,我将如何更改 Three.js 以便它可以工作?如果没有,我在哪里可以进一步阅读这些扩展,以便更好地了解它们的工作原理?
所有这五个扩展都通过以下方式处理纹理:
前四个扩展支持浮点纹理,即分量为浮点值的纹理。
OES_texture_float 表示具有最近邻过滤的 32 位浮点纹理。OES_texture_float_linear 表示具有线性过滤的 32 位浮点纹理。OES_texture_half_float 表示具有最近邻过滤的 16 位浮点纹理。OES_texture_half_float_linear 表示具有线性过滤的 16 位浮点纹理。请参阅OpenGL ES 注册表中的texture_float、
texture_float_linear和ARB_texture_float
(OES_texture_float_linear基于)。
Three.js检查这些扩展(并在必要时输出错误消息)以启用它们的功能。
最后一个扩展(称为EXT_texture_filter_anisotropic)提供了对各向异性过滤的支持,它可以在过滤某些类型的纹理时提供更好的质量。
注册表:https : //www.khronos.org/registry/gles/extensions/EXT/texture_filter_anisotropic.txt
此页面 包含此过滤的可视化。
在这里,Three.js 也会检查这个扩展是否可以使用。
对于所有这些扩展,“改变 Three.js”是否有意义取决于您的应用程序。例如,您的应用程序的某些效果是否需要浮点纹理?(您可以通过检查您是否使用THREE.HalfFloatType或来检查THREE.FloatType。)
虽然 Three.JS 会检查这些扩展,但它本质上并不依赖于这些扩展才能工作,并且至少只有一个示例需要使用它们。因此,问题不在于修改 Three.js,而在于修改您的应用程序。尽管如此,在 WebGLExtensions.js 中,这里是生成警告的地方。
| 归档时间: |
|
| 查看次数: |
2838 次 |
| 最近记录: |