代码之家  ›  专栏  ›  技术社区  ›  Florian Blume

屏幕外渲染器中的qt3d透明度

  •  2
  • Florian Blume  · 技术社区  · 7 年前

    我用的是qt3d offscreen renderer 并修改框架图以包含背景图像,如 here .

    不幸的是,使用 QPhongAlphaMaterial 只是工作不尽如人意。

    这是结果:

    this is the result

    这就是渲染对象在没有透明度的情况下的外观:

    enter image description here

    这是背景:

    enter image description here

    框架图有两个分支:一个用于背景图像,它首先被处理,另一个用于对象。我加了一个 QRenderStateSet 对于包含 QBlendEquation 混合函数设置为add和 QBlendEquationArguments 源rgb和alpha设置为1,目标rgb和alpha设置为1减去源alpha。

    (对于任何想知道的人,我从 T-Less dataset 并编写了一个程序来创建用于6D姿态估计的地面真值数据)

    1 回复  |  直到 7 年前
        1
  •  1
  •   Florian Blume    7 年前

    类似于 this question ,需要将要渲染到的纹理的格式设置为 RGB8_UNorm 而不是 RGBA8_UNorm ,即没有alpha通道。