欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Unity 项目HTCvive中 PPT播放的实现

发布时间:2023/12/29 49 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Unity 项目HTCvive中 PPT播放的实现 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

设置一个canvas面板,用来存放之后需要触发的ui组件。

ppt是通过image图片的改变来实现的。

using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;public class RoomPanelButtons : MonoBehaviour {public Text intro;public RoomPanelPanels panels;public void OnEnterButton(string content){intro.text = content;}public void OnExitButton(){intro.text = "";}public void Disable(){gameObject.SetActive (false);}public void Show(int panel){panels.gameObject.SetActive (true);panels.Show (panel);GetComponent<Animator> ().SetTrigger ("CLOSE");} }

设置几个方法,分别用于button的出发,图片点击的触发。



在射线进入button,点击button,退出button的时候,分别调用各个方法。

在射线照到指到的时候 执行OnEnterButtor,将text设置为制定的字,射线离开时,执行OnExitButtor,将text至为空。

当点击时,执行show方法,通过设定的变量panel,来决定将哪个panel面板设为setactive。


using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;public class PPT : MonoBehaviour {public Sprite[] ppts;public Image img;private int _current;public int Current {set{_current = value;img.sprite = ppts [value];}get{return _current;}}void Start(){Current = 0;}public void Next(){if (Current == ppts.Length - 1) {Current = 0;} else {Current++;}}}

设定一个sprite精灵体的数组,用来存ppt图片,在panel下面设定一个image子物体,当在image上面点击触发,执行next方法,每次点击的时候,递加current值,当current值到数组的长度-1时,即数组中最后一张图片时,将其至为0,从头开始循环。

为了避免在外部修改current数值并且设置为public属性,在外部函数中可以调用到,使用了set get这种函数形式,通过private的变量值为current赋值。

最后,当点击close图片的时候,执行close方法,将所在的面板setactive设置为false。

总结

以上是生活随笔为你收集整理的Unity 项目HTCvive中 PPT播放的实现的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。