所以我有一个从Blender导入的网格曲线。我想要做的是在曲线上(固定距离)放置单个点,然后根据特定数字对它们进行着色。
例如,假设数字1000是红色而数字10是蓝色(基于颜色渐变)。这些数字实时更新,所以我希望我的颜色能够实时更新。我不知道如何解决这个问题。我查了一些想法但找不到任何有用的东西。
谢谢。
答案 0 :(得分:2)
坏消息,这并不容易。
Unity是一个游戏引擎 - 它与您所知道的那类问题无关?
我相信唯一真正的解决方案是在着色器级别执行。
如您所知,着色器本身就是一个完整的工程领域。我建议,只是谷歌之类的东西,比如“Unity3d颜色渐变,着色器”。
例如,
http://answers.unity3d.com/questions/1108472/3-color-linear-gradient-shader.html
你可以想象的一件事。使绳子变白。 应用灯光!因此,彩色窄光束灯或小心放置的漫射灯。也许与照明层相结合。它可以工作,享受并不是不可思议的!
注意 - 实际上OP只是使用彩色灯解决了问题 - 在某些情况下是解决方案。
请注意,GL api在这里也很完美。
user2299169在上述评论中提供了一个优秀的链接:
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。