我有许多 GLSL 片段着色器,我几乎可以保证它们符合#version 120
它们使用标准的、不符合 ES 的值,并且没有任何 ES 特定的编译指示。
我真的很想使用 WebGL 为他们制作一个网页预览器。预览器不会在移动设备上使用。这可行吗?与 GLSL 版本相比,WebGL 中向 GLSL 着色器公开的功能集是否受到限制?精度有差异吗?
我已经尝试过玩THREE.js
但这并没有真正影响它,因为它在将着色器代码加载到 GPU 之前会弄乱它(我不能这样做)。
简而言之:GLSL 规范是否足以让我运行这些着色器?...因为如果它不是我所追求的,那是不可行的,我应该放弃它。
不可以,WebGL 着色器必须是版本 #100。其他任何事情都是不允许的。
如果您好奇为什么会这样,因为 WebGL 需要尽可能在任何地方运行。如果您可以选择任何版本,您的网页将仅在具有处理该版本的 GPU/驱动程序的系统上运行。
WebGL的下一个版本将提高版本号。它将允许 GLSL ES 3.0(注意ES)。截至 2016 年 5 月,它目前可在 Chrome 和 Firefox 中使用
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)