//:::::::::::::::::::::::::::::::::::::::::::::::::::::
 // PRIVATE FUNCTION
 //:::::::::::::::::::::::::::::::::::::::::::::::::::::
 // @Brief : Lip sync
 private void LipSync()
 {
     if (m_pLipSync != null)
     {
         m_pLipSync.Update();
         float fValue = m_pLipSync.GetValue();
         if (m_pLipSync.IsEnd())
         {
             m_pLipSync = null;
         }
         // Lip sync
         m_pLive2dModel.addToParamFloat("PARAM_MOUTH_OPEN_Y", fValue, 1);
     }
 }
 // @Brief : Play lip sync
 // @Param : fTalkingTime    => Talking time
 //        : pTalkingWord    => Talking word
 public void PlayLipSync(float fTalkingTime, string pTalkingWord)
 {
     m_pLipSync = new KrLive2DLipSyncString(fTalkingTime, pTalkingWord);
 }
 // @Brief : Play lip sync
 // @Param : pVoice  => Audio source
 public void PlayLipSync(KrAudioSource pVoice)
 {
     m_pLipSync = new KrLive2DLipSyncAudio(pVoice);
 }