【发布时间】:2020-08-29 23:58:32
【问题描述】:
我正在 Unity 中创建一个函数,以使用渐变填充纹理,允许水平、垂直、对角线和径向方向。前三个很简单,可以处理矩形图像,但是,我能找到的径向渐变的唯一算法取决于方形图像,如下所示:
Vector2 center = new Vector2 ( texture.width * 0.5f, texture.height * 0.5f );
for ( int y = 0; y < texture.height; y++ )
{
for ( int x = 0; x < texture.width; x++ )
{
float distanceFromCenter = Vector2.Distance ( center, new Vector2 ( x, y ) );
float t = invert ? 1 - ( 0.5f - ( distanceFromCenter / texture.width ) ) : 0.5f - ( distanceFromCenter / texture.width );
texture.SetPixel ( x, y, gradient.Evaluate ( t ) );
}
}
如何使它适用于矩形图像?
【问题讨论】: