【问题标题】:Unity3d Silhouette Highlight for 2d sprite用于 2d 精灵的 Unity3d 剪影突出显示
【发布时间】:2016-11-27 08:50:50
【问题描述】:

我想在MouseOver 上实现Silhouette Highlight,如下图所示:

内置的 Unity3d 用户界面元素有一个名为 OutlineShadow 的组件,但它们仅适用于用户界面,不适用于 SpriteRenderer。第一个想法是创建第二个背景高亮的精灵,并将其启用为MouseOver,但我认为这种方法并不好。

【问题讨论】:

  • 我会说你想错了。你描述的方法是最简单的,也是最合适的。另一种方法是在着色器级别上工作,您可以尝试使用卡通着色器。
  • 确实 - 简单地制作“发光精灵”并打开和关闭它们没什么问题。这就是AAA方法! :) 确实可以编写一个着色器来执行此操作,但实际上这将是糟糕的工程 - 完全没有必要。

标签: unity3d shader sprite


【解决方案1】:

正如 Everts(和我)在评论中提到的,

简单地制作“发光精灵”并打开和关闭它们并没有错。在许多大型游戏中肯定会这样做:这很好。

您确实可以编写一个着色器来执行此操作,但实际上那将是“糟糕的工程”——对于如此简单的需求来说完全没有必要。 (并且要清楚,可以说制作自定义精灵更好。)

现在,这给我们带来了关于 Unity 工程的重要一点 -

在 Unity 工作中使用现有资产至关重要。

有几个突出的例子。比如 NatCam 和 Edy 的车辆系统。除非您使用“NatCam”,否则您只是 - 从字面上看 - 不能在游戏中使用相机;唯一的选择是完全毫无意义地花一年时间自己构建 NatCam。

在这种情况下,有很多不错的“发光着色器”可用...

https://www.assetstore.unity3d.com/en/#!/content/20166

享受吧!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-25
    • 1970-01-01
    • 2014-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多