【问题标题】:Circular show-through mask like Holomaps像 Holomaps 一样的圆形透明面具
【发布时间】:2017-01-18 19:54:03
【问题描述】:

我正在使用 Unity 5.5 并尝试像在 Hololens 的 Holomaps 应用程序中那样复制蒙版/剪辑。即使不是圆形,方形/矩形掩码。 Holomaps 应用的 Youtube 视频在https://www.youtube.com/watch?v=8gpuYzWVP9w

您可以看到,地图是一个规则的矩形网格,但只能通过圆形门户看到。

不同之处在于,我有一个带有地图的基准平面和一个包含建筑物和其他地标的不同网格。

我已经尝试过 DepthMasks(来自 Unity Wiki)和 Stencil 着色器,但无法获得结果。

对于 DepthMask,我创建了 4 个立方体来覆盖地图的所有侧面,并在 4 个立方体之间留下一个小洞。但是要覆盖建筑物的高度,立方体需要比建筑物高,当相机进入遮罩立方体时,这会导致相机视图忽略遮罩。

模板着色器在应用于任何 3D 形状时,将允许遮罩从所有摄像机角度显示出来,从而放弃遮罩形状。

关于我们如何进行这样的蒙版/剪辑的任何指针?

【问题讨论】:

  • 可能是使用着色器根据到中心的距离将像素设置为黑色。由于黑色是透明的,所以它看起来像一个面具。
  • 啊,我回答了类似的问题,但我强烈建议实际丢弃像素而不是使用 alpha 透明度。剪裁效率更高。
  • @Everts 今天我打算尝试类似的东西,只是用一些黑色立方体来看看它是如何工作的,因为 HoloLens 不会渲染黑色。将更新进展情况。

标签: unity3d shader hololens


【解决方案1】:

好的,我已经能够在https://github.com/kwnetzwelt/unity3d-dissolve-shader 找到确切的解决方案。这是一个着色器,它从世界点(中心)以球体形状在一定距离处剪切对象。

正是我想要的!

感谢您的@Everts 和@Nonameghost 的想法:)

【讨论】:

    【解决方案2】:

    https://en.wikibooks.org/wiki/Cg_Programming/Unity/Cutaways

    你试过这样剪吗?我可以想象一个带有中心和半径参数的着色器,其中任何比半径更远的像素都会被丢弃。这通常是 alpha-cutout 着色器的工作方式,通常与这样的蒙版一起使用。

    【讨论】:

    • 这看起来很有希望!让我完成黑色立方体测试,并将测试剖面图并在此处更新。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-10
    • 1970-01-01
    • 2019-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多