0
我使用的是Unity 5和C#,我希望在運行時從磁盤上的任何位置加載影片,而不是從Resources文件夾加載。在Unity中從磁盤加載電影5
例如,這可以使用Texture2D類型中的.LoadImage(bytes)方法處理常規圖像紋理,但似乎沒有與MovieTexture等效。
該代碼顯示瞭如何從資源文件夾中執行該操作,但是如何修改它以從磁盤加載?
感謝
public void loadVideo (GameObject container, string video)
{
// Load MovieTexture from Resources Folder
MovieTexture mat = (MovieTexture)Resources.Load(Path.GetFileNameWithoutExtension(video), typeof(MovieTexture));
MeshRenderer ren = container.GetComponent<MeshRenderer>();
ren.material.mainTexture = mat;
mat.Play();
}
謝謝我會試試這個 – AlexS
很好,我很高興我發佈我不認爲我會想出解決方案。這可以與實時視頻流一起工作 – AlexS
不確定視頻流。我從某個人那裏聽說它只能使用.ogg擴展名。所以,也許將視頻文件轉換爲ogg,這可能會起作用。我假設你使用的是Unity而不是專業版,所以解決你的問題的方法是學習C++,然後編寫一個將視頻解碼爲幀的插件。通過網絡發送這些幀(視頻)。您需要了解C++網絡套接字(TCP/UDP)。您也可以使用C#執行此操作,但您需要使用Unity Pro版本才能使用C#套接字(如TCPListener)。你不需要爲你自己的C++插件提供一個專業版。 – Programmer