环境:
Unity 2019.4.0f1
CubismSdkForUnity-4-r.1
这篇文章能让模型被点击设定部位后做出反应
就像这样(这个是我的成品展示)
这个功能不能依赖官方脚本了,嘚我们亲手操作!
若没有学习Audio Mouth Input和Motion Controller的同学请回到目录!
开始
这篇文章需要用到的三个组件就是上面说的那两个还有一个RayCaster(射线投射器)
备注:其实也可以不用 直接用getMouseButton也行 但是这不太好 因为游戏中可能还会涉及到其他操作 这里要进行分开
直接丢在模型根部
然后到模型中的Drawables那里找到想添加射线判定的网格
加一个Raycasterable脚本就行了
下拉框中两个参数
一个是Bounding Box (边界框)另一个是Triangle (三角形)
我们不管他 直接选BoundingBox
然后直接创建一个空物体加一些jio本来管理我们的小姐姐
一个AudioSource 然后新建一个Manager脚本
在这里由于是成品我顺手做了闲置通道和音量加减的效果
请认真阅读源码后自行使用
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Live2D.Cubism.Core;
using Live2D.Cubism.Framework.Raycasting;
using Live2D.Cubism.Framework.Motion;
public class Manager : MonoBehaviour
{
//拿到模型
[SerializeField]
public CubismModel Model;
//附在模型根部的Raycaster
private CubismRaycaster Raycaster {
get; set; }
//拿到射线结果
private CubismRaycastHit[] Results {
get; set; }
//动画控制器
public CubismMotionController _CubismMotionController;
//动画数组
public AnimationClip[] _AnimationClips;
public AnimationClip[] _AnimationClips_Idle;
//对话框
public UnityEngine.UI.Text _ShowText;
public UnityEngine.UI.Image _ShowImage