Planeの表面などで動画再生してみます。
PlaneオブジェクトにVideo Playerコンポーネントを追加します。
Render ModeをMaterial Overrideにします。
Video Clipに動画のアセットをドラッグアンドドロップします。
無料の動画素材サイトなどから動画を入手して、Import New Asset…からUnityにインポートしています。
Play On Awakeにチェックが入っていると、ゲームが始まった時に、冒頭のようにPlaneの表面に動画が再生されます。
Render ModeをCamera Far Planeに変えて、CameraにFPSコントローラのカメラのついた頭のオブジェクトをアタッチしてみます。
すると、カメラの遠面に動画が表示されました。
動画の再生・停止をスクリプトで制御する
PlaneのPlay On Awakeのチェックを外し、Render ModeをMaterial Overrideに戻しました。
Planeに新規スクリプトを追加します。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Video;
public class VideoScript : MonoBehaviour
{
VideoPlayer video;
// Start is called before the first frame update
void Start()
{
video = GetComponent<VideoPlayer>();
}
// Update is called once per frame
void Update()
{
if(Input.GetKeyDown(KeyCode.E))
{
if(video.isPlaying)
{
video.Pause(); // 動画を停止
}
else
{
video.Play(); // 動画を再生
}
}
}
}
再生中かどうかは、isPlayingの値でわかります。それがtrueのときはPause()で停止、FalseのときはPlay()で再生します。
これでEキーを押すと、動画の再生・停止ができるようになります。