C# 如何在运行时更改Unity动画中像素的颜色?

C# 如何在运行时更改Unity动画中像素的颜色?,c#,animation,unity3d,2d,C#,Animation,Unity3d,2d,我在Unity做一个项目,我们有2D动画。这些动画是关于太空飞船的,其中飞船的一部分特意涂成白色 在运行时,我们希望能够将船的白色部分和仅白色部分更改为另一种颜色。我们已经能够为简单的精灵实现这一点,但一旦我们实现了动画,我们就无法在animator中访问精灵/剪辑 我们如何访问动画中的剪辑/精灵并更改像素的颜色?您应该能够基于调色板交换制作/找到颜色替换着色器。当有限的资源意味着通过改变现有精灵的颜色,您可以拥有比资源所允许的更多的精灵时,这是一种旧技术。有关所有详细信息,您可以查看。

我在Unity做一个项目,我们有2D动画。这些动画是关于太空飞船的,其中飞船的一部分特意涂成白色

在运行时,我们希望能够将船的白色部分和仅白色部分更改为另一种颜色。我们已经能够为简单的精灵实现这一点,但一旦我们实现了动画,我们就无法在animator中访问精灵/剪辑


我们如何访问动画中的剪辑/精灵并更改像素的颜色?

您应该能够基于调色板交换制作/找到颜色替换着色器。当有限的资源意味着通过改变现有精灵的颜色,您可以拥有比资源所允许的更多的精灵时,这是一种旧技术。有关所有详细信息,您可以查看。