Orillusion

    • 注册
    • 登录
    • 搜索
    • 版块
    • 最新
    • 标签

    WGSL Shader 属性预处理方法疑问

    General Discussion
    shader
    2
    3
    188
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • A
      axmand 最后由 编辑

      WebGPU里当前没有类似getActiveAttrib/getActiveUniform接口,无法预判ShaderModule里属性的location和数据类型,这样封装接口的时候就还是需要开发者填入Layout信息比较麻烦啊。

      难道需要自行开发一个WGSL文本解析器么?

      1 条回复 最后回复 回复 引用 0
      • shuangliu
        shuangliu 最后由 shuangliu 编辑

        您好,这个问题本质上是 shader reflection,目前 WebGPU 的标准中还没有加入该特性,但社区中已经有很多人提出过相关问题,e.g. https://github.com/gpuweb/gpuweb/issues?q=reflection+

        官方已经计划在下一个版本中加入 reflection 的相关功能,届时可以都过 createShaderModule 返回所有 属性和location等相关信息。

        目前的话,社区中有第三方开发的相关组件,e.g. https://github.com/brendan-duncan/wgsl_reflect 也可以得到基本的信息,如果需要可以关注试用一下

        A 1 条回复 最后回复 回复 引用 0
        • A
          axmand @shuangliu 最后由 编辑

          @shuangliu 十分感谢,插件的思路确实是预处理WGSL文本得到反射类型的,很受启发👍 👍 👍 👍 👍

          1 条回复 最后回复 回复 引用 0
          • First post
            Last post

          Recent Post

          • U

            @huangbeyond 期待他的webgpu2.0😁

            • 阅读更多
          • H

            您是打算上C++来测试WebGPU吗?

            • 阅读更多
          • F

            @shuangliu 谢谢大佬指点,已经能clone下来了😇

            • 阅读更多
          • 首先,只设置 http.proxy 就行

            其次,请明确本地socks5的端口,不是所有的梯子都用1080/1086/443,每个软件都不一样,不要只是搜了网上的例子就粘过来用,比如,我用的 clash 一般是使用 7890 端口

            git config --global http.proxy 'socks5://127.0.0.1:7890'

            刚测试过,可以 clone Dawn 的 repo

            • 阅读更多
          • F

            @shuangliu 我使用如下设置

            git config --global http.proxy http://127.0.0.1:1080 git config --global http.proxy 'socks5://127.0.0.1:1080' git config --global https.proxy socks5://1270.0.1:1086 git config --global https.proxy socks5://1270.0.1:1080 git config --global https.proxy http://127.0.0.1:443

            都clone不下来

            • 阅读更多

          Copyright © 2022 Orillusion | Contact US