実現したいこと
Unityで対象のパス以下の動画ファイルを一覧表示する機能を実装しています。
1動画情報を表示するためにRawImageとvideoplayerを追加したprefabを作成し、
スクリプト側でvideo playerのurlに対象のパスを渡しています。
別々の動画のurlを指定していますが全て同じ動画として表示されていて困っています。
どなたかご教授お願い致します。
発生している問題
各動画ごとに上記のprefabをInstantiateでクローンしていますが、その都度別のurlを渡してもすべて同じ動画になってしまいます。
該当のソースコード
C#
1public class VideoPlayerManager : SingletonMonoBehaviour<VideoPlayerManager> 2{ 3 public GameObject VideoListTemplate;//Raw ImageとVideo Playerのコンポーネントを追加したPrefabです 4 public GameObject VideoListArea;//動画情報を追加する対象のオブジェクトです。 5 // Start is called before the first frame update 6 void Start() 7 { 8 DirectoryInfo dir = new DirectoryInfo("Assets/Resources/Videos/"); 9 FileInfo[] info = dir.GetFiles("*.mp4"); 10 info.ToList<FileInfo>().ForEach(x=> { 11 var videoInfo = getVideoInfo(x.Name); 12 var videoList = Instantiate(VideoListTemplate, VideoListArea.transform); 13 videoList.transform.Find("Thumbnail").GetComponent<VideoPlayer>().url = x.FullName; 14 videoList.transform.Find("Label Area").transform.Find("Tool ID").GetComponent<Text>().text = videoInfo[(int)VideoInfoEnum.ToolID]; 15 videoList.transform.Find("Label Area").transform.Find("ID").GetComponent<Text>().text = "ID" + videoInfo[(int)VideoInfoEnum.ID]; 16 videoList.transform.Find("Label Area").transform.Find("Date").GetComponent<Text>().text = "Date:" + x.CreationTime.ToString(); 17 }); 18 } 19 string[] getVideoInfo(string videoFileName) { 20 return videoFileName.Replace(".mp4","").Split('_'); 21 } 22}
補足情報(FW/ツールのバージョンなど)
Unity:2019.3.15f
Visual Studio:Professional 2019
回答1件
あなたの回答
tips
プレビュー