MMD4Mecanim(PMX对应版)Morph(表情)扩张与PlayMaker协作方法
■事前准备
Play Maker可以在Asset Store下载
■参考 关于与Play Maker的协作
眨眼
-
首先,如下设置MMD4MecanimMorphHelper。

-
打开菜单的 PlayMaker
>
PlayMaker Editor。

-
在Hierarchy中选择GameObject(東北ずん子)

-
在PlayMaker Editor中右击增加有限状态机(FSM)。

-
按住CTRL同时左键单击State,增加完成事件。

-
增加另一个State,同样按住CTRL键增加完成事件,这次在
[
FINISHED
]
的部分左键
>
用拖放的方式连接两个State状态。

-
打开状态(State)选项卡的动作浏览器(
Action
Browser
)
。

-
从一览表中选择Time
>
Wait,按下向状态添加动作
(
Add Action
To
State
)
按钮。

-
把增加活动的Finish Event设置为FINISHED。

-
将已经导入東北ずん子的MMD4MecanimMorphHelper用拖拽的方法导入PlayMaker Editor。
然后从菜单中选择Set Property。

-
将属性设为morphWeight,再将morphWeight设定为
0
。

-
在另一个State(状态),同样设置导入动作和属性。
但是,将Wait的Time设置为
0.1
,morphWeight设定为
1
。

-
当你在这种状态下播放场景时,你的角色就可以眨眼。

Speech(口型)
-
首先将MMD4MecanimSpeechHelper设置为空的状态导入模型。

-
基本上是用和眨眼一样的方法设置,不同之处有以下几点。
检测结束不是依据时间,而是用isProcessing或isAnimating属性判断音频文件而不是Morph(表情)名称
-
添加与眨眼区分开的另一组有限状态机(FSM)组件。

-
以与眨眼相同的程序设置循环状态。

-
在一侧(State
1
),添加仅等待一秒的动作。
Finish Event 设置为FINISHED

-
打开另一个状态,第一个追加变量(Bool)。
例 isSpeechProcessing

-
MMD4MecanimSpeechHelper拖动到PlayMaker Editor追加Set Property,进行以下设定。
Property speechAudioClip
speechAudioClip 想播放的声音文件
-
同样地,将MMD4MecanimSpeechHelper拖动到PlayMaker Editor,这次追加Get Property,设定如下。
Property isProcessing
Store Bool isSpeechProcessing
Every Frame 勾选
-
在动作浏览器中追加Logic
>
Bool Test,设定如下。
Bool Variable isSpeechProcessing
Is False FINISHED
Every Frame 勾选

-
在这种状态下播放场景时,角色一边眨眼一边朗读声音文件。

关于 Nora大神的MMD4Mecanim本篇的内容基本已经伪译完成了,但在MMD对Unity应用的方面,对于新手来说还有很多坑,对这方面想要了解更多的小伙伴,可以到B站关注我@LiNx2。