电影纹理(Movie Texture)

注意:这只是专业/高级功能。

桌面

电影纹理是从视频文件创建的动画纹理。通过将视频文件置于工程的“资源”(Assets) 文件夹 中,可以导入视频,以便按照与使用普通纹理完全相同的方法使用它。

视频文件通过 Apple QuickTime 导入。支持的文件类型是 QuickTime 安装可以播放的类型(通常为 .mov.mpg.mpeg.mp4.avi.asf)。在 Windows 上,电影导入需要安装 Quicktime(此处下载)。

属性

电影纹理检视器 (Inspector) 非常类似于普通纹理检视器 (Inspector)。


视频文件在 Unity 中是电影纹理
属性:功能:
各向异性等级 (Aniso Level)在一个陡峭的角度观看纹理时提高纹理的质量。适用于地板和地面纹理
过滤模式 (Filtering Mode)选择纹理经三维变换拉伸时的过滤方式
循环 (Loop)如果启用,则电影将在完成播放后循环
质量 (Quality)Ogg Theora 视频文件的压缩率。较高的值意味着较高的质量,但是文件较大

详细信息

在将视频文件添加到工程时,它会自动导入并转换为 Ogg Theora 格式。电影纹理导入之后,便可以将其附加到任何游戏对象 (GameObject) 材质上,就如同普通纹理一样。

播放电影

电影纹理不会在游戏开始运行时自动播放。必须使用短脚本告知它何时播放。

//此行代码将使电影纹理开始播放
renderer.material.mainTexture.Play();

附加以下脚本可在按下空格键时切换电影播放:

function Update () {
	if (Input.GetButtonDown ("Jump")) {
		if (renderer.material.mainTexture.isPlaying) {
			renderer.material.mainTexture.Pause();
		}
		else {
			renderer.material.mainTexture.Play();
		}
	}
}

有关播放电影纹理的更多信息,请参阅电影纹理脚本参考页面

电影音频

导入电影纹理时,还会导入视频附带的音频轨道。此音频显示为电影纹理的音频片段 (AudioClip) 子级。


视频的音频轨道在工程视图 (Project View) 中显示为电影纹理的子级

要播放此音频,必须将音频片段 (Audio Clip) 附加到游戏对象 (GameObject),如同任何其他音频片段 (Audio Clip) 一样。将音频片段 (Audio Clip) 从“工程视图”(Project View) 拖动到场景或“层级视图”(Hierarchy View) 中的任何游戏对象 (GameObject) 上。通常,这是显示电影的同一个游戏对象 (GameObject)。然后使用 audio.Play() 使电影的音频轨道随其视频一起播放。

iOS

iOS 上不支持电影纹理。而是使用 Handheld.PlayFullScreenMovie 提供 全屏流式播放。

需要将视频保存在位于“工程”(Project) 目录中的流资源 (StreamingAssets) 文件夹内。

Unity iOS 支持可在 iOS 设备上正确播放的任何电影文件类型,即文件扩展名为 .mov.mp4.mpv、和 .3gp ,并使用以下压缩标准之一:

  • H.264 基线配置文件级别 3.0 视频
  • MPEG-4 第 2 部分视频

有关支持的压缩标准的更多信息,请参阅 iPhone SDKMPMoviePlayerController 类参考

调用 iPhoneUtils.PlayMovieiPhoneUtils.PlayMovieURL 之后,屏幕会立即从当前内容淡变为指定背景颜色。电影可能需要一段时间才能准备好进行播放,不过同时,播放器将继续显示背景颜色,还可能会显示进度指示器以便让用户知道电影正在加载。播放完成后,屏幕将淡变回您的内容。

视频播放器无法在播放视频期间切换为静音

如上所述,视频文件使用 Apple 的嵌入式播放器(自 SDK 3.2 和 iPhone OS 3.1.2 及更早版本)进行播放。其中包含一个会阻止 Unity 切换为静音的 bug。

视频播放器不考虑设备方向

Apple 视频播放器和 iPhone SDK 未提供 调整视频方向的方法。一个常用方案是在采用横向和纵向方向手动创建各个电影的两个副本。随后,可以在播放之前确定设备方向,从而可以选择正确的电影版本。

安卓 (Android)

安卓 (Android) 上不支持电影纹理。而是使用Handheld.PlayFullScreenMovie 提供 全屏流式播放。

需要将视频保存在位于“工程”(Project)“ 目录中的流资源 (StreamingAssets) 文件夹内。

Unity 安卓 (Android) 支持安卓 (Android) 支持的任何电影文件类型(即文件扩展名为 .mp4.3gp),并使用使用以下压缩标准之一:

  • H.263
  • H.264 AVC
  • MPEG-4 SP

但是,设备供应商致力于扩充此列表,因此一些安卓 (Android) 设备能够播放列出格式之外的其他格式,如 HD 视频。

有关支持的压缩标准的更多信息,请参阅安卓 (Android) SDK 核心媒体格式文档

调用 iPhoneUtils.PlayMovieiPhoneUtils.PlayMovieURL 之后,屏幕会立即从当前内容淡变为指定背景颜色。电影可能需要一段时间才能准备好进行播放。与此同时,播放器将继续显示背景颜色,还可能会显示进度指示器以便让用户了解电影正在加载。播放完成后,屏幕将淡变回您的内容。

Page last updated: 2013-06-21