Lazy Nezumi Pro 的脚本教程(八)

391 阅读2分钟

本文已参与掘金创作者训练营第三期「高产更文」赛道,详情查看:掘力计划|创作者训练营第三期正在进行,「写」出个人影响力

栗子6 —— 书法

在书写书法或文字时,必须严格控制笔触,使线条具有风格和个性。这里有一个脚本,可以根据你的笔的方向来调整你的线条粗细。它可以让用户设置两个压力缩放系数,一个用于笔主要向上移动的时候,以及一个用于笔主要向下移动的时候。这让用户能够专注于笔的移动,而脚本则能够帮助控制 压力/粗细 方面。

ydir = nx * 0.5 + 0.5; 
op = p * mix(minScale, maxScale, ydir);

这个脚本背后的想法是根据线条的方向缩放压力。为了做到这一点,我们看直线的当前法向量(nx, ny)。因为法向量与直线方向向量正交,ny告诉我们当前直线方向有多少是水平的,nx告诉我们有多少是垂直的。在这种情况下,我们想根据垂直运动来调节压力,所以我们将使用nx

法向量是一个单位向量(长度为1),所以它的每个坐标都在 [-1..1] 范围内。脚本所做的第一件事是将这个范围重新映射为 [0..1] ,并将结果存储在 ydir 变量中。然后,通过混合 minScalemaxScale ,使用这个变量来计算最终的压力比例因子。

设置 minScale 参数范围为 [0..1] 和 maxScale 到 [1..2] 。下面是一些用 minScale 设置为0.75 和 maxScale 设置为 1.3 绘制的线。在这个预设中也使用了平滑,给线条一些流畅的效果。您可以看到,这个脚本甚至可以给行提供一种 3d 效果!

image.png

现在,我们不再总是使用垂直轴,而是添加两个参数让用户设置,它们分别是会被应用在压力调制效果上的轴和方向:

dir = axis ? nx : ny; 
dir = direction ? dir : -dir; 
dir = dir * 0.5 + 0.5; 
op = p * mix(minScale, maxScale, dir);

设置轴和方向的参数范围为 [0..1] 。现在,如果你将 axis 设置为0,效果将会应用到直线的水平部分。 direction 参数可以用来反转 minScalemaxScale 应用的方向

栗子7 —— 抖动线条

image.png

image.png

image.png

image.png

image.png

下回分解

栗子8 —— 城市风光

223333.gif

image.png

下回分解

栗子9 —— 闪电

2233333.gif

下回分解

栗子10 —— 信号错误识别

image.png

下回分解

栗子11 —— 调试

image.png

下回分解