目标:使用按键切换图片,并附上汉字转语音
一、按键切换图片
在unity中有多种显示图片的方法,我们这里使用的image组件,在场景中右键新建UI ---> Image,并点击转态栏的2D标识,这样就能从3D视角转成2D平面视角,
在Assets中新建picture目录,将需要显示的图片都放进picture目录,并将属性由默认的default设置为Sprite(2D and UI),因为Image组件只识别这种属性的图片。
编写脚本:
public Sprite[] sprites;
public Image carouseImage;
然后将图片都扔到sprites中
image.sprite = sprites[idx % sprites.Length];
其中idx用于每次点击或者按键的自加。
二、文字转语音TTS
主要用第三方插件RTVoice,具体用法我也是参考 unity android 语音识别 unity 文字转语音_mob6454cc77db30的技术博客_51CTO博客
然后结合按键切换,就可以图片在切换时搭配上语音介绍。
using Crosstales.RTVoice.Tool;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class test_speech : MonoBehaviour
{
public SpeechText speechText;
public Sprite[] sprites;
public Image image;
string[] readContent = {
"老橡树",
"男孩的朋友是一棵老橡树,每次出海,他都会对老橡树说,再见,我去钓鱼了",
"一天,男孩在蓝色的大海上迷失了方向",
"老橡树用力招手,我在这儿,可男孩只看得见蓝蓝的大海 "
};
public int idx = 0;
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.I) || Input.GetKeyDown(KeyCode.Space))
{
image.sprite = sprites[idx % sprites.Length];
speechText.Text = readContent[idx % readContent.Length];
speechText.Speak();
idx++;
}
}
}