java平滑径向梯度
所以,我尝试创建一个径向渐变(用于游戏中的静态照明)。我想到了这个:
int step = 4;
int forLen = (radius / step);
g.setColor(new Color(0, 0, 0, intensity));
for (int i = 0; i < forLen; i++)
g.fillOval(radius - i * step, radius - i * step, i * step * 2, i * step * 2);
但我得到的结果是:
我想得到一个更平滑的梯度,比如:
我试着在台阶和强度上做些调整,但是我不能得到类似上面的梯度。 做这件事的好方法是什么?? 提前谢谢
# 1 楼答案
我没有一个具体的答案,但第二张图片的外观给我的印象是,强度不是线性下降,而是指数下降
你能试着用指数函数代替线性递减函数吗?对于向外的每一步,将强度乘以一个固定数字
a
<;一,