【不负责翻译】msToonCoordinator by ましまし

※本文对原文的翻译与转载已经过原作者ましまし(twi @Mashimashi_mmd)许可(见动态)。尽力但依然不保证百分之百的翻译准确,仅供参考,具体内容依然以日文原版为准。
原作者ましまし的博客原地址:https://note.com/mashimashi_note/n/na1bc7c72e511#f1h5E(原作者在此博客内配布MME 无需梯/子)
关于对本文翻译内容玩文字游戏、钻空子,从而违反原文使用规约的行为,本人概不负责。
※非原文部分会使用灰色字色。加粗/变色与字号大小会几乎忠实于原文。图片均为原作者所做。
PMXe相关名词以Emil制作的“多功能信息处理与汉化插件”中的文本为准。
对个别词的理解有一定的主观成分,欢迎评论区理性讨论。
※请勿使用本文章内任何文本做个人参考以外的其他用途,包括但不限于用于汉化文本,二次上传至公共网络等。

msToonCoordinator
本文包含MME用Toon系PostEffect「msToonCoordinator」的配布与解说。
目录
介绍视频
数据配布
msToonCoordinator(以下简称msTC)是?
MSTC的使用流程
最低程度的使用方法
稍微深层些的使用方法
大体如上
更精细的使用方法
最后
介绍视频
【MME】トゥーン系ポストエフェクト配布
(https://www.nicovideo.jp/watch/sm38631036)
数据配布
(https://note.com/mashimashi_note/n/na1bc7c72e511#f1h5E)无需梯/子
更新履历:
v1.1
■修正了在拖拽载入default.vmd时MMD闪退的问题。使用v1.1也会闪退的话,请在MMD的[文件]栏下的[导入动作数据]选项载入vmd文件。
■删除了Edge的参数注释下的「G通道:轮廓色的出现难易度」说明。实际上并没有使用G通道。我错了。如果希望模型的一部分不出现轮廓线,MMD标准轮廓线可以使用PmxEditor的顶点编辑调整轮廓线倍率,使用Croquis则可在EdgeStrength下使用贴图进行指定。
致谢
此配布数据是在そぼろ的基礎エフェクトセット Ver.3.0的基础上制作而成的。以及,此M为「与其他MME的并用」为使用前提的MME。在此向以そぼろ为首的各MME的配布者进行诚挚的感谢。
msToonCoordinator(以下简称msTC)是?
是将其他MME的结果统一进行Toon化的MME。
msTC自身只拥有「改变颜色」的功能。至于该改变哪里的颜色,则会由其他的MME得来。例如阴影部分是由ExcellentShadow、轮廓线是由Croquis来判定。
msTC可以由很多MME来指定每个部分的颜色。例如,阴影部分除去ExcellentShadow,也可以由SvSSAO和ImSSAO指定。光源系的PostPointLight也可以识别,而且甚至可以通过贴图直接告诉MME「这里容易出现阴影哦」。最重要的是,可以同时使用以上方式指定阴影并进行操作,正是此MME的特征。SubLight和轮廓线也当然同理。
msTC正是这样处于MMD和各个MME之间,来呈现出被精妙控制的Toon画面。
然而,使用此MME需要一定程度的MME相关知识。能初步上手需要中等熟悉MME,能灵活使用则需要高度熟悉到能够自己改动各个MME。
写给懂的人:
msTC是将各个RenderTarget的RGB值作为遮罩进行使用,并在阈值以上/以下将阴影、高光、轮廓线等的颜色覆盖于画面的MME。这是在CG动画和游戏领域经常会被使用的那个手法。
msTC的使用流程
msTC在最低限度下,可以只载入Shade.x,Edge.x,ExcellentShadow.x,和控制器(msToonCoordinatorController.pmx)并使用。
首先,使用各种MME在msTC_ShadeRT通道下描绘高光与阴影所在的区域,在msTC_SublightRT下则是副光源(类似追加光源),在msTC_Edge_RT下则是轮廓线。在此基础上,Shade.x与Edge.x将会为高光、阴影、副光源、轮廓线赋予颜色。各部分的颜色可以在控制器下操作。
—————— Base色 ——————
在绘制顺序中,在Shade.x之前的(包括“编辑附件”中.x文件间的顺序和“模型绘制顺序”中.pmx与.x间的描绘顺序 前=文件名罗列时的上=实际画面里的下/会被遮盖)均为作为基准的Base色(有光照的部分)。msTC将以Base色为基础给高光和阴影赋予颜色。Base色无法在控制器内调整,所以请用MMD标准光源颜色、模型贴图或其他MME进行调整。

上图基本为「エフェクト割当」のmain通道下的结果。直接改造模型贴图,使用SimplePaint_EgeOff.fx或单色化Shader等,将模型处理为平涂风格会比较好。PostEyeAlpha等也应放在Shade.x的描绘顺序之前。
(这效果图 好看吗 ましまし様自己重新画了材质贴图的 意思就是在正式用msTC渲染前 画面状态是这个样子比较好出效果)
—————— Shade.x ——————
Shade.x会参照msTC_ShadeRT通道以及msTC_SublightRT通道,为对应部分分别赋予高光、阴影、副光源1、副光源2的颜色。
首先会以msTC_ShadeRT通道的RGB值为判定标准,来赋予高光与阴影颜色。蓝色即为有光照的部分,没有蓝色的部分则为阴影。红色的部分将会保持为Base色。绿色部分则为高光。(各个通道的状态可以使用控制器下的「調整用」表情进行确认;见后文)

以ExcellentShadow为首,SSAO系等可以附上阴影的MME也可以通过在msTC_ShadeRT通道下勾选对应.x文件,使其参与进入阴影的判定。红色部分应该使用贴图指定,或者使用点光源MME绑在模型的外親也能获得很好的效果。
具体如下。
msTC_ShadeRT:
R:Base色(就是不被主光源影响)的判定程度。R越接近1.0,就越是强制使其保持为Base色。
G:高光色的判定程度。G越接近1.0,就越是强制性地赋予高光色。
B:阴影色的判定程度。B越接近0.0,就越是强制性地赋予阴影色。
(注意B的判定 越小越是阴影)
接下来则会以msTC_SublightRT通道的RGB值为基础,赋予副光源1与2的颜色。
基本是由红和绿色的光来判定上色部分。红色部分会赋予副光源1的颜色,绿色则为副光源2的颜色。实际上只要是红或绿就可以参与进指定范围,所以对追加光源的个数与种类都没有限制。蓝色部分则不会被高光或副光源影响。

追加光源的MME在mcTC_SublightRT通道下勾选即可参与判定。
具体如下。
msTC_SublightRT:
R:赋予为副光源1颜色的判定程度。为1.0时就会强制赋予副光源1的颜色。
G:赋予为副光源2颜色的判定程度。为1.0时就会强制赋予副光源2的颜色。
B:不判定为高光和副光源的判定程度。B越接近1.0,就越是会无视高光和副光源,只赋予Base色或阴影色。
—————— Edge.x ——————
Edge.x会参照msTC_EdgeRT通道赋予轮廓线颜色。默认载入的Edge_ON.fx会读取MMD标准的轮廓线。

黑色部分(实际判定的是R值)会赋予为轮廓线的颜色。
Croquis等MME在msTC_EdgeRT通道下勾选即可参与判定。
—————— 控制器 ——————
可以使用msToonCoordinatorController.pmx来操纵各个颜色。也提供了可以帮助进行初期设置的vmd。
基本流程为先通过各个阈值来决定高光阴影等的判定范围,再由Base色决定色相/饱和度/明度可以变化到什么程度。
具体如下。
(注:1.以下均为控制器内各表情名,在此保留原表情名以便与控制器直接对照使用。
2.对色相/饱和度/明度不理解请搜索HSV/HSL。至于到底是HSV还是HSL,他一会写明度一会写亮度天知道……我也不知道该统一成哪个……)
影・ハイライト(阴影/高光 表情栏“目”部分):
影1しきい値(影1阈值):判定为阴影的范围。
影1色相適用(影1色相赋予):判断阴影色应该多么接近「影1色相」表情指定的色相。
(注:可以理解为阴影色与Base色在色相层面的合成程度。)
影1色相(影1色相):阴影色的色相。「影1色相適用」为0.0时则不会更改阴影色相。
影1彩度(影1饱和度):阴影色的饱和度。0.0则为黑白灰,0.5则无饱和度变化,1.0则为纯色。
影1明度(影1明度):阴影色的亮度。0.0为纯黑,0.5为无阴影(Base色),1.0为纯白。
ハイ1影を無視(无视高光1):即使高光下进入阴影也会维持为高光颜色。
サブライト(副光源 表情栏“リップ”部分):
サブ1色相(副光源1色相):副光源1的色相。使用时将会不同于上述表情设置而赋予此表情的色相。
彩度与明度与影・ハイライト部分同理。
エッジ(轮廓线 表情栏“まゆ”部分):
与影・ハイライト部分同理。不会被其他部分的颜色影响。
調整用(调整用 表情栏“その他”部分):
使用表情滑杆时会按顺序显示「Base色(描绘顺序为Shade.x之前的MME和模型状态)」「msTC_ShadeRT」「msTC_SublightRT」「msTC_EdgeRT」通道的状态。想要一边看着各个通道的画面一边调整时可以使用此表情。
以及,使用AfterEffects等高级视频编辑软件的人也可以使用此表情输出各个通道的视频,并在AE上作为遮罩使用。
最低程度的使用方法
1) 在MMD内的事前准备
・载入Shade.x、Edge.x、ExcellentShadow.x
・载入msToonCoordinatorController.pmx与default.vmd
2) 在MME的「エフェクト割当」下的事前准备
・在main通道为(default)与PMX模型赋予SimplePaint_EgeOff.fx
・在main通道取消勾选ExcellentShadow.x
・在msTC_Shade通道勾选ExcellentShadow.x
→准备结束!接下来就可以使用控制器进行各种调整。
稍微深层些的使用方法
在各个msTC_〇〇通道下分配fx文件
MME的Shade、Sublight、Edge文件夹有着可以调整参数的fx文件。可以做到强制指定为阴影或高光判定,也可以使用贴图的RGB通道进行指定。
因为只是将指定贴图按照模型UV附在模型上,所以贴图的RGB的功能基本和各通道下的RGB功能同理。不过,只有Shade的B是反转的,即贴图内蓝色的部分反而会强制指定为阴影色。
在msTC_Shade通道下,ExcellentShadow所指定的阴影范围与贴图的B值为乘算关系。再加上加算关系的贴图R值会最终决定阴影的量,所以通过调整B与R的值就可以控制阴影的出现难易度。
追加各种各样的MME
基本流程为,将想要参与msTC判定的MME在main通道取消勾选,再在对应的msTC_〇〇通道勾选上即可。
大多数的MME,特别是可以使用RGB操作的MME应该都可以使用。SSAO系、追加光源系、轮廓线描绘系MME自然可以使用,而将轮廓光系MME的光照部分在阴影色范围内进行消除,将WorkingFloor系(的着地阴影)也使用进msTC等等,任君想象。至于SSAO这样会对RGB全部进行乘算的MME,改造为只乘算B通道可能会更方便使用。
大体如上
虽然只是潦草的草稿,但总之想要传达在各个通道下通过RGB操作MME的意思。
msToonCoordinator,请务必用它来玩玩看。
更精细的使用方法
接下来是小Tips一样的部分。有兴趣的人们如果能读读的话非常荣幸
关闭MMD的抗锯齿,并用2倍分辨率输出
(注:艺高人胆大,好孩子适当尝试即可)
由于此MME是使用阈值计算的,所以是以关闭MMD抗锯齿为前提制作的。虽然开启抗锯齿也没有什么大问题,但轮廓线附近可能会有些奇怪。如果想在MMD开启抗锯齿的情况下使用,请将Shade.fx与Edge.fx开头(第13行)前的斜杠删除。
关闭抗锯齿时当然画面会变得很不平滑,所以为了让画面平滑,可以以长宽各2倍的分辨率输出原片,再后期恢复回原大小(并且如果有什么抗锯齿MME/后期处理的话更好)。如果想要制作FullHD(1920x1080)的视频,则应在MMD内输出4K(3840x2160)分辨率的视频。
将输出尺寸调为2倍后轮廓线和MME都会描绘地更加漂亮,所以十分推荐。然而Croquis的粗细会有变化,Diffusion的扩散范围等也会变窄,请注意调整这些MME。
不使用纯黑白灰,不将黑白灰与彩色混合
个人在更改饱和度的表情下,如果原本颜色就是黑白灰则会注意不去更改饱和度。因为色相值不好确定,且在动画等中几乎不使用纯黑白灰。
只是,MMD用模型内经常能遇到使用黑白灰的情况。特别是黑白灰与彩色相邻还交互出现时,例如白色的衬衫但阴影带有一点淡蓝色的情况,如果动了饱和度,则会让黑白灰和彩色之间更加分明从而产生不统一感。
但哪怕是单色,Base色如果是黑白灰的话,阴影色也是黑白灰就会让画面看上去缺乏色彩点缀,所以哪怕是白色的衬衫也尽量加入一些蓝色作为对策的话,会有更好的感觉。
最后
感谢您阅读到最后。如果能成为您制作作品时的帮助则荣幸之至。