private KrLive2DLipSync m_pLipSync = null; // process for lip sync //::::::::::::::::::::::::::::::::::::::::::::::::::::: // UNITY FUNCTION //::::::::::::::::::::::::::::::::::::::::::::::::::::: // @Brief : Update void Update() { // Update motion parameter m_pIdleMotionManager.updateParam(m_pLive2dModel); m_pMotionManager.updateParam(m_pLive2dModel); LipSync(); m_pLive2dModel.update(); // Render type is Live2D.L2D_RENDER_DRAW_MESH if (m_pLive2dModel.getRenderMode() == Live2D.L2D_RENDER_DRAW_MESH) { m_pLive2dModel.draw(); } }
void OnRenderObject() { if (live2DModel == null) { load(); } if (live2DModel.getRenderMode() == Live2D.L2D_RENDER_DRAW_MESH_NOW) { live2DModel.draw(); } }
void OnRenderObject() { if (live2DModel == null) { return; } if ((Camera.current.cullingMask & gameObject.layer) > 0) { if (live2DModel.getRenderMode() == Live2D.L2D_RENDER_DRAW_MESH_NOW) { live2DModel.draw(); } } }
void Update() { if (live2DModel == null) { return; } if (auto) { if (link_animator) { AnimatorStateInfo state = GetComponent <Animator>().GetCurrentAnimatorStateInfo(0); timer = state.length * state.normalizedTime; //timer = (float)GetComponent<Animator>().GetTime(); UtSystem.setUserTimeMSec((long)(timer * 1000.0f)); } else { delta_timer = (Time.time - temp_real_timer) * speed; timer += delta_timer; UtSystem.setUserTimeMSec((long)(timer * 1000.0f)); temp_real_timer = Time.time; } } bool motion_chenged = false; if (motionFile == null) { motion = null; temp_motionFile_name = ""; } else { if (temp_motionFile_name != motionFile.name) { motion = Live2DMotion.loadMotion(motionFile.bytes); motion_chenged = true; } temp_motionFile_name = motionFile.name; } if (live2DModel.getLayer() != gameObject.layer) { live2DModel.setLayer(gameObject.layer); } live2DModel.setMatrix(transform.localToWorldMatrix * live2DCanvasPos); if (!Application.isPlaying) { live2DModel.update(); return; } if (motion != null) { motion.setLoop(true); motion.setFadeIn(0); motion.setFadeOut(0); if (motionMgr.isFinished()) { motionMgr.startMotion(motion); } if (motion_chenged) { motionMgr.stopAllMotions(); motionMgr.startMotion(motion); } motionMgr.updateParam(live2DModel); } else { motionMgr.stopAllMotions(); if (motionFile != null) { motion = Live2DMotion.loadMotion(motionFile.bytes); } } live2DModel.update(); if (live2DModel.getRenderMode() == Live2D.L2D_RENDER_DRAW_MESH) { Render(); } }