首页 文章

Sphere不会在Unity for Google Cardboard中呈现

提问于
浏览
0

我正在关注如何在 Unity 中实施360度视频的this博客文章 . 最后,我使用 ffmpeg 按照建议将视频拆分为单独的帧 . 我还将第一帧设置为每个球体上每种材质的纹理 . 最终结果如下所示

bad sphere

但最大的问题是,一旦我在手机上构建并运行它或者只是播放场景,球体就无法渲染 . 这可能是纹理是第一帧造成的吗?还是我犯了其他一些错误?非常感谢 .

1 回答

  • 0

    Unity中的电影通常在对象上呈现为纹理 . 在移动设备上,问题变成设备只想在视频播放器中显示视频,因此不支持Unity类MovieTexture .

    我正在成功避免这种情况,并使用Unity资源商店中名为Easy Movie Texture的Unity插件在球体内部成功渲染360视频 .

    在Mac上工作,这就是我所做的:

    • 从Unity资源商店下载Easy Movie Texture插件

    • 从Assets / EasyMovieTexture / Scene打开Demo Sphere演示场景

    • 为项目创建一个新的(空)预制件,并将Sphere GameObject从Demo Sphere场景拖动到预制件上 .

    • 重新打开Cardboard场景并将新的videosphere预制件拖动到层次结构中 .

    • 在Quicktime中打开源360视频

    • 文件 - >导出 - > 720p

    • 将文件扩展名从'.mov'更改为'.mp4'

    • 将新的mp4文件拖到项目的Assets / Streaming Assets目录中 . 注意:不要通过菜单系统导入,因为这会强制Unity转换为OGG .

    • 在您的videosphere GameObject的"Media Player Ctrl"脚本组件上,找到"Str_File_Name"字段并提供新导出的视频文件的FULL文件名 . 确保将扩展名包含在字符串"mymovie.mp4"中 .

    很确定这就是一切 . 希望它可以帮助其他人坚持这个问题 .

    最后请注意,视频只会在设备上呈现 . 在编辑器中,您只会在球体上看到白色纹理 . 您必须发布到设备才能看到令人敬畏的360视频 .

相关问题