副标题#e#
X3D对多媒体的支持是通过这三个节点来实现的:AudioClip(音频数据节点)、Sound(音频播放节点)以及MovieTexture(影像纹理节点)。
在本讲中,我们先来简朴地先容这三个节点的属性,然后举一些例子别离说明这些节点的利用及音频和视频的播放。
一、音频和视频节点
1、AudioClip(音频数据)节点
AudioClip 一般作为Sound的子节点,分其提供音频数据,其主要属性有:
description — 此节点显示的提示文本。
url — 声音文件的位置。该文件凡是是 .wav 名目或 .midi 名目,其它名目不必然支持。
loop — 是否轮回播放。当loop=True时轮回,当loop=False只运行一次。默认值为False。
pitch — 加速或减慢播放声音的相乘因子(譬喻:2.0意味着以两倍的速度播放),只有正值是有效的。默认值为1。
startTime — 声音开始播放的时间(秒数)。默认值为0。
stopTime — 竣事播放声音的时间(秒数)。默认值为0。
需要说明的是:假如loop设为True,声音一直轮回播放直到stopTime遏制;假如loop设为False,声音一次播放到文件末端可能到达stopTime。
2、Sound(音频播放)节点
Sound 节点用于声音的回放,其主要属性有:
intensity — 声源的强度,0为最小值,1为最大值。在有些欣赏器中最大值可以高出1。默认值为1。
priority — 指作声音的优先级。若为配景音乐,则设为0。
location — 声源的坐标。默认值为[0 0 0]。
direction — 指定椭球的长轴偏向。默认值为[0 0 1]。
minFront — 声源坐标点至内椭圆球前部端点的间隔。默认值为1。
maxFront — 声源坐标点至外椭圆球前部端点的间隔。默认值为10。
minBack — 声源坐标点至内椭圆球后部端点的间隔。默认值为1。
maxBack — 声源坐标点至外椭圆球后部端点的间隔。默认值为10。
spatialize — 指作声音是作为空间点播放(True),照旧作为情况声播放(False)。默认值为True。
上述属性中所涉及到的位置干系可以用下图来暗示。
#p#副标题#e#
3、MovieTexture(影像纹理)节点
MovieTexture为指定的几许面提供影像帖图,或为Sound 节点提供声音。其主要属性如下:
url — 指定纹理文件的URL。假如指定了多个URL,则欣赏器按分列的顺序装载第一个能找到的文件。影戏纹理凡是上MPEG1,文件扩展名为.mpg。
speed — 指定影戏纹理播放速度的乘数因子。值1暗示以正常速度播放;值2暗示以双倍的速度播放;负值暗示倒放。默认值为1。
loop — 指明影戏是否轮回播放。当loop=True时轮回,当loop=False只运行一次。默认值为False。
startTime — 指定影戏开始播放的时间。默认值为0。
stopTime — 指定影戏遏制播放的时间。默认值为0。
repeatS — 指明在s程度偏向反复纹理。True表白是反复,False表白将锁定纹理坐标。默认值为True。
repeatT — 指明在t垂直偏向反复纹理。True表白是反复,False表白将锁定纹理坐标。默认值为True。
说明:
(1) MovieTexture节点指定了一幅影戏纹理图和节制播放及纹理映射的参数。纹理图是在程度轴(s)和垂直轴(t)均从0到1延展的二维图像。影戏纹理是由Appearance节点的texture域或Sound节点的域(只作为一个声源)指定。
(2) 假如speed的值是正的,影戏从0帧开始播放;假如speed的值是负的,则从最后一帧开始播放。假如speed为0,MovieTexture将总显示第0帧。当一个影戏纹理变为非激活状态时,相应变革的那一刻的帧将保持为物体上的当前纹理。
(3) 若要同时播放音频和视频,最好先利用DEF界说一个纹理,然后利用USE作为Sound节点的源,这样可以节减内存。
二、示例
示例1:
个中,winlogon.wav文件应和代码文件同在一个文件夹中。编译预览后可以听到播放的声音,并且是轮回播放。
示例2:
功效如下所示:
需要说明的是:对付X3D的多媒体结果,BS插件做了许多优化,使得不需要Sound节点的支持也可以在立体的外貌长举办影像播放,并且也有声音的输出。事实上,X3D更为出色的处所是动画和交互的支持。在下一讲中,我们将接头X3D的动画结果。