【问题标题】:How can I draw lines on the edges of objects?如何在物体边缘画线?
【发布时间】:2018-09-13 01:28:48
【问题描述】:

我正在制作一个统一的 SteamVR 游戏。

我想实现一种让人联想到 Antichamber 的无光艺术风格。

我想在对象的边缘画线,但我找不到一个没有过时且有效的在线解决方案。

这是来自antichamber的图片。

您可以看到每个对象的所有边缘都有一条线。

我怎样才能达到这个效果?

【问题讨论】:

    标签: c# unity3d shader post-processing image-effects


    【解决方案1】:

    你可以使用 Unity 的“边缘检测效果法线”来做到这一点,它是 Unity 图像效果的一部分,并包含在它们的标准资源中。你可以得到它here


    还有一个新的 Unity 图像效果,称为 "Post Processing Stack",它比我上面链接的效果要快,你可以在这里获得。边缘检测不包含在新的“后处理堆栈”图像效果中,但如果您决定使用新的后处理堆栈,您可以获得“边缘检测效果法线”的移植版本here .

    这些效果中的任何一种都可以在对象的边缘绘制线条。

    【讨论】:

    • 是否有这个的着色器版本而不是后期处理?
    • 你有更新版本吗 - 链接不再有效
    【解决方案2】:

    我想在物体的边缘画线

    这个免费资产承诺可以做到这一点。

    "支持在编辑器、正交和透视相机中工作的具有可变厚度、颜色的轮廓。"

    来源:https://assetstore.unity.com/packages/vfx/shaders/toon-shader-free-21288

    【讨论】:

    • 这不是我想要的。着色器只勾勒出物体的轮廓,并不会在每条边上画一条线。
    • 我相信着色器应该仍然能够以某种方式解决这个问题。尽管当时不是资产中显示的着色器。
    • 可能,图像效果可能会更好,因为您正在查看的对象无关紧要。
    • “图像效果”是什么意思?
    • 使用 c# 脚本影响相机视图的着色器。
    猜你喜欢
    • 2019-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-28
    • 1970-01-01
    相关资源
    最近更新 更多