【问题标题】:How to color individual parts of curve in unity, real time?如何实时统一地为曲线的各个部分着色?
【发布时间】:2016-11-08 20:53:07
【问题描述】:

所以我有一个从 Blender 导入的网格曲线。我想要做的是在曲线上放置单个点(在固定距离处),然后根据特定数字为它们着色。

假设例如数字 1000 是红色,数字 10 是蓝色(基于颜色渐变)。这些数字实时更新,所以我希望我的颜色实时更新。

我不知道如何解决这个问题。我查找了一些想法,但找不到任何有用的东西。

谢谢。

【问题讨论】:

标签: unity3d colors blender mesh


【解决方案1】:

坏消息,这绝非易事。

Unity 是一个游戏引擎 - 它只是与你知道的那种类型的问题无关?

我相信唯一真正的解决方案是在着色器级别进行

如您所知,编写着色器本身就是一个完整的工程领域。我建议,首先在谷歌上搜索“Unity3d 颜色渐变,着色器”之类的内容。

例如,

http://answers.unity3d.com/questions/1108472/3-color-linear-gradient-shader.html


一件你可以想象得到的事情。使绳子变白。 应用灯光!所以,彩色窄光束灯或仔细放置漫射灯。也许与照明层结合使用。它可以工作并非不可思议,享受!

注意 - 实际上 OP 仅使用彩色灯解决了问题 - 在某些情况下是一种解决方案。


请注意,这里的 GL api 也是完美的。

user2299169 在上面的 cmets 中给出了一个出色的链接:

http://gamedev.stackexchange.com/questions/96964/how-to-correctly-draw-a-line-in-unity

GL Doco:https://docs.unity3d.com/ScriptReference/GL.LINES.html

感谢 user2299169。

【讨论】:

  • 正要写一个类似的东西,我认为着色器是解决问题的唯一合理方法,毕竟在形状上动态改变像素颜色的问题是发明着色器要解决的问题。
  • 对。完全同意,斯科特。我将提出另一种“自作聪明”解决方案......!
  • 顶点颜色也可以工作,可以使用脚本轻松更新它们和/或在着色器中修改
  • @JoeBlow 我用聚光灯
猜你喜欢
  • 2013-10-22
  • 2014-11-08
  • 2016-08-05
  • 1970-01-01
  • 1970-01-01
  • 2021-06-10
  • 1970-01-01
  • 2010-12-07
  • 2012-08-27
相关资源
最近更新 更多