Unity 项目HTCvive中 PPT播放的实现
設(shè)置一個canvas面板,用來存放之后需要觸發(fā)的ui組件。
ppt是通過image圖片的改變來實(shí)現(xiàn)的。
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");} }設(shè)置幾個方法,分別用于button的出發(fā),圖片點(diǎn)擊的觸發(fā)。
在射線進(jìn)入button,點(diǎn)擊button,退出button的時候,分別調(diào)用各個方法。
在射線照到指到的時候 執(zhí)行OnEnterButtor,將text設(shè)置為制定的字,射線離開時,執(zhí)行OnExitButtor,將text至為空。
當(dāng)點(diǎn)擊時,執(zhí)行show方法,通過設(shè)定的變量panel,來決定將哪個panel面板設(shè)為setactive。
設(shè)定一個sprite精靈體的數(shù)組,用來存ppt圖片,在panel下面設(shè)定一個image子物體,當(dāng)在image上面點(diǎn)擊觸發(fā),執(zhí)行next方法,每次點(diǎn)擊的時候,遞加current值,當(dāng)current值到數(shù)組的長度-1時,即數(shù)組中最后一張圖片時,將其至為0,從頭開始循環(huán)。
為了避免在外部修改current數(shù)值并且設(shè)置為public屬性,在外部函數(shù)中可以調(diào)用到,使用了set get這種函數(shù)形式,通過private的變量值為current賦值。
最后,當(dāng)點(diǎn)擊close圖片的時候,執(zhí)行close方法,將所在的面板setactive設(shè)置為false。
總結(jié)
以上是生活随笔為你收集整理的Unity 项目HTCvive中 PPT播放的实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab实现水塔水流量问题
- 下一篇: 开发者不讲武德之后,谁为开源付费“买单”