身临其境式叙事环境的制作方法
【专利摘要】用于使用多个叙事设备提供身临其境式叙事环境的技术。每一个叙事设备可以被配置为基于故事的当前情景以及响应于刺激事件来执行一个或多个动作。这些动作包括声觉效果和视觉效果中的至少一个效果。实施例还提供了控制器设备,该控制器设备被配置为基于故事的当前情景,通过调整多个叙事设备中的每一个设备的刺激事件和效果来管理故事的重放,从而创建交互式和身临其境式叙事体验。
【专利说明】身临其境式叙事环境
[0001]相关申请的交叉引用
[0002]本申请要求于2012年9月19日提交的序列号为61/703228的美国临时专利申请的权益,通过引用将该申请的全部内容合并于此。
【技术领域】
[0003]本发明总体涉及家庭娱乐,并且更具体地涉及使用叙事设备提供身临其境式叙事环境的技术。
【背景技术】
[0004]自首次开发出视频游戏以来,计算机图形技术已经经历了很长的路。比较廉价的3D图形引擎现在在成本仅数百美元的手持视频游戏、家庭视频游戏和个人计算机硬件平台上提供接近真实场景的交互的游戏体验。这些视频游戏系统通常包括手持控制器、游戏控制器、或者集成的控制器(在手持视频游戏平台的情况下)。用户或者玩家使用控制器向视频游戏系统发送命令或者其他指令来控制视频游戏或者正在玩的其他仿真装置。例如,控制器可以设有由用户操作的操纵器(例如,操纵杆)和按钮。
[0005]虽然视频游戏可以允许用户直接与视频游戏系统交互,但这样的交互主要影响视频游戏设备(或所连接的显示器)上显示的图形描绘,而很少影响虚拟世界外的任何其他对象。也就是说,用户可以指明到视频游戏系统的输入,该输入指示用户的化身(avatar)应该执行跳跃动作,而作为响应,该视频游戏系统将显示用户的化身的跳跃。然而,这样的交互通常限于虚拟世界,而虚拟世界外的任何交互是有限的(例如,当进行特定的动作时,手持游戏设备可以振动)。
[0006]另外,多个手持游戏设备包括某一形式的相机设备,该相机设备可用于捕获物理的、真实世界的场景的图像或者系列图像。捕获的图像可以随后被显示在例如手持游戏设备的显示器上。一定的设备可以被配置为在显示图像前向捕获的图像中插入虚拟对象。另夕卜,其他设备或应用可以使得用户能够在物理场景的捕获图像内进行特定地绘制或涂抹。然而,由于这些变更只应用于物理场景的单个图像,随后捕获的来自不同方面的物理场景的图像可能并不包括用户的更改。
【发明内容】
[0007]—个实施例提供了包括多个叙事设备的系统。每一个叙事设备被配置为响应于刺激事件基于故事的当前情景来产生效果。这里,该效果是声觉效果和视觉效果中的至少一个效果。此外,针对多个叙事设备中的至少一个设备的刺激事件包括多个叙事设备所位于的物理环境中的用户动作。系统还包括控制器设备,该控制器设备被配置为基于故事的当前情景,通过调整刺激事件和多个叙事设备中的每一个设备的效果来管理故事的重放。
[0008]其他的实施例提供包括提供多个叙事设备的方法和计算机可读介质,所述多个叙事设备中的每一个叙事设备被配置为响应于刺激事件,基于故事的当前情景来产生效果,其中,该效果是声觉效果和视觉效果中的至少一个效果,并且其中针对多个叙事设备中的至少一个设备的刺激事件包括多个叙事设备所位于的物理环境中的用户动作。该方法和计算机可读介质还包括基于故事的当前情景,通过调整刺激事件和多个叙事设备中的每一个设备的效果来管理故事的重放。
【专利附图】
【附图说明】
[0009]为了能够详细理解得到以上记载的方面的方式,通过参考附图可以对以上简要总结的本发明的实施例进行更具体的描述。
[0010]然而应当注意:附图只示出了本发明的典型实施例,因此不应被认为限制了其范围,因为本发明可以容许其他同等有效的实施例。
[0011]图1是示出根据在本文中描述的一个实施例的包括多个叙事设备的叙事的环境的框图。
[0012]图2是示出根据在本文中描述的一个实施例的彼此交互以重放故事的多个叙事设备的使用实例。
[0013]图3是示出根据在本文中描述的一个实施例的叙事设备和控制器设备之间的交互的流程图。
[0014]图4是示出根据在本文中描述的一个实施例的确定多个叙事设备的流程图。
[0015]图5是示出根据在本文中描述的一个实施例的将故事映射到多个叙事设备上的流程图。
[0016]图6是示出根据在本文中描述的一个实施例的叙事设备的框图。
[0017]图7是示出根据在本文中描述的一个实施例的控制器设备的框图。
[0018]图8是示出根据在本文中描述的一个实施例的增强现实设备(augmented realitydevice)的框图。
【具体实施方式】
[0019]总的来讲,实施例提供这样的技术,这些技术使用一个或多个叙事设备创建身临其境式叙事环境(immersive storytelling environment)。更具体地,实施例可以使用各种叙事设备,其中的每一个设备能够制造某一听觉和/或视觉效果,从而为用户创建身临其境式的和交互的叙事体验。它的例子可见于图1中,该图1是示出包括多个叙事设备的叙事的环境的框图。系统100包括经由网络130互连的多个叙事的设备11(VN和控制器120。这里,每一个叙事的设备llOg—般代表能够响应某一形式的刺激和故事的当前情景而对叙事体验作出贡献的任何设备。例如,控制器120可以基于故事的当前情景利用刺激和响应信息来配置每一个叙事设备llOg。作为示例,控制器设备120可以配置特定的叙事设备响应于一定的刺激事件(例如,用户执行一特定的动作)来采取一定的视听动作,以及响应于另一刺激事件(例如,在预定的时间窗口内用户不执行该特定的动作)执行另一视听动作。
[0020]当用户指示他希望开始特定故事的身临其境式叙事体验时,控制器设备120可以检测在用户的物理环境(例如,用户家中的用户当前所处的房间)中可用的所有叙事设备11(VN。另外,控制器设备120可以确定叙事设备11(VN中哪些可用的设备与特定的故事兼容。一旦识别出兼容的叙事设备llOg,控制器设备120可以使用所识别出的叙事的设备110^启动针对该用户的身临其境式叙事体验。
[0021]如上文所述,控制器设备120可以配置每一个叙事设备11(VN响应于所检测出的刺激事件和正在叙述的故事的当前情景执行一定的动作。这里,故事可以包括时间顺序上的许多不同情景,并且故事的重放可以从一个情景前进到下一个情景直到到达最后一个情景和叙事体验完成为止。然而,虽然该故事可以在进展中是线性的,但这种情形不是必要的。例如,一个实施例提供具有一个或多个分支的故事,其中该故事可以继续向下到多个不同轨迹(arc)中的一个。例如,可以基于以下各项选择一个轨迹:选择算法(例如,随机选择一个轨迹)、用户的请求(例如,用户指明应该挑选哪个轨迹)、用户的动作(例如,用户成功地“解救”了故事中的一个虚构角色)、以及用户的动作历史(例如,用户是否在星球大战(Star Wars?)的故事线中倾向于“黑暗方”)等等。此外,可以在重放期间基于各种情节对故事进行动态地修改,所述情节例如是一个叙事设备变得不可用(例如掉电、离开物理环境等等)或者新的叙事设备被引入到环境中(例如,用户的朋友过来玩,该朋友带来一个或多个新的叙事设备)。
[0022]例如,叙事设备可以是魔法灯(magic lamp)的形状,而刺激事件可以是叙事设备所位于的物理环境内的用户动作(例如,用户摩擦魔法灯设备的表面)。作为另一示例,刺激事件可以是由另一叙事设备执行的动作。为了执行响应于检测到的刺激事件的动作,魔法灯设备可以被配置为在灯的上方投影(即,使用灯内的一个或多个投影仪或者物理环境内的其他现有设备)精灵的图案。例如,该图案可以是虚拟或真实图像的投影,该投影创建了存在于并且与物理世界交互的真实或全息图像的表象(或者幻象)。此外,魔法灯设备可以包括能够播放声音的(一个或多个)声觉设备(例如,扬声器、谐振腔等等)。例如,魔法灯设备可以使用所述(一个或多个)声觉设备来播放示出了该精灵语音的与精灵的投影同步的声音。
[0023]作为叙事体验的一部分,叙事设备11(VN可以显现为使用各种输入/输出组件彼此交互以及与用户交互。继续上文关于魔法灯设备的示例,该设备可以被配置有振动机构(例如,耦合到重心偏离的齿轮),以使得在精灵被“锁”在灯中同时魔法灯可以显现为摇晃。该灯还可以包括触摸感应的表面,该表面可用于检测用户何时在灯上摩擦。作为示例,该灯可以显现为在桌子上摇晃和颤动,并且可以播放示出精灵要求用户“让我出来”的声音效果。接着该灯可以检测用户何时用手在灯的侧面上摩擦(即,发生刺激事件),并且作为响应,可以在灯的上方投影精灵的全息图案。接着全息的精灵投影可以谢谢用户把它从灯中释放出来(即,响应于刺激事件的发生所执行的动作),并且故事可以继续。
[0024]在整个叙事体验中,部分故事可以要求用户在故事继续前进行某一动作。作为示例,叙事设备可以要求用户在故事可以继续前找到特定的对象(例如,幸运物(talisman))。这样的对象例如可以是(例如,由用户的父母或者监护人)预先藏在物理环境中的物理对象或者可以是用增强现实设备看到的虚拟对象`。叙事设备(或者控制器设备)可以例如通过接收对应于所藏对象的全球定位系统(GPS)(例如,由所藏对象自身确定并且直接从该所藏对象接收、从控制器设备中接收等等)并且通过确定与叙事设备相关联的GPS坐标,确定所藏对象在物理环境内的真实世界的位置。接着叙事设备(或者控制器设备)可以使用两组GPS坐标来确定所藏对象相对于叙事设备的位置。叙事设备(或者控制器设备)还可以确定用户相对于叙事设备的位置(例如,使用与用户相关联的GPS坐标、基于使用叙事设备的一个或多个相机捕获的图像等等),并且可以从这两个相对的位置确定所藏对象相对于用户的位置。当用户离对象越来越近时,叙事设备(或者控制器设备)可以监视用户的位置并且提供指导以帮助用户找到该对象。例如,当用户离对象越来越近时,叙事设备可以告知用户他正接近对象,而当用户离对象越来越远时,叙事设备可以告知用户他正远离对象。
[0025]在一个实施例中,可以给用户多个不同动作之间的选择,并且用户选取的动作可以影响故事的结果。也就是说,根据用户选取哪一个动作,控制器设备120可以基于故事对应的故事线轨迹不同地配置叙事设备11(VN。在这样的示例中,当从故事的一个情景前进到下一个情景时,控制器设备120可以基于所检测出的刺激事件选择多个下一个情景中的一个情景来前进。例如,一旦用户找到魔法幸运物,精灵就可以告知用户:该幸运物的能量可以用于阻止故事中的敌对者的邪恶计划,或者为了阻止敌对者的阴谋可以毁坏该幸运物。接着用户可以(例如,用一个或多个麦克风所检测出的口头表述)向精灵告知用户的选择,而且控制器120可以对应于用户的选择使故事前进到下一情景并且可以相应地配置叙事设备11(VN,允许故事的余下部分根据用户所选择的路而不同地播放。
[0026]一般地,叙事设备11(VN可以与作为叙事体验的一部分的用户视觉地交互。例如,使用上文关于魔法灯叙事设备的示例,叙事设备可以(例如,使用设备内的一个或多个瞄准的相机-即被配置为查看配置投影仪投影的区域的相机)跟踪用户的位置并且可以(例如,使用在真实世界内创建真实或全息图像的表象的图像投影技术)投影精灵的图案,以使得当用户查找魔法幸运物时,精灵显现为在房间内到处跟随用户。叙事设备还可以使用用户的位置以使得当投影的精灵与用户讲话时是面对用户的,这帮助增强叙事体验的真实感。当用户远离所藏的幸运物时,精灵可以被呈现为处于恼怒的或者沮丧的状态,而当用户接近所藏的幸运物时,精灵可以被呈现为处于振奋或者欢呼的状态。
[0027]在一个实施例中,叙事设备11(VN中的一个设备被配置有具有本地声音(S卩,显现为从叙事设备发出的声音)、非本地声音(即,难以确定输入方向的声音)或者二者功能的声频设备。一般来讲,本地声音可以来自产生中范围和高范围频率的扬声器,而非本地声音可以来自产生低范围频率的扬声器。更一般地,广泛设想:已知或未知的用于产生本地声音和/或非本地声音的任何技术均可以符合本公开地被使用。
[0028]实施例可以使用本地声音和非本地声音(例如,不同频率的声音)以在身临其境式叙事的环境中创建特定的效果。例如,尽管精灵被“锁”在灯中,但该灯设备可以投影使用本地声音示出精灵的语音的声音,以使得精灵的语音显现为来自灯中。另一方面,当用户调用魔法幸运物的能量时,灯可以使用非本地声音为幸运物投影声音效果,以使得声音效果显现为来自用户的周围。有利地,通过变更所察觉到的声音来源的位置,实施例可以创建更具身临其境感和增强的叙事体验。
[0029]接着叙事设备可以使用图像和语音/声音识别特征来提供个性化的、情景感知的叙事。另外,这样的识别特征可以极大地简化用户设置和维护叙事系统的任务。这样的设置自动化可以用于为用户有效地呈现复杂、多元素叙事的环境的有趣和简单的设置。例如,图像识别技术可以连同地理位置系统使用,以自动地告知叙事设备来为孩子的卧室(例如,相对家庭活动室)定制故事内容,避免了用户手动地告知叙事设备它位于哪里以及该即时环境中有什么其他的叙事设备的需求。[0030]此外,如上所述,叙事设备11(VN可以彼此交互以创建身临其境式叙事体验。例如,叙事设备llOi可以是机械化的毛绒动物(例如,猴子),该动物能够响应于特定的刺激执行手势和其他移动(以及声觉表达)。例如,机械化的猴子毛绒动物llOi可以能够使用它的腿(可选地还有的它的手臂)到处行走,并且可以能够以各种方式移动它的手臂、腿、头和躯干,显现出各种姿势和面部表情。在本示例中,机械化的猴子设备llOi可以(例如,使用一个或多个相机)在物理环境内跟踪用户的移动并且可以在用户查找魔法幸运物时在房间内跟随用户。通过这样做,设备^(^和/或控制器设备120可以跟踪设备的llOi的位置以及魔法幸运物设备的位置。为了给用户暗示(例如当检测到用户查找所藏的对象花了比时间的阈值量更长的时间时),猴子毛绒动物llOi还可以被配置为响应于检测到刺激事件的发生执行动作。例如,如果20秒后用户还没有找到所藏的幸运物,猴子毛绒动物llOi可以开始上下跳动、指向所藏幸运物的方向、并且发出声响以吸引用户的注意。 [0031]一般地,广泛设想:叙事设备可以基于故事的当前情景对给定的刺激事件有不同的反应,并且当故事播放时,控制器120可以配置叙事设备11(VN识别不同的刺激事件并作为响应执行不同的动作。例如,在上文的示例中,猴子毛绒动物设备可以被配置为:当精灵第一次出现时,作出害怕精灵的反应(即,故事里的第一个情景处的第一个刺激事件)。然而,在故事中的晚些点(其中精灵来帮助用户),猴子设备可以被配置为作出感激的反应(即,故事里的第二个情景处的第二个刺激事件)。作为另一示例,魔法灯叙事设备(例如,叙事设备1102)可以被配置为:当用户第一次摩擦灯时,(例如,通过显示在灯的上方显现的精灵的全息图像)以特定的方式反应,但是可以在故事的不同部分中以不同(或者完全不同)的方式反应。有利地,这么做允许叙事设备根据故事的当前情景,以真实的和期望的样式进行反应。
[0032]控制器120 —般包括管理叙事体验的逻辑。这可以包括,例如管理各种叙事设备llOg的动作以及基于故事的当前情景协调叙事设备llOg如何彼此交互和与用户交互。例如,控制器120可以向每一个叙事设备11(VN传输定义了各个设备应该作为叙事体验的一部分使用的对应的刺激和动作的数据。例如,这样的数据可以非限制性地指明:要被投影的一个或多个帧、在哪里投影这样的帧、播放的声觉声音、播放声音的频率(例如,本地对非本地的声音)、以及移动动作(例如,走动、姿势、振动等等)。在这样的实施例中,每一个叙事设备llOg可以只包含与它自身个体的动作相关的而不是与整个故事以及故事中涉及的动作和刺激相关的数据。接着设备llOg可以响应于检测到对应的刺激而执行指明的动作,从而创建身临其境式叙事环境。
[0033]一般地,根据这里描述的实施例,可以使用多个不同的刺激(这里也指刺激事件)。例如,一个刺激可以是使用叙事设备110内的一个或多个相机检测到的视觉刺激。作为示例,叙事设备110可以在用户在房间到处走动时通过使用位于不同角度处的多个不同的相机捕获房间的不同图像来监视用户的位置。接着叙事设备110可以基于用户的确定位置向用户给出适合情景的评论。例如,当用户变得远离叙事设备110 (例如,基于从所藏对象接收的GPS坐标和为叙事设备110确定的GPS坐标之间的比较)知道其位置的所藏对象时,叙事设备110可以(例如,通过从一个或多个扬声器发出声音)进行评论:用户在查找所藏对象的过程中正在远离对象。
[0034]刺激的另一示例是由另一个叙事设备110所做的动作。例如,当用户摩擦魔法灯设备并且精灵的投影显现时,猴子毛绒动物设备可以发出受惊的声音(例如,“呀(Eek)! ”)并且可以用它的手盖住它的眼睛。通过其他叙事设备110的动作的发生可以用多个方式传达。例如,通过分析使用一个或多个相机捕获的图像,猴子设备可以检测到精灵投影已经显现。
[0035]作为另一示例,魔法灯设备可以被配置为向猴子设备传输信号,指示精灵投影动作已经被执行。接着猴子设备可以基于所接收的信号对精灵的显现作出反应。如上所述,响应于检测到的刺激事件而执行的动作可以依据正在叙述的故事的当前情景。也就是说,尽管当精灵第一次显现时(即,故事里的第一个情景)猴子设备可以作出受惊的反应,但在后面的故事中当精灵来帮助用户应对故事中的敌对者时(即,故事里的第二个情景),猴子设备可以作出放松的反应。
[0036]在特定实施例中,魔法灯设备不是直接向其他叙事设备传输信号,而是可以向控制器120传输信号,而控制器120可以确定哪个(如果有)其他叙事设备110需要知道事件的发生。也就是说,可以采用集中模式,其中每一个叙事设备与控制器120通信,而不是每一个叙事设备直接与其他叙事设备通信的点到点(peer-to-peer)模式。例如,控制器可以维护指明哪个叙事设备110能够(在给定故事的情景中)对特定刺激事件作出反应的数据。当收到指示特定的动作已经被执行的信号时,控制器120可以使用这样的数据来确定哪个或哪些设备应该对该事件作出反应并向那些设备通知该事件的发生。在一个实施例中,控制器120可以选择能够对该事件作出反应的设备的子集,并且可以只向所选的设备告知该事件的发生。例如,如果控制器120确定物理环境(例如,用户的房间)中存在的六个不同的叙事设备110能够对精灵的显现作出反应,控制器120可以确定这些设备的子集来对精灵的显现作出反应。例如可以基于与每一个设备110的对刺激的响应动作相关联的优先值来选择这样的子集。在一个实施例中,对刺激作出反应的设备110被随机地(或者伪随机地)选择。
[0037]对于每一个能够对事件作出反应的可用的设备110,控制器120还可以确定是否设备110应该在对事件的反应中执行它全部的响应动作。也就是说,控制器120可以指明:作为对检测到的刺激的响应,一定的可用设备110应该只执行它们响应动作的一部分。例如,假设控制器120确定物理环境中`存在六个不同的能够对精灵的显现作出反应的叙事设备110,并且所有的六个设备110对于精灵的显现都有声觉和物理的反应。这里,控制器120可以选择设备110的子集(例如,只有猴子设备)来以声觉的方式进行反应,但是可以确定所有六个设备110应该对精灵的显现执行它们的物理反应。有利地,这么做帮助确保所有能够这么做的可用的叙事设备110将以某一形式对刺激作出反应,同时确保叙事设备110不相互“交流”,相互“交流”会使得难以理解每一个设备的声觉贡献。
[0038]一般地,可以用多个不同的方式实现控制器120。在一个实施例中,控制器120居于叙事设备ii(VN中的一个设备内。这样的实施例的优点是在叙事体验开始前可以不要求在用户的部分上进行额外的设置。也就是说,用户可以购买包含控制器120的叙事设备,并且当用户(例如,通过给叙事设备上电)激活叙事设备时,控制器120可以(例如,通过无线通信)检测哪些其他的叙事设备11(VN在用户的家中存在并且可以相应地自动调整叙事体验。然而,从用户的体验来看,用户仅仅将包含控制器120的设备上电,然后故事开始。
[0039]在特定的实施例中,控制器120包括在计算设备上执行的软件。例如,用户可以在个人计算设备或者平板计算设备上下载软件应用,使得当所述软件应用被执行时,这些软件应用可以充当控制器120。这样的实施例可以要求用户在开始叙事体验前下载或者安装软件应用。然而,使用个人计算机上的软件作为控制器120的一个优点是软件应用可以利用用户的个人计算机的处理能力,从而避免向叙事设备11(VN中的一个增加独立的控制器逻辑的任何额外费用。
[0040]一般地,控制器120可以维护与众多不同故事相关的数据。对于每一个故事,控制器120可以维护指明了与该故事兼容的叙事设备110的列表,并且可以为每一个兼容的设备维持各自的动作和对应的刺激的事件集合。另外,一些故事可以包括不同的分支,其中故事可以根据用户做出的选择和/或用户采取的行动以不同的方式播放。
[0041]例如,故事一被发布就被提供给控制器120 (例如,控制器120可以从远程网站中自动地下载最新发布的故事)。在特定的实施例中,当用户购买并在内容服务器中注册这样的叙事设备时,与特定的叙事设备相关联的故事可以被自动地解锁。在一个实施例中,控制器120被配置为只下载用户购买过的故事。例如,用户可以维护远程故事服务器(例如,网站)中的账号。如果用户选择给定的故事来重放,控制器120可以基于网站中用户的账号查询远程网站来确定该用户是否已经购买了所选的故事。如果用户已经购买该故事,控制器120可以开始使用可用的叙事设备交互地叙述该故事。如果用户还没有购买该故事,控制器120则可以提示用户关于用户是否希望购买该故事。
[0042]在一个实施例中,控制器120被配置为:当用户选择了他还没购买的故事时,自动地代表用户购买该故事。在特定实施例中,使用订阅模式向用户提供故事。也就是说,用户可以定期地(例如,每月地)支付订阅费用而且新故事可以定期地发布在远程网站上。只要支付了用户的订阅费用,控制器120就可以从远程网站上自动地下载新的故事,以使得当用户下一次希望使用(一个或多个)叙事设备时,新的故事可以用于重放了。
[0043]在一个实施例中,用户可以为他们的叙事设备购买变更的动作、行为和/或对话选项。一般地,设想:根据这里描述的功能,与叙事体验相关联的任何内容可以用各种方式以及因为各种原因而被锁住或者解锁。例如,内容(例如,故事、行为、对话等等)可以基于叙事环境中用户的先前动作而被解锁。例如,在星球大战主题的叙事环境中,基于先前播放的故事中用户的过往动作,如果用户倾向于“黑暗方”,那么控制器120可以解锁各种西斯(Sith)主题的故事。
[0044]更一般地,设想在故事的分发中可以采用已知或未知的任何收入模式。示例性收入模式包括但不限于:按使用付费模式(例如,用户每次通过故事玩时就征收费用)、小额支付模式(例如,可以单独地购买单个故事里的章节、单个故事里的特殊章节可以使用数字货币被解锁等等)、虚拟物品购买(例如,影响故事重放的特殊道具可以用纯虚拟货币和/或与真实货币相关联的数字货币来解锁等等)、广告模式(例如,放置在给定故事的情景内的目标产品、从(一个或多个)叙事设备中使用视觉和/或声频的重放来示出的广告等等)以及病毒式营销模式(例如,故事可以对向另一用户传输广告的和/或购买的机会的用户解锁)。
[0045]在一个实施例中,物理项目可以用于解锁数字(和/或虚拟)内容。例如,可以提供被配置为插入一个叙事设备上的特定插槽的塑料芯片(例如,在零售商店处出售)。作为示例,电子的或者机电的(例如,带有特定排列插槽的钥匙)可以被插入到一个叙事设备中以解锁内容。控制器120可以检测何时该芯片已经被插入一个叙事设备中并且还可以检测芯片的类型(例如,基于芯片内的存储器上指明的数据、基于芯片的构造和/或形状等等)。接着控制器120可以解锁对应于所检测出的供用户使用的类型的内容。例如,这样的内容可以包括可以由具有该芯片的叙事设备播放的新的故事线,并且控制器120可以响应于该芯片被插入到叙事设备中而(例如从远程服务器)下载这样的故事线。作为另一示例,解锁的内容可以包括用于叙事设备的新的行为和/或对话。更一般地,广泛设想:根据这里的功能,可以由物理设备解锁任何内容。
[0046]另外,为了解锁内容,物理对象或者设备不需要插入或者以其他方式物理地连接到叙事设备。例如,叙事设备可以接收指示特定内容应该被解锁的信号(例如,RF或者RFID信号)。作为示例,可以在主题公园中的专门的星球大战主题的景点处广播,而作为响应,任何接收到该信号的星球大战主题的叙事设备可以被配置为解锁特定的内容。作为示例,一旦接收该信号可以解锁新的故事线。作为另一示例,响应于该信号的接收,叙事设备可以执行一定的动作(例如,姿势、对话等等)。
[0047]此外,广泛设想:故事可以由任何数目的方面来提供。例如,在一个实施例中,单个的故事开发者控制针对叙事系统的故事的创建、生产和在市场上的发布。在另一示例中,可以提供市场,在市场中开发者、零售商、用户和爱好者可以协同工作以创建并向其他各个用户分发定制的故事。根据本公开,这种定制的故事可以被免费分发或者可以使用已知的或未知的任何价格模式分发。另外,可以调整市场以确保分发的故事是内容合适的。例如,调整者可以向个体的故事分配评级(例如,与美国电影协会针对电影的评级相似的评级)而且在观看特定的故事前用户可以被告知这些评级。在这样的实施例中,特定的用户(例如,孩子)可以被限制观看具有特定评级的故事。在一个实施例中,调整者可以只允许“获批”的故事投放到市场上。例如,调整者可以只批准分发适合青少年的故事,从而确保在市场上分发的任何以及所有内容适合于所有年龄的用户。
[0048]一般地讲,叙事设备110和控制器120可以是有状态的设备。也就是说,这些设备llOg和120可以维护与给定故事里当前的播放位置相关的状态数据,并且当用户中止该故事的播放时,该状态数据可以被维持。因而,用户可以在某一播放位置(例如,故事中的20分钟)处暂停特定故事的交互播放,并且当用户下次启动该特定故事的播放时,播放可以恢复到近似于预先播放的位置处(例如,正好在先前播放的位置、略早于先前播放的位置、略晚于先前播放的位置等等)。
[0049]另外,这样的状态数据可以指明已经发生的特定事件(例如与用户的交互)并且可以用于提升用户的叙事体验。例如,(例如,投影到物理世界中的、在增强现实设备上示出的等等)虚拟角色可以被配置有各种不同的短语,这些短语可以用于对给定的刺激事件作出反应。在这样的实施例中,与该虚拟角色相关联的叙事设备110可以维护指明了该虚拟角色最近已经用过哪些短语的状态数据,就可以在对随后发生的刺激事件的响应中避免使用这些最近使用过的短语。有利地,这么做帮助确保虚拟角色和用户之间的对话不是重复的,而且不会变的陈旧和重复。其他状态数据可以例如与顾客关系管理(CRM)服务和诸如以下各项之类的其他个性化的特征有关:记住用户的姓名、记住房间的状态、记住(一个或多个)叙事设备和(一个或多个)用户之间发生的过往活动和交互、以及可能的或者预测的(一个或多个)用户需要和期望的特征。
[0050]在一个实施例中,增强现实设备被用作一个叙事设备110。如这里所用,增强现实设备指这样的任何设备:所述设备能够在变更所显示的环境视图内的元素时,显示物理的、真实世界的环境的实时视图或者物理的、真实世界的环境的元素的设备。同样地,不像显示虚拟世界的视图的虚拟显示设备,增强现实设备显示真实世界的视图但是使用计算机图形技术增强了元素。更一般地,然而,增强现实设备和叙事设备110可以工作以创建高级别形式的增强现实。例如,通过向物理世界中投影虚拟角色的图像以创建三维全息图像的外观,实施例能够被用户察觉到地增强物理世界自身的外观,从而为用户创建增强现实的新形式。
[0051]例如,继续上述用户在他的房间内查找所藏的魔法幸运物的示例,用户可以使用增强现实设备查找幸运物。作为示例,用户可以在他的房间内到处走动,用增强现实设备查看房间,而增强现实设备上的软件可以被配置为:当查看用户的房间的具体位置时,增强所显示的场景以包括该增强现实设备。另外,魔法幸运物在增强现实设备的显示器上的示出可以显现为响应于来自用户的互动。例如,增强现实设备可以在捕获的视觉场景(例如,使用增强现实设备的(一个或多个)相机所捕获的帧)内检测用户的手的外观并且可以操纵显示器内魔法幸运物的外观,以使得显现为用户正在触摸并物理地移动该虚拟幸运物。作为示例,用户可以在所示出的位置伸出手并抓住虚拟幸运物,而增强现实设备可以增强用户的手在增强现实设备的显示器上的示出,以使得显现为用户正把该幸运物握在他的手中。接着用户可以携带该幸运物在他的房间内到处走动(如在增强现实设备上所示)。
[0052]这样的一个增强现实设备的示例在图2中示出,该图示出了使用多个叙事设备播放故事的星球大战主题的使用情形。如图所示,屏幕截图200包括尤达(Yoda)叙事设备230、位于柜台225顶上的训练者叙事设备245、以及握住光剑叙事设备220的用户210。另夕卜,用户210被示为戴上一副增强现实眼镜215。在其他实施例中,其他形式的增强现实设备(例如,配置有增强现实组件的移动电话或者平板计算设备)可以与增强现实眼镜215相似的样式被使用。
[0053]—般地,光剑设备220可以包括加速度计、扬声器、GPS设备、和/或用于检测刺激事件并相应地进行响应的振动机构。例如,加速度计可以跟踪光剑设备220的移动从而触发刺激事件,如用户用光剑设备220执行特定事件。同样地,GPS设备可以允许确定光剑220的位置从而触发刺激事件,如光剑设备220被(例如,用户的父母)隐藏而用户被尤达设备230派出来执行找到光剑设备220的任务的故事。例如,在这样的故事中,控制设备可以经由光剑内的GPS设备确定光剑的220位置,并且还可以基于尤达玩偶230内的GPS设备确定尤达设备230的位置。接着尤达设备230可以做出位置准确的评论(例如,当用户靠近光剑设备时告知用户)来帮助用户在寻找所藏的光剑220的过程中定位用户。当一定的刺激事件发生时,振动机械可以向用户提供触觉的反馈。该刺激事件可以包括光剑设备220的移动、或者物理或虚拟的对象接触到光剑220。
[0054]相似地,尤达设备230可以产生声觉(例如,通过言语合成器模式讲话)和视觉(例如,物理环境内的姿势和移动)两种效果。这样的声觉效果可以是本地的或者非本地的,而且一般这样的声觉效果将与其他叙事设备一致从而协同地叙述故事。例如,为了讲话的意图,尤达设备230可以使用本地声觉效果,允许玩具显现为正在讲话。尤达设备230还可以包括用于跟踪用户的移动和光剑设备220的移动的相机。
[0055]作为示例,尤达设备230可以指导用户210用光剑设备220执行特定的练习,控制器设备可以跟踪光剑设备220的移动(例如,通过光剑设备内的加速度计、通过训练者245或者尤达设备230内的相机等等)。这样的练习的一个示例包括用光剑设备220偏转从训练设备245中发射的虚拟激光。例如,可以通过增强现实眼镜215将虚拟激光插入到用户的视野中,而且可以要求用户以特定的方式移动光剑设备220从而偏转虚拟激光。在这样的示例中,尤达设备230可以被配置为响应于用户正确地执行练习(例如,用光剑设备220偏转虚拟激光)而执行特定的动作,如夸奖用户的动作并且将故事的情景向前推进。这里,尤达设备230可以使用相机监视用户对光剑设备220的移动,并且可以确定何时用户对于增强现实眼镜215内示出的虚拟激光用光剑设备220做出了合适的物理的移动。也就是说,如果虚拟激光被示出在用户的左侧,则控制器设备可以使用相机确定在预定的时间窗口内何时用户将光剑设备220移动到用户的左侧。如果尤达设备230确定用户已经及时移动了光剑设备220,那么尤达设备230可以执行相应的动作(例如,夸奖用户偏转了该激光)。
[0056]继续该示例,控制器设备可以通知其他增强现实设备何时用户已经成功地偏转了虚拟激光。例如,控制器可以将用户的动作通知给训练设备245,而训练设备245可以继而做出响应。例如,训练设备245可以更新投影仪255来反映用户成功地偏转虚拟激光的次数和用户未能偏转的次数。同样地,训练设备245可以输出声觉效果250,来指示用户已经成功地偏转了虚拟激光。此外,增强现实眼镜215可以被配置为示出虚拟激光被光剑设备220弹开。
[0057]设备可以被配置为响应于用户不正确地执行动作(例如,用户没能在预定的时间窗口内将光剑设备220移动到合适的位置)而执行其他动作。例如,尤达设备230可以向用户提供鼓励,并且训练设备245可以增加投影仪255的击空计数器。相似地,当用户未能偏转时,增强现实眼镜215可以示出虚拟激光飞向远处。
[0058]另外,为了加强故事,增强现实眼镜215可以被配置为示出对于用户的物理环境的多个增强。这么做可以提供用户210和交互的故事之间的更真实的交互。例如,增强现实眼镜215可以改变房间的场景以给出用户处于其他地方的表象。例如,柜台225可以被转化为巨大的原木而地板可以被使得看起来好像沼泽,来表象用户210是在树沼中。同样地,与来自尤达230的相机组合的增强现实眼镜215,可以执行动作来仿真用户210使用“原力(force ) ”来偏转虚拟激光以及与房间内的对象进行交互。
[0059]图3是示出根据在本文中描述的一个实施例的在叙事设备和控制器设备之间的交互的流程图。如图所示,方法300开始于块310,其中控制器设备120确定叙事设备1和叙事设备2在物理环境内可用并且与特定的故事兼容。这里,当例如设备被使能(例如,当设备被上电的)、设备空闲时(例如,当前设备没有用于另一个叙事体验中)、以及设备在叙事体验期间可使用(例如,设备具有充足的电量来完成游戏)等等时,设备可以被认为是“可用的”。同样地,当故事包含与设备相关联的刺激事件以及相应的动作时,可以认为设备与故事“兼容”。例如,特定的故事可以具体地与图2中所示以及上文描述的尤达设备230有关。作为另一示例,故事可以与任何星球大战的英雄设备有关,这些设备可用包括尤达设备230以及各种其他星球大战的角色。
[0060]一旦确定了可用的和兼容的设备,控制器设备120就向叙事设备1和叙事设备2映射特定的故事(块315)。一般地,故事可以包括多个具有时间次序的不同情景,并且每一个情景可以包括多个刺激事件和对应的动作。这里,故事的播放可以包括:在控制器设备120响应于检测到对应的刺激事件已经发生而配置叙事设备来执行动作的同时,从一个情景前进到下一个情景。一般地,控制器可以基于特定刺激事件的满足将故事的播放从一个情景推进到下一个情景。
[0061]在将故事映射到可用和兼容的叙事设备上时,控制器设备120可以确定每一个叙事设备的类型,并且可以基于所确定的类型向每一个叙事设备分配特定的刺激事件和相应的动作。例如,假设叙事设备代表尤达设备230,控制器120可以将故事里的任何指明尤达的刺激事件和动作分配给尤达设备230。同样地,如果故事包括为星球大战的英雄设备指定的任何刺激事件和动作,控制器120也可以将这些刺激事件和对应的动作分配给尤达设备230。在此事件中,多个叙事设备可用就满足了刺激事件/动作组合的标准(例如,多个星球大战的英雄设备在物理环境内存在而且可用),控制器设备120可以选择一个叙事设备来执行每一个刺激事件/动作组合。有利地,动态地将故事映射到可用和兼容的设备上允许故事与各种不同的叙事设备和叙事设备的组合一起使用。
[0062]在一个实施例中,对于给定的刺激事件,故事可以指明不同的适合情景的动作以用于各种类型的叙事设备的执行。也就是说,控制器120可以确定特定的故事包括为星球大战的英雄角色指定的刺激事件,并且可以指明为尤达设备230指定的相应的动作以及为奥比旺(Ob1-Wan)设备指定的分离的、不同的动作。在这样的实施例中,当选择一个设备来响应刺激事件时,控制器120可以基于设备的类型向设备分配相应的动作。由于叙事设备可以被配置为以适合于所代表的虚构角色的方式对刺激事件作出反应,这么做帮助为用户创建更具身临其境感和真实的叙事体验。
[0063]一旦控制器120将故事映射到设备上,控制器120就利用与故事的第一情景有关的多个刺激事件和相应的效果配置每一个叙事设备(块320)。为了该示例,假设叙事设备1代表尤达设备230,并且假设控制器120配置设备230以检测何时用户适当地偏转了虚拟激光。在方法300中,叙事设备1接着检测到第一刺激事件已经发生(块325)并执行相应的效果(块330)。作为示例,尤达设备230可以检测何时用户成功地偏转虚拟激光(即,刺激事件的发生),并且作为响应可以祝贺用户(即,执行对应的效果)。
[0064]接着控制器120响应于第一刺激事件的发生而推进故事情景(块335),并且基于故事的下一情景相应地重新配置叙事设备(块340)。也就是说,基于故事的下一情景,控制器120可以利用刺激事件和相应的效果对配置叙事设备。这里,故事可以涉及用户学习使用光剑设备220,并且接着可以前进到用户学习使用他的“原力”能量。相应地,控制器120可以配置训练者设备245以检测何时用户已经执行了特定的刺激事件(例如,用户朝着训练者设备245张开手,仿佛在设备245上使用“原力”那样),并相应地作出反应(例如,通过使用设备245内的齿轮和重量的组合来振动)。
[0065]更一般地,然而,故事的情景可以不单基于单个刺激事件的表现而前进,而是可以基于多个因素而前进。例如,故事的情景可以基于用户的输入而前进(例如,用户可以被给予故事应该跟随哪个轨迹的选择权)。另外,情景可以基于游戏性体验的总体状态而前进,该总体状态可以包括在当前的故事期间先前执行的动作的状态以及先前播放过的故事中执行的动作和先前的状态。例如,控制器120可以(例如,通过从故事中涉及的每一个叙事设备收集状态信息)确定当前故事的聚合状态并且可以基于该聚合的状态信息选择故事的多个不同的轨迹中的一个。作为示例,控制器120可以确定特定的用户在当前的叙事体验期间(和/或先前的叙事体验期间)没有执行“好的绝地武士(good Jedi)”的动作,并且取而代之的是,用户已经倾向于“黑暗方”。作为响应,基于当前故事中用户的先前动作以及潜在的先前故事,控制器120可以将当前故事的情景推进到与西斯(Sith)相关联的轨迹中。这样不同的故事线轨迹可以例如包括用户采取的不同动作、以及来自叙事设备的不同对话等等。控制器120还可以在选择故事线轨迹的过程中考虑用户的个人信息(例如,生日、年龄等等)和用户的概要信息(例如,说明用户的偏好)。
[0066]返回方法300,方法300继续:叙事设备2检测到第二刺激事件已经发生(块345)并且执行对应的效果(块350)。例如,训练者设备245可以(例如,通过使用训练者设备245或者另一叙事设备内的一个或多个相机设备)检测何时用户朝着训练者设备245张开他的手,并且可以激活训练者设备245内的振动机构(例如,齿轮和重量组合设备),从而致使训练者设备245振动。这么做创建出这样的感觉:根据所叙述的故事,用户已经在训练者设备245上使用了“原力”。接着控制器120将故事的情景推进到下一情景(块355)、相应地重新配置叙事设备(块360),方法300结束。
[0067]图4是示出根据在本文中描述的一个实施例的确定多个叙事设备的流程图。如图所示,方法400开始于块410,其中控制器120检测到在物理环境内物理存在的多个叙事设备。一般地,广泛设想控制器120可以使用任何类型的通信技术来检测叙事设备。这样的技术的示例包括蓝牙(Bluetooth?)技术、802.1无线网络技术、和RFID技术等等。更一般地,根据这里描述的功能性,可以使用用于检测物理接近控制器120的设备的任何技术。
[0068]接着控制器120确定存在的哪些叙事设备可用于播放特定的故事(块415)。如上所述,如果叙事设备当前涉及播放不同的故事、如果设备缺少完成叙事体验的电力(例如,设备电池电量低)、以及更一般地如果设备不能(或者不太可能能够)启动或者完成叙事体验,那么可以认为该设备是不可用的。
[0069]另外,控制器120确定哪个可用的叙事设备与特定的故事兼容(块420)。也就是说,当魔法灯叙事设备在物理环境内可用时,该魔法灯可能在主题上不与星球大战主题的故事一致。相应地,控制器120可以确定:当该魔法灯存在并且可用于播放故事时,该魔法灯与该特定的故事不兼容。如上所述,故事可以指明要被叙事设备执行的刺激事件和对应的动作对,并且可以指定设备或者设备类型来执行这些对中的每一对。因而,例如,故事可以指明特定的动作由尤达叙事设备具体执行,而另一动作可以为任何星球大战的英雄设备而被指定。如果控制器120确定特定的设备没有映射到任何刺激事件/动作对,那么控制器120可以确定该特定的设备不与该故事兼容。
[0070]一旦控制器120确定哪些设备与故事兼容,控制器120就将刺激事件和对应的动作对映射到兼容的设备上(块425),方法400结束。因而,继续上文的示例,控制器120可以将指明尤达的动作映射到尤达叙事设备,以及可以将指明星球大战英雄的动作映射到尤达叙事设备或者满足标准的另一可用的叙事设备(例如,奥比旺叙事设备)上。
[0071]图5是示出根据在本文中描述的一个实施例的将故事映射到多个叙事设备上的流程图。如图所示,方法500开始于块510,其中控制器120接收包括多个元素的故事以及用于将元素映射到叙事设备上的选择标准。这里,多个元素中的每一个元素可以包括(一个或多个)刺激事件和响应于(一个或多个)刺激事件的发生而采取的(一个或多个)对应动作。
[0072]接着控制器120确定用于故事的每一个元素的设备类型(块515)。如上所述,故事可以指明用于刺激事件/动作对的具体类型的设备(例如,魔法灯设备),或者可以指明可以映射刺激事件/动作的一种类型的设备(例如,星球大战坏人类型的设备)。控制器120还确定哪些叙事设备在物理环境内是可用和兼容的(块520)。接着控制器120基于针对每一个故事元素的选择标准,将故事的元素映射到所确定的叙事设备上(块525)。
[0073]另外,控制器120确定每一个叙事设备对于故事的每一个元素所执行的特定效果(块530),方法500结束。例如,包括刺激事件的发生的特定元素可以被映射到任何可用的星球大战坏人叙事设备,并且控制器120可以确定设备应该采取什么动作来响应正在执行的刺激事件。对于特定元素而言,所执行的动作可以保持一致而无关于该元素所映射到的叙事设备。作为示例,在上文论述的激光偏转的故事线中,计分任务可以被映射到训练设备245 (例如,以产生投影255)或者增强现实眼镜215 (例如,以产生增强现实的计分板)。这里,尽管两个设备之间产生计分板的技术不同,更新击中计数器或者击空计数器的动作保持不变而无关于所使用的设备。然而,对于其他元素而言,所执行的动作可以根据元素被映射到的设备的类型而变化。例如,对话动作可以根据特定的元素被映射到哪个星球大战的坏人而变化,从而为故事提供主题上一致的对话。因而,在这样的示例中,控制器120可以基于叙事设备的类型确定叙事设备对于给定元素应当执行的效果。
[0074]叙事设备的示例在图6中示出,该图6是示出根据在本文中描述的一个实施例的配置有叙事组件的叙事设备的框图。在该示例中,叙事设备110包括但不限于:处理器610、存储装置615、存储器620、I/O设备635、网络接口 640、相机设备645、显示设备650和加速度计设备655。一般地,处理器610获取并执行存储在存储器620中的程序指令。处理器610可以被包括以代表以下各项:单个CPU、多个CPU、具有多个处理核的单个CPU、以及具有多个执行路径的GPU等等。存储器620 —般被包括以代表随机存取存储器。网络接口 640使能叙事设备110以连接到数据通信网络(例如,有线以太网连接或者802.11无线网络)。此外,尽管所示的实施例示出了特定的叙事设备的组件,本领域的一般技术人员将认识到,叙事设备可以使用各种不同的硬件架构。此外,明确地设想可以使用能够执行这里描述的功能的任何设备或者计算机系统来实现实施例。
[0075]存储器620代表任何足够大来容纳必要的程序和数据结构的存储器。存储器620可以是一个存储器设备或者存储器设备的组合,该存储器620包括随机存取存储器、非易失性或者备份存储器(例如,可编程存储器或者闪存、只读存储器等等)。另外,存储器620和存储装置615可以被认为包括物理上位于别处的存储器;例如位于与叙事设备110通信耦合的另一计算机上。例如,存储器620包括叙事组件625和操作系统630。操作系统630总体控制应用程序在叙事设备110上的执行。操作系统630的示例包括UNIX、某个版本的Microsoft Windows?操作系统以及Linux?操作系统的发行版。操作系统630的其他示
例包括用于游戏机的定制操作系统,其中包括用于诸如Nintendo DS?和Sony PSP?之类的系统的定制操作系统。
[0076]1/0设备635代表多种多样的输入和输出设备,包括显示器、键盘、以及触摸屏等等。例如,I/o设备635可以包括用于提供用户界面的显示设备。作为示例,显示器可以提供允许用户选择不同的应用以及应用内的选项(例如,选择数字介质内容的实体来查看)的触敏表面。另外,1/0设备635可以包括用于控制叙事设备110的一组按钮、一组开关或者其他物理设备机构。另外,I/o设备635可以包括机械化的组件或者使能叙事设备110采取物理的动作(例如,振动、房间内到处走动、做姿势、面部表情等等)的其他组件。
[0077]叙事组件625可以被配置为识别各种刺激事件以及将各种刺激事件中每一个事件与相应的一个或多个动作相关联。当检测到一个刺激事件已经发生时,叙事组件625可以执行对应的一个或多个动作。例如,叙事设备110可以是毛绒动物猴子,该毛绒动物猴子可以被配置有叙事组件625,使得当检测到全息精灵投影已经显现时,可以致使机械化的猴子玩具因恐怕而畏缩以及发出恐惧精灵的呜咽声。此外,叙事组件625可以基于使用大批叙事设备110叙述的故事的当前情景来确定执行哪些动作。也就是说,机械化的猴子玩具可以被配置为:当精灵在故事里第一次显现时(例如,显现为害怕精灵)的举止不同,但是当精灵在故事的后续情节中来解救用户时可以举止不同(例如,当看到精灵时显现为感激)。因而,叙事组件625可以被配置为:根据故事里的当前情景,对于给定的刺激事件进行不同地反应。
[0078]如上所述,叙事组件625可以用各种不同的方式检测刺激事件的发生。例如,叙事组件625可以使用叙事设备110内的相机设备645来检测投影图像何时显现或者跟踪用户的移动。作为另一示例,叙事组件625可以使用加速度计655来检测用户何时用他的手摩擦叙事设备110 (例如,其中设备110是魔法灯)。另外,叙事组件625可以使用其他的1/0设备635做出这样的确定,这些I/O设备例如是能够检测用户何时以及如何触摸设备110的触敏设备(例如,电容传感或者电导传感的触觉表面)。此外,控制器120可以(例如,使用W1-Fi或者蓝牙通信)向设备110传输消息,该消息指示特定的刺激事件已经发生。更一般地,根据这里描述的功能,可以使用能够检测某一预定事件的发生的任何技术。
[0079]另外,叙事设备110可以配置有逻辑和/或硬件来确定它在物理世界内的地理的、物理的位置。这样的逻辑和/或硬件的示例包括GPS逻辑和全球定位系统(GPS)发射机,以及使用(来自大量诸如蜂窝塔、电视广播塔、或者无线网络设备之类的无线源的)飞行时间或飞行角度或者二者的地理位置软件。更一般地,根据这里描述的功能,可以使用用于确定真实世界中设备的物理位置的(已知或者未知的)任何技术。
[0080]另外,在提供身临其境式叙事体验的过程中,实施例可以与诸如电视、网络设备、智能电话和电子书之类的现有媒体设备同步。例如,叙事魔法提灯(例如叙事设备110)可以(例如,通过与电视和/或视频游戏系统通信、使用一个或多个相机、使用麦克风等等)感应用户当前正在观看的电视节目或者用户当前正在玩的视频游戏的事件。响应于检测到这样的刺激事件,魔法提灯可以用适合情景的方式以及恰好在适当的时间做出反应。例如,当检测到用户在当前正在观看的TV上的到ESPN?新闻评论人谈到Giants?和Panthers?之间即将到来的橄榄球比赛时,以及当确定Giants?赢得他们之间的上一场比赛时,魔法提灯可以说:“孩子,我非常希望这个周末Giants?nj.以再一次赢得比赛! ”(例如,使用文字至话音合成器以及一个或多个扬声器设备)。
[0081]作为另一示例,叙事设备110可以与由用户控制的电子书阅读器通信来确定用户当前正在阅读哪本书以及该电子书阅读器当前正在显示特定的书的哪一页。接着叙事设备110可以恰好在适当的时间(例如在用户已经翻开页面之后的时刻)以声响进行评述和/或进行动作以增强正在传统媒体平台上叙述的故事(例如,用户正在读的书)。
[0082]图7示出了根据在本文中描述的一个实施例的控制器设备的示例。如图所示,控制器120包括处理器710、存储装置715、存储器720、和网络接口 740。一般地,处理器710获取并且执行存储在存储器720中的程序指令。处理器710被包括以代表以下各项:单个CPU、多个CPU、具有多个处理核的单个CPU、以及具有多个执行路径的GPU等等。存储器720一般被包括以代表随机存取存储器。网络接口 740使能控制器设备120以连接到数据通信网络(例如,有线以太网连接或者802.11无线网络)。此外,尽管所示的实施例示出了特定的叙事设备120的组件,本领域的一般技术人员将认识到,叙事设备可以使用各种各样不同的硬件架构。此外,明确地设想可以使用能够执行这里描述的功能的任何设备或者计算机系统来实现实施例。
[0083]存储器720代表任何足够大来容纳必要的程序和数据结构的存储器。存储器720可以是一个存储器设备或者存储器设备的组合,该存储器720包括随机存取存储器、非易失性或者备份存储器(例如,可编程存储器或者闪存、只读存储器等等)。另外,存储器720和存储装置715可以被认为包括物理上位于别处的存储器;例如位于与控制器设备120通信耦合的另一计算机上。例如,存储器720包括叙事控制器组件725、故事数据730和操作系统735。操作系统735总体控制应用程序在控制器设备120上的执行。操作系统735的示例包括UNIX、某个版本的Microsoft Windows?操作系统以及Linux?操作系统的发行版。操作系统735的其他示例包括用于游戏机的定制操作系统,其中包括用于诸如Nintendo DS?和Sony PSP?之类的系统的定制操作系统。
[0084]一般地,叙事控制器组件725配置叙事设备110响应于所检测到的刺激事件以及当前正在叙述的故事的当前情景而执行特定的动作。例如,在一个实施例中,叙事控制器组件725在特定的故事的叙述开始之前,向每一个叙事设备110传输用于识别特定事件以及执行相应的(一个或多个)动作的逻辑(或者一系列的命令)。在这样的实施例中,叙事设备110可以接着使用叙事设备110上的输入/输出设备(例如,相机、麦克风、无线收发机、红外传感器等等)来检测特定的事件何时发生。例如,设备110可以使用相机来检测特定的投影何时显现,以及接着可以基于正在叙述的故事的当前情景来执行相应的动作作为响应。作为另一示例,设备110可以(例如,使用蓝牙通信)从另一设备110接收无线信号,该无线信号指示特定的动作已经被执行。接着设备110可以响应于接收信号而执行相应的动作。这样的实施例的一个优点是:由于反应逻辑已经位于叙事设备110中,设备110可以对给定的刺激进行相对快速的反应。
[0085]在特定的实施例中,叙事控制器组件725被配置为直接控制叙事设备110的动作。例如,叙事控制器组件725可以向设备110中的第一个设备传输消息,该消息指示设备110执行特定的动作来开始故事。接着设备110可以执行指明的动作。在一个实施例中,一旦成功地执行了动作,设备110可以向叙事控制器组件725向回传输确认消息。在特定的实施例中,叙事控制器组件725可以自动地假设:在自叙事控制器组件725传输消息起已经经过某一预定时间段之后,设备110已经执行了动作。
[0086]在任何事件中,一旦叙事控制器组件725确定(或者假设)动作已经被执行,叙事控制器组件725可以识别出一个或多个其他叙事设备110,根据特定的故事,这些设备110可以响应于所执行的动作做出反应。如上所述,在某些情况下,叙事控制器组件725可以确定叙事设备110中能够对所执行的动作作出反应并且应该响应于所执行的动作作出反应的子集。例如,叙事控制器组件725可以确定六个不同的设备110能够对所执行的动作物理地及声觉地作出反应。接着叙事控制器组件725可以选择六个叙事设备110中应该对特定的刺激事件(例如,所执行的动作)作出反应的子集。叙事控制器组件725还可以确定每一个设备110应该如何反应。作为示例,叙事控制器组件725可以确定所有六个设备110应该对刺激事件物理地作出反应,但是六个设备110中只有两个设备应该对刺激事件声觉地作出反应。有利地,这么做帮助阻止设备“相互交流”并且帮助确保用户可以清楚地听到和理解设备110的声觉反应。
[0087]一般来讲,根据本公开,叙事设备110和控制器120可以用任何数目的不同方式实现。对于硬件,实施例可以采用模块化的设计以最大化不同叙事设备之间的硬件的可复用性。这样的设计可以例如包括硬件适配器,该硬件适配器允许通用处理器、存储器和总线经由大量传感器、显示器、效应器和其他通信方式接收和发送数据。另外,系统和/或操作系统不可知站点(例如,门户)可以用于确保所有用户的最大兼容性。
[0088]明确设想控制器120还可以居于云计算环境内。云计算一般指通过网络提供可扩展的计算资源作为服务。更正式地,云计算可以被定义为计算能力,该计算能力提供计算资源和其底层的技术体系结构(例如服务器、存储装置、网络)之间的抽象,从而使得能够对通过最低限度的管理工作或者服务提供商交互即可迅速提供和发行的可配置计算资源的共享池进行方便的、按需的网络访问。因而,云计算使得用户能够访问“云”中的虚拟计算资源(例如存储装置、数据、应用,甚至是完整的虚拟化计算系统),而无需关心用于提供这些计算资源的底层物理系统(或者这些系统的位置)。
[0089]通常,云计算资源通过按使用付费的方式被提供给用户,其中用户仅被收取实际使用的计算资源(例如用户消耗的存储空间的量或用户实例化的虚拟化系统的数目)的费用。用户可在任何时间从因特网上的任何地方访问居于云中的任何资源。在本发明的上下文中,控制器120可以用正在执行的软件应用的方式居于云中。例如,控制器120可以在用户的家里(例如,通过因特网)与叙事设备110通信并且可以向每一个叙事设备110传输故事数据。一般地,被送往每一个设备110的故事数据可以包括一系列的动作以及相应的刺激。接着叙事设备110可以使用所接收到的故事数据创建身临其境式叙事环境。这么做使得叙事设备110能够使用连接到云的任何网络(例如,因特网)访问控制器120。
[0090]另外,对于软件,实施例可以包括诸如抽象层以及允许应用和媒体能够在众多硬件平台和设备上播放的虚拟机之类的特征。例如,实施例可以采用通过处理器和输入/输出设备的执行实现的软件架构,该架构至少具有应用层、中间件层和核心层。此外,数据接口和这些不同层之间的API可以利用具体的硬件和I/O设备不可知的抽象,从而允许“一次写入,多次输出(write once port many)”环境。
[0091]相似地,实施例可以包括诸如框架、库和其他实例之类的中间件,该中间件允许脚本和编程领域的任何技术人员使用为可用编码和运行时操作而提供的预制“构造块(building block)”来快速创建叙事的脚本和体验。一般地,这样的抽象和虚拟机可以使得叙事的环境能够容易地与诸如电视、电子书和网站之类的传统媒体设备和平台交接。
[0092]在一个实施例中,叙事系统的架构是对于控制器120的模块化,从而使得系统还可以等同地运作而无关于叙事控制器120是集中式控制器,远程的、云控制器还是通过网状网络实现的分布式控制器,该网状网络中个体设备以端到端的模式进行通信从而进行合作以提供多元素的叙事体验。另外,任何个体的叙事元素(例如,诸如魔法灯之类的叙事设备110)可以在不同的时间用以下各项设备之一的形式操作:独立设备、与传统媒体设备(例如,TV、视频游戏平台、电子书阅读器等等)同步的设备、通过端到端的通信与另一设备(例如,另一叙事设备110)协作的设备、由集中式叙事控制器控制的设备、和/或由远程云控制器控制的设备。这样,根据这里描述的功能,单个叙事设备可以在以下拓扑之一中以瘦客户端(即,其中本地执行大部分的处理)或者胖客户端(即,其中本地执行大部分的处理)的模式运作:端到端网状网络拓扑、辐射星型拓扑、环状拓扑、可视化云拓扑、或者更一般地已知或未知的任何拓扑。
[0093]如上所述,在一个实施例中,至少一个叙事设备是增强现实设备。根据这里描述的一个实施例的增强现实设备的示例在图8中示出。这里,增强现实设备800包括但不限于:处理器810、存储装置815、存储器820、I/O设备835、网络接口 840、相机设备845、显示设备850和加速度计设备855。一般地,处理器810获取并且执行存储在存储器820中的程序指令。处理器810可以被包括以代表以下各项:单个CPU、多个CPU、具有多个处理核的单个CPU、以及具有多个执行路径的GPU等等。存储器820 —般被包括以代表随机存取存储器。网络接口 840使能增强现实设备800以连接到数据通信网络(例如,有线以太网连接或者802.11无线网络)。此外,尽管所示的实施例示出了特定的增强现实设备的组件,本领域的一般技术人员将认识到,叙事设备可以使用各种不同的硬件架构。此外,明确地设想可以使用能够执行这里描述的功能的任何设备或者计算机系统来实现实施例。
[0094]存储器820代表任何足够大来容纳必要的程序和数据结构的存储器。存储器820可以是一个存储器设备或者存储器设备的组合,该存储器820包括随机存取存储器、非易失性或者备份存储器(例如,可编程存储器或者闪存、只读存储器等等)。另外,存储器820和存储装置815可以被认为包括物理上位于别处的存储器;例如位于与增强现实设备800通信耦合的另一计算机上。例如,存储器820包括增强现实组件825和操作系统830。操作系统830总体控制应用程序在增强现实设备800上的执行。操作系统830的示例包括UNIX、某个版本的Microsoft Windows?操作系统以及Linux?操作系统的发行版。操作系统830的其他示例包括用于游戏机的定制操作系统,其中包括用于诸如Nintendo DS?和Sony PSP?:之类的系统的定制操作系统。
[0095]1/0设备835代表多种多样的输入和输出设备,包括显示器、键盘、和触摸屏等等。例如,I/o设备835可以包括用于提供用户界面的显示设备。作为示例,显示器可以提供允许用户选择不同的应用以及应用内的选项(例如,选择数字媒体内容的实体来查看)的触敏表面。另外,1/0设备835可以包括用于控制增强现实设备800的一组按钮、开关或者其他物理设备机构。另外,1/0设备835可以包括机械化的组件或者使能增强现实设备800采取物理动作(例如,振动、房间内到处走动、做姿势、面部表情等等)的其他组件。
[0096]一般地,增强现实组件825被配置为使用相机845捕获物理环境的一个或多个帧以及在显示器850上显示这些帧的增强示出。例如,假设用户将(一个或多个)相机845对准桌子,以使得桌子的表面在设备800的显示器850上示出。除了示出物理环境外,增强现实组件825可以被配置为增强所显示的场景以包括一个或多个虚拟对象。作为示例,增强现实组件825可以显示示出逼真的虚拟角色在桌子的表面到处移动的一系列的帧。增强现实组件825还可以被配置为通过将一个或多个对象从场景中移除来增强所示出的真实世界的场景。
[0097]例如,增强现实设备可以捕获坐落在桌子顶部的咖啡杯的一系列的图像、修改这一系列的图像以使得咖啡杯显现为逼真的卡通角色以及实时地向用户显示经修改的一系列的图像。这样,当用户看着增强现实设备时,用户看到用户所位于的物理的真实世界环境的增强视图。
[0098]增强设备上的软件可以使用这样的(一个或多个)相机设备捕获物理环境的视觉场景(例如,使用增强现实设备上的一个或多个相机)。例如,软件可以捕获包括第一用户的视觉场景。另外,软件可以从第二增强现实设备接收第二用户的视觉场景数据。这里,可以使用第二增强现实设备上或者连接到第二增强现实设备的一个或多个相机来捕获视觉场景数据。第二用户的视觉场景数据可以例如通过以下各项被传输:两个增强现实设备之间的物理连接、两个增强现实设备之间的无线连接(例如,蓝牙连接)、或者网络(例如,因特网)。
[0099]接着软件可以呈现示出增强现实世界中的第一用户和第二用户的用于显示的帧序列。例如,软件可以基于增强现实设备上捕获的视觉场景来呈现第一用户的示出,并且可以基于从第二增强现实设备接收的视觉场景数据呈现第二用户的示出。接着所呈现的帧序列可以在连接到增强现实设备的一个或多个显示设备上显示。有利地,这么做提供了其中多个用户可以存在并彼此交互的增强现实世界。
[0100]在前述中,述及本发明的实施例。然而,本发明不限于所描述的具体实施例。取而代之的是,无论是否与不同的实施例有关,所附特征和元素的任意组合被设想为实现和实践本发明。此外,尽管本发明的实施例可以实现优于其他可能的方案和/或优于现有技术的优点,但给定的实施例是否实现特定的优点并不是本发明的限制。因而,前述的方面、特征、实施例和优点只是示例性的,而并不被认为是所附权利要求的元素或者限定,除非在(一个或多个)权利要求中有明确记载。类似地,所述及的“本发明”不应被解释为对这里公开的任何发明主题的概括,并且不应被认为是所附权利要求的元素或者限制,除非在(一个或多个)权利要求中有明确记载。
[0101]本发明的各个方面可体现为系统、方法或者计算机程序产品。相应地,本发明的各个方面可采取以下的形式:完全硬件的实施例、完全软件(包括固件、常驻软件、微代码等等)的实施例、或者组合了软件和硬件方面(在本文中可全部统称为“电路”、“模块”、“系统”)的实施例。此外,本发明的各个方面可采取实施在一个或多个其上体现有计算机可读程序代码的计算机可读介质中的计算机程序产品的形式。
[0102]可以利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电子、磁、光、电磁、红外或半导体系统、装置或设备,或者前述的任何适当组合。计算机可读存储介质的更具体的示例(非详尽列表)将包括以下各项:具有一条或多条导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPR0M或者闪存)、光纤、便携式密制盘只读存储器(CD-ROM)、光存储设备、磁存储设备、或者上述的任何适当组合。在本文档的上下文中,计算机可读存储介质可以是包含或存储供指令执行系统、装置或设备使用或者与指令执行系统、装置或设备结合使用的程序的任何有形介质。[0103]计算机可读信号介质可以包括传播的数据信号,其中体现有(例如在基带中或作为载波的一部分的)计算机可读程序代码。这种传播的信号可以采取多种形式中的任何一种,包括但不限于电磁、光或其任何适当组合。计算机可读信号介质可以是任何不是计算机可读存储介质并且可以传送、传播或传输以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序的计算机可读介质。
[0104]可以使用任何合适的介质来传输在计算机可读介质上体现的程序代码,所述介质包括但不限于无线、有线、光缆、RF等等或者前述的任何适当组合。
[0105]用于执行本发明的各个方面的操作的计算机程序代码可用一种或多种编程语言的任何组合来编写,所述编程语言包括诸如Java、Smalltalk、或C++之类的面向对象的编程语言,以及传统的过程编程语言,例如“C”编程语言或相似的编程语言。程序代码可以用以下各项形式之一执行:完全在用户的计算机上执行、部分作为独立的软件包执行在用户的计算机上执行、部分在用户的计算机上执行并且部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可通过包括局域网(LAN)或广域网(WAN)在内的任何类型的网络连接到用户的计算机,或者可以(例如利用因特网服务提供商通过因特网)与外部计算机连接。
[0106]上文参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图图示和/或框图来描述本发明的各个方面。将会理解,流程图图示和/或框图的每一个块以及流程图图示和/或框图中的块的组合可以通过计算机程序指令来实现。这些计算机程序指令可被提供给通用计算机、专用计算机或者其他可编程数据处理装置的处理器以产生机器,以使得经由计算机或其他可编程数据处理装置的处理器执行的这些指令创建用于实现流在程图和/或框图的一个或多个块中指明的功能/动作的模块。
[0107]这些计算机程序指令还可以被存储在指导计算机、其他可编程数据处理装置或者其他设备以特定的方式工作的计算机可读介质中,以使得存储在计算机可读介质中的指令产生包括实现在流程图和/或框图的一个或多个块中指明的功能/动作的指令的制品。
[0108]计算机程序指令还可以被加载到计算机、其他可编程数据处理装置、或者其他设备上以使得在计算机、其他可编程装置或者其他设备上执行一系列的操作步骤以产生计算机实现的过程,从而使得在计算机或其他可编程装置上执行的指令提供用于实现流程图和/或框图的一个或多个块中指明的功能/动作的过程。
[0109]附图中的流程图和框图示出了根据本发明的各个实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。就此而言,流程图或框图中的每一个块可表示包括用于实现所指明的(一个或多个)逻辑功能的一个或多个可执行指令的代码的模块、片段或部分。在一些替换的实现方式中,块中所示的功能可以不按图中所示的次序发生。例如,接连示出的两个块实际上可以在实质上并发执行,或者这些块有时可以按相反的次序执行,这取决于所涉及的功能。框图和/或流程图图示的每一个块以及框图和/或流程图图示中的块的组合可以由执行指明的功能或动作的专用的基于硬件的系统实现,或者由专用硬件和计算机指令的组合实现。
[0110]虽然以上涉及本发明的实施例,但在不脱离本发明的基本范围的情况下可以设计出本发明的其他和进一步的实施例,并且本发明的范围由所附权利要求确定。
【权利要求】
1.一种系统,包括:多个叙事设备,每一个叙事设备被配置为响应于刺激事件基于故事的当前情景来产生效果,其中,所述效果是声觉效果和视觉效果中的至少一个效果,并且其中针对所述多个叙事设备中的至少一个设备的所述刺激事件包括所述多个叙事设备所位于的物理环境中的用户动作;并且控制器设备,被配置为基于所述故事的当前情景,通过调整所述多个叙事设备中的每一个设备的刺激事件和效果,来管理所述故事的重放。
2.如权利要求1所述的系统,其中所述故事包括多个刺激事件和效果对,其中所述多个刺激事件和效果对中的每一个对应于一个类型的叙事设备。
3.如权利要求2所述的系统,其中所述故事还包括一个或多个分支,其中所述一个或多个分支中的每一个包括两个或更多个故事线轨迹,其中所述两个或更多个故事线轨迹中的每一个包括至少一个所述刺激事件和效果对。
4.如权利要求3所述的系统,其中所述控制器设备还被配置为:基于所述叙事设备的类型将所述故事中的多个元素与兼容的叙事设备相关联。
5.如权利要求3所述 的系统,其中所述控制器设备被配置为:选择所述两个或更多个故事线轨迹中的一个轨迹,以用于所述故事的重放。
6.如权利要求5所述的系统,其中基于如下各项中的至少一项选择所述故事线轨迹:所述故事的聚合状态、基于先前播放过的故事的历史状态、用户的用户概要、以及关于用户的信息。
7.如权利要求1所述的系统,其中所述控制器设备还被配置为通过以下各项确定所述多个叙事设备:检测在所述物理环境内存在的叙事设备;确定存在的叙事设备中的哪些设备可用于所述故事的重放;并且通过确定可用的叙事设备中的哪些设备与所述故事兼容来确定所述多个叙事。
8.如权利要求1所述的系统,其中所述视觉效果包括如下各项中的至少一项:真实投影、虚拟显示、和叙事设备的物理动作。
9.如权利要求1所述的系统,其中所述声学效果相对于产生所述声学效果的叙事设备来说是本地的或者非本地的。
10.如权利要求1所述的系统,其中针对所述多个叙事设备中的至少一个设备的另一个刺激事件包括如下各项中的至少一项:第一叙事设备进入第二叙事设备的预定距离内。
11.如权利要求1所述的系统,其中所述效果中的一个效果还基于第一叙事设备的位置。
12.如权利要求1所述的系统,其中所述刺激事件基于由第一叙事设备上的相机所确定的所述用户的位置。
13.如权利要求1所述的系统,其中所述刺激事件基于由第一叙事设备上的相机所确定的所述环境中的对象的位置。
14.如权利要求1所述的系统,其中针对所述多个叙事设备中的至少一个设备的另一个刺激事件包括所述物理环境内的用户的口头表述。
15.如权利要求1所述的系统,其中针对所述多个叙事设备中的至少一个设备的另一个刺激事件包括所述多个叙事设备中的至少一个设备的移动,其中所述移动包括该至少一个叙事设备的加速、滚动、摇摆和倾斜中的至少一项。
16.如权利要求1所述的系统,其中所述控制器设备还被配置为维护包括如下各项中的至少一项的状态数据: 所述故事中的当前重放位置; 在所述环境中已经发生的事件列表; 所述多个叙事设备中的至少一个设备的状态信息;以及 处于当前故事的情景中的用户的状态信息。
17.如权利要求1所述的系统,其中针对所述多个叙事设备中的至少一个设备的另一个刺激事件包括与现有的媒体设备相对应的动作。
18.如权利要求 1所述的系统,其中针对所述多个叙事设备中的至少一个设备的另一个刺激事件包括与所述叙事设备的物理的用户交互。
19.一种方法,包括: 提供多个叙事设备,每一个叙事设备被配置为响应于刺激事件基于故事的当前情景来产生效果,其中,所述效果是声觉效果和视觉效果中的至少一个效果,并且其中针对所述多个叙事设备中的至少一个设备的所述刺激事件包括所述多个叙事设备所位于的物理环境中的用户动作;并且 基于所述故事的当前情景,通过调整所述多个叙事设备中的每一个设备的刺激事件和效果,来管理所述故事的重放。
20.一种包括计算机程序代码的非暂时性计算机可读介质,当所述计算机程序代码被执行时,实施包括如下各项的操作: 提供多个叙事设备,每一个叙事设备被配置为响应于刺激事件基于故事的当前情景来产生效果,其中,所述效果是声觉效果和视觉效果中的至少一个效果,并且其中针对所述多个叙事设备中的至少一个设备的所述刺激事件包括所述多个叙事设备所位于的物理环境中的用户动作;并且 基于所述故事的当前情景,通过调整所述多个叙事设备中的每一个设备的刺激事件和效果,来管理所述故事的重放,其中所述管理是通过一个或多个计算机处理器的运行来实现的。
【文档编号】G06F19/00GK103657087SQ201310432411
【公开日】2014年3月26日 申请日期:2013年9月22日 优先权日:2012年9月19日
【发明者】艾瑞克·哈瑟蒂尼, 约瑟夫·盖尔林顿, 西奥多·魏-云·勒, 艾瑞克·慕赫艾姆, 加布里埃尔·塞巴斯汀·师鲁贝格 申请人:迪士尼企业公司