代码之家  ›  专栏  ›  技术社区  ›  Asperger

从2018年开始在WebGL中加载着色器?[副本]

  •  1
  • Asperger  · 技术社区  · 6 年前

    <script id="fragmentShader" type="x-shader/x-vertex"> </script>
    <script id="vertexShader" type="x-shader/x-vertex"></script>
    

    在没有第三方工具的情况下,有没有其他方法可以在HTML中使用着色器?

    1 回复  |  直到 6 年前
        1
  •  1
  •   HugoTeixeira    6 年前

    着色器代码必须以某种方式对WebGL代码可用,因此这里没有魔法。一些替代方案是:

    • . 在这种情况下,HTML将没有着色器,Javascript代码将通过异步调用来检索它们。这种方法的缺点是您可能有很多请求,并且页面加载时间可能会受到影响。
    • 在Javascript代码中将着色器的源代码硬编码为字符串文本
    • wasm 文件 黄蜂 文件,将由浏览器直接处理。
    • . 您可以将着色器和Javascript代码分开并组织起来(例如,放入目录等)。然后可以使用Javascript工具包 Gulp Grunt 处理代码并将它们合并到一个源文件中。你可以看看 source code of Three.js