【问题标题】:Movie file and audio file in Unity3dUnity3d中的电影文件和音频文件
【发布时间】:2015-10-31 02:16:35
【问题描述】:

我对 Unity 中的 MovieTexture 有疑问: 我想将 Unity 中的电影和音频文件加载到同一个游戏对象上(不是同时)。 所以,我必须区分音频和视频文件,但我没有让它工作。这是我想做的:

MovieTexture movieTexture;
AudioSource audio = gameObject.GetComponent<AudioSource>();
WWW file = new WWW(@"file:///"+pathToFile); //example.mp4 or example.ogg
if(movie)
{
    movieTexture = file.movie;
    gameObject.GetComponent<Renderer>().material.mainTexture = movieTexture;
    audio.clip = movieTexture.audioClip;
    movieTexture.Play();
    audio.Play();
}
if(audio)
{
    audio.clip = file.audioClip;
    audio.Play()
}

我该怎么做?

我正在使用 Unity 5.2 个人版。

编辑:我尝试了这些建议,但无论我做什么,它仍然无法正常工作。

【问题讨论】:

    标签: c# audio unity3d mp4 ogg


    【解决方案1】:
    if(file.movie != null)
    {
        //logic for processing movie;
    }
    else if (file.audioClip !=null)
    {
        //logic for processing audio;
    }
    

    【讨论】:

    • 感谢您的回答!但是,它不起作用。 if(file.movie != null) 总是正确的,即使我只加载一个简单的 .ogg 音频文件。我看到,如果我尝试加载音频文件并将其转换为电影纹理,Unity 在movieTexture.Play(); 处崩溃并出现错误报告窗口。你知道有什么替代方法吗?
    【解决方案2】:

    这是我修复您的代码的方法。首先你检查你的WWW 对象file.movie 是否为空。如果它不为空,则意味着您已经加载了电影文件。如果为空,请检查file.audioClip 是否为空。如果它不为 null,则表示您已经加载了音频文件。

    请注意,Unity 仅支持 Ogg Theora 进行电影纹理加载 (http://docs.unity3d.com/Manual/class-MovieTexture.html)

    MovieTexture movieTexture;
    AudioSource audio = gameObject.GetComponent<AudioSource>();
    WWW file = new WWW(@"file:///" + pathToFile); //example.mp4 or example.ogg
    if(file.movie != null)
    {
        movieTexture = file.movie;
        gameObject.GetComponent<Renderer>().material.mainTexture = movieTexture;
        audio.clip = movieTexture.audioClip;
        movieTexture.Play();
        audio.Play ();
    }
    else if(file.audioClip != null)
    {
        audio.clip = file.audioClip;
        audio.Play();
    }
    

    【讨论】:

    • 感谢您的回答!但是,它不起作用。 if(file.movie != null) 总是正确的,即使我只加载一个简单的 .ogg 音频文件。我看到,如果我尝试加载音频文件并将其转换为电影纹理,Unity 在movieTexture.Play(); 处崩溃并出现错误报告窗口。你知道有什么替代方法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-12
    • 2014-07-10
    相关资源
    最近更新 更多