首页> 中国专利> VR晕动病减轻系统,头戴式显示器,VR晕动病减轻方法和程序

VR晕动病减轻系统,头戴式显示器,VR晕动病减轻方法和程序

摘要

提供了能够进一步减轻VR晕动病的VR晕动病减轻系统、头戴式显示器、VR晕动病减轻系统和程序。HMD(12)具有显示单元(38),当用户佩戴HMD(12)时,显示单元(38)被布置在用户眼睛的前面。摇动单元(42)能够摇动佩戴HMD(12)的用户的头部。娱乐设备(14)使显示单元(38)显示表示从视点观看的视图的运动图像。娱乐设备(14)根据视点的加速情况控制摇动单元(42)的摇动,以由显示单元(38)显示运动图像。

著录项

  • 公开/公告号CN112913225A

    专利类型发明专利

  • 公开/公告日2021-06-04

    原文格式PDF

  • 申请/专利权人 索尼互动娱乐股份有限公司;

    申请/专利号CN201980069436.7

  • 发明设计人 坂本顺;

    申请日2019-10-16

  • 分类号H04N5/64(20060101);A63F13/285(20060101);G02B27/02(20060101);G09F9/00(20060101);G09G5/00(20060101);G09G5/36(20060101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人张晓明

  • 地址 日本东京都

  • 入库时间 2023-06-19 11:14:36

说明书

技术领域

本发明涉及虚拟现实(VR)晕动病减轻系统、头戴式显示器、VR晕动病减轻方法和程序。

背景技术

PTL 1描述了使用与虚拟环境中的事件无关的低频振动来减轻由虚拟现实(VR)引起的晕动病(sickness)(称为VR晕动病)的技术。

[引文列表]

[专利文献]

[PTL 1]

美国专利申请公开号2015/0325027

发明内容

[技术问题]

本发明者研究了通过使用设置在头戴式显示器(HMD)的壳体的前表面上的振动马达等来摇动安装有HMD的用户的头部、用于减轻VR晕动病的技术。VR晕动病被认为是在表示从视点观看的状态的运动图像被显示在位于用户前面的HMD的显示部分上的情况下,由视点的运动和用户的体验之间的差异引起的。因此,假设可以通过使所显示的运动图像与头部的摇动协调来减轻VR晕动病。

然而,PTL 1中描述的技术使用如上所述与虚拟环境中的事件无关的低频振动来减轻VR晕动病,并且不执行HMD上的显示与振动的协调以减轻VR晕动病。

鉴于上述情况,本发明的目的是提供一种能够减轻VR晕动病的VR晕动病减轻系统、头戴式显示器、VR晕动病减轻方法和程序。

[问题的解决方案]

为了实现该目的,根据本发明的VR晕动病减轻系统包括:头戴式显示器,其包括当所述头戴式显示器被安装在用户上时位于所述用户前面的显示部分;摇动部分,其允许摇动安装有所述头戴式显示器的所述用户的头部;显示控制部分,其使所述显示部分显示表示从视点观看的状态的运动图像;以及摇动控制部分,其取决于在所述显示部分上显示的所述运动图像中的所述视点的加速状态来控制所述摇动部分的摇动。

在本发明的一方面,所述摇动控制部分取决于所述显示部分上显示的所述运动图像是否指示所述视点被加速的状态来控制是否摇动所述摇动部分。

在该方面,所述显示控制部分可以使所述显示部分显示表示从位于虚拟空间中的虚拟相机观看的所述虚拟空间的状态的运动图像,并且还包括确定部分,其确定所述虚拟相机是否在所述虚拟空间中进行加速运动,并且所述摇动控制部分可以取决于所述确定部分的确定结果来控制是否摇动所述摇动部分。

可选地,所述系统还可包括:获取部分,其获取摇动控制运动图像数据,所述摇动控制运动图像数据包括指示所述运动图像的运动图像数据、和允许识别所述运动图像中的帧图像的摇动控制数据,所述帧图像表示所述视点被加速的情况,其中所述显示控制部分使所述显示部分显示由包括在所述摇动控制运动图像数据中的所述运动图像数据所指示的运动图像,并且还包括确定部分,其基于包括在所述摇动控制运动图像数据中的所述摇动控制数据,确定表示所述视点被加速的情况的所述帧图像是否显示在所述显示部分上,并且所述摇动控制部分可以取决于所述确定部分的确定结果来控制是否摇动所述摇动部分。

在该方面,所述系统还可包括:摇动控制数据生成部分,其基于所述运动图像数据生成所述摇动控制数据。

可选地,所述系统还可包括:摇动控制运动图像数据生成部分,其生成所述摇动控制运动图像数据,所述摇动控制运动图像数据包括指示所述运动图像的所述运动图像数据和所述摇动控制数据,所述运动图像表示从位于所述虚拟空间中的所述虚拟相机观看的所述虚拟空间的状态,所述摇动控制数据是基于确定所述虚拟相机是否在所述虚拟空间中进行加速运动的结果生成的。

此外,在本发明的一方面,所述显示控制部分使所述显示部分显示表示从位于虚拟空间中的虚拟相机观看的所述虚拟空间的状态的所述运动图像,并且还包括确定部分,其确定所述虚拟相机是否在所述虚拟空间中进行加速运动,并且所述摇动控制部分基于由所述确定部分的确定结果和所述虚拟相机与位于所述虚拟空间中的虚拟对象之间的距离来控制所述摇动部分的摇动。

在该方面,所述摇动控制部分可以基于所述确定部分的确定结果、以及所述虚拟相机和所述虚拟相机的视角内的所述虚拟对象之间的距离来控制所述摇动部分的摇动。

此外,所述摇动控制部分可以基于所述确定部分的确定结果、以及所述虚拟相机与最接近所述虚拟相机的虚拟对象之间的距离来控制所述摇动部分的摇动。

此外,所述摇动控制部分可以基于所述确定部分的确定结果、以及所述虚拟相机与定位在所述虚拟空间中的虚拟对象之间的距离来确定是否摇动所述摇动部分。

可选地,所述摇动控制部分可以基于所述虚拟相机与位于所述虚拟空间中的虚拟对象之间的距离来控制所述摇动部分的摇动量。

此外,在本发明的一方面,所述摇动控制部分基于所述运动图像中的对象的每单位时间的移动量来控制所述摇动部分的摇动。

在该方面,所述摇动控制部分可以基于所述运动图像中的对象的每单位时间的移动量来控制是否摇动所述摇动部分。

可选地,所述摇动控制部分可以基于所述运动图像中的对象的每单位时间的移动量来控制所述摇动部分的摇动量。

此外,在本发明的一方面,所述系统还包括:获取部分,其获取摇动控制数据,所述摇动控制数据包括指示所述运动图像的运动图像数据和允许识别所述运动图像中的视点的加速度状态的摇动控制数据,其中所述显示控制部分使所述显示部分显示由包括在所述摇动控制运动图像数据中的所述运动图像数据指示的运动图像,并且还包括确定部分,其基于包括在所述摇动控制运动图像数据中的所述摇动控制数据,确定在所述显示部分上显示的所述运动图像中的视点的加速度状态,并且所述摇动控制部分取决于所述确定部分的确定结果来控制所述摇动控制部分的摇动。

在该方面,所述系统还可包括:摇动控制数据生成部分,其基于所述运动图像数据生成所述摇动控制数据。

可选地,所述系统还可包括:摇动控制运动图像数据生成部分,其生成所述摇动控制运动图像数据,所述摇动控制运动图像数据包括所述运动图像数据和所述摇动控制数据,所述运动图像数据指示表示从位于虚拟空间中的虚拟相机观看的所述虚拟空间的状态的运动图像,所述摇动控制数据是基于确定所述虚拟相机是否在所述虚拟空间中进行加速运动的结果生成的。

此在,在本发明的一方面,所述摇动部分被设置在所述头戴式显示器的壳体的前表面上。

此外,根据本发明的头戴式显示器包括:显示部分,当所述头戴式显示器被安装在用户上时,所述显示部分位于所述用户的前面;摇动部分,其允许摇动所述用户的头部;显示控制部分,其使所述显示部分显示表示从视点观看的状态的运动图像;以及摇动控制部分,其取决于在所述显示部分上显示的运动图像中的视点的加速状态来控制所述摇动部分的摇动。

此外,根据本发明的VR晕动病减轻方法包括以下步骤:当头戴式显示器被安装在用户上时,使位于所述用户前面的显示部分显示表示从视点观看的状态的运动图像;以及取决于在所述显示部分上显示的所述运动图像中的视点的加速状态,控制是否摇动允许安装有所述头戴式显示器的所述用户的头部的摇动部分。

此外,根据本发明的程序使计算机执行下列程序步骤:当头戴式显示器被安装在用户上时,使位于所述用户前面的显示部分显示表示从视点观看的状态的运动图像;以及取决于在所述显示部分上显示的所述运动图像中的视点的加速状态,控制是否摇动允许安装有所述头戴式显示器的所述用户的头部的摇动部分。

附图说明

图1是示出根据本发明实施例的娱乐系统的一般配置的图。

图2A是示出根据本发明实施例的头戴式显示器的配置的示例的图。

图2B是示出根据本发明实施例的娱乐装置的配置的示例的图。

图3是示出虚拟空间的示例的图。

图4是示意性示出摇动控制运动图像数据的数据结构的示例的图。

图5是示出在根据本发明实施例的娱乐装置中实现的功能的功能框图。

图6是示出在根据本发明实施例的娱乐装置中执行的处理流程的示例的流程图。

图7是示出在根据本发明实施例的娱乐装置中执行的处理流程的示例的流程图。

图8是示出虚拟空间的示例的图。

图9是示出在根据本发明实施例的娱乐装置中执行的处理流程的示例的流程图。

图10是示出在根据本发明实施例的娱乐装置中执行的处理流程的示例的流程图。

具体实施方式

将参考附图描述本发明的实施例。

图1是示出根据本发明实施例的娱乐系统10的一般配置的示例的图。图2A是示出根据本实施例的头戴式显示器(HMD)12的配置示例的图。图2B是示出根据本实施例的娱乐装置14的配置示例图。

如图1所示,根据本实施例的娱乐系统10包括HMD、娱乐装置14、中继装置16、显示器18、相机麦克风单元20和控制器22。

例如,如图2A所示,根据本实施例的HMD 12包括处理器30、存储部分32、通信部分34、输入/输出部分36、显示部分38、传感器部分40和摇动部分42。

处理器30例如是诸如微处理器之类的程序控制设备,其根据安装在HMD 12中的程序进行操作。

存储部分32例如包括诸如只读存储器(ROM)和随机存取存储器(RAM)之类的存储元件。存储部分32存储由处理器30执行的程序等。

通信部分34例如是诸如无线局域网(LAN)模块的通信接口。

输入/输出部分36例如是输入/输出端口,例如HDMI(注册商标)(高清多媒体接口)端口或通用串行总线(USB)端口。

显示部分38例如是诸如液晶显示器或有机电致发光(EL)显示器的显示器,并且使其显示由娱乐装置14生成的视频等。如图1所示,当HMD 12被安装在用户上时,显示部分38位于用户的前面。显示部分38例如可以接收由娱乐装置14输出并由中继装置16中继的视频信号,并输出由该视频信号表示的视频。通过例如显示用于左眼的图像和用于右眼的图像,可以使根据本实施例的显示部分38显示三维图像。注意,显示部分38可以被配置为不能显示三维图像并且能够仅显示二维图像。

传感器部分40例如是诸如加速度传感器或运动传感器之类的传感器。传感器部分40可以以预定的采样率将诸如HMD 12的方向、旋转量和移动量之类的测量结果输出到处理器30。

在本实施例中,摇动部分42例如是根据输入信号摇动的设备。如图1所示,在本实施例中,摇动部分42被设置在HMD 12的壳体44的前表面上。摇动部分42例如是振动马达等振动器。另外,在摇动部分42是偏心马达的情况下,包括在摇动部分42中的轴可以作为通常沿前后方向延伸的轴旋转以振动摇动部分42。

在图1中的示例中,在HMD 12的壳体44的前表面的中心提供一个摇动部分42。此外,摇动部分42可以摇动安装有HMD 12的用户的头部。注意,可以在HMD 12中提供多个摇动部分42。另外,在这种情况下,可以横向对称地设置多个摇动部分42。

根据本实施例的娱乐装置14例如是诸如游戏机、数字多功能光盘(DVD)游戏器或蓝光(注册商标)游戏器之类的计算机。根据本实施例的娱乐装置14例如通过执行存储的游戏程序或记录在光盘中的游戏程序、再现存储的内容或记录在光盘中的内容等来生成视频和声音。然后,根据本实施例的娱乐装置14经由中继装置16向显示器18输出表示生成的视频的视频信号和表示生成的声音的声音信号。

例如,如图2B所示,根据本实施例的娱乐装置14包括处理器50、存储部分52、通信部分54和输入/输出部分56。

处理器50例如是诸如中央处理单元(CPU)之类的程序控制设备,其根据安装在娱乐装置14中的程序进行操作。根据本实施例的处理器50包括基于从CPU馈送的图形命令和数据在帧缓冲器中绘制图像的GPU(图形处理单元)。

存储部分52例如是诸如ROM和RAM、硬盘驱动器等的存储元件。存储部52存储由处理器50执行的程序等。另外,在本实施方式的存储部分52中提供了GPU绘制图像的帧缓冲器的区域。

通信部分54例如是诸如无线LAN模块的通信接口。

输入/输出部分56是输入/输出端口,例如HDMI(注册商标)(高清多媒体接口)端口或USB端口。

根据本实施例的中继装置16例如是诸如包括控制电路、图像处理电路或声音处理电路的计算机之类的控制部分、诸如存储器之类的存储部分等。中继装置16将从娱乐装置14输出的视频信号和声音信号中继到HMD 12或显示器18。

根据本实施例的显示器18例如是液晶显示器,并且使其显示由从娱乐装置14输出的视频信号表示的视频。

根据本实施例的相机麦克风单元20例如包括:相机20a,其向娱乐装置14输出对象的捕获图像;麦克风20b,其获取周围声音,将声音转换为声音数据,并将声音数据输出到娱乐装置14。另外,根据本实施例的相机20a是立体相机。

HMD 12和中继装置16可以例如彼此无线地发送和接收数据。注意,HMD 12和中继装置16可以经由诸如HDMI电缆或USB电缆的电缆连接。娱乐装置14和中继装置16例如经由HDMI电缆或USB电缆连接。中继装置16和显示器18例如经由HDMI电缆连接。娱乐装置14和相机麦克风单元20例如经由辅助(AUX)电缆等连接。

根据本实施例的控制器22是用于向娱乐装置14输入操作的操作输入装置。用户可以通过按下包括在控制器22中的方向键或按钮或倾斜操作杆来使用控制器22来提供各种操作输入。在本实施例中,控制器22向娱乐装置14输出与操作输入相关联的输入数据。另外,根据本实施例的控制器22包括USB端口。通过经由USB电缆连接到娱乐装置14,控制器22可以经由该电缆向娱乐装置14输出输入数据。另外,根据本实施例的控制器22包括无线通信模块等,从而因此能够将输入数据无线地输出到娱乐装置14。

在本实施例中,例如,在娱乐装置14中执行第一人称视点游戏的程序。然后,例如,生成表示从位于图3所示的虚拟空间60中的虚拟相机62在捕获方向64上观看的状态的运动图像。在这方面,例如,以预定帧速率生成表示从虚拟相机62在帧中的位置在捕获方向64上观看的状态的帧图像。另外,图3所示的虚拟空间60是虚拟三维空间。虚拟相机62的位置和捕获方向64例如根据玩家对控制器22的操作或游戏的游戏状态(例如游戏中发生的事件)而变化。显示在HMD 12的显示部分38上的内容根据虚拟相机62的位置和捕获方向64的变化而变化。可以以上述预定帧速率执行根据游戏的游戏状态的处理,该处理包括虚拟相机62的位置和捕获方向64的更新、帧图像的生成和帧图像的显示。

此外,在本实施例中,例如,基于虚拟相机62的移动来确定虚拟相机62是否正在进行加速运动。这里,加速运动例如是指圆周运动、均匀加速运动、可变加速运动等。注意,加速运动所指的运动可以包括也可以不包括角加速度运动,例如均匀加速运动或可变加速运动。例如,在第一人称视点游戏中,当第一人称视点角色跳跃或冲刺时,虚拟相机62被确定为正在进行加速运动。在这方面,例如,可以基于虚拟相机62在预定数量的最新帧中的位置或捕获方向64来确定虚拟相机62是否正在进行加速运动。

然后,根据确定的结果,控制摇动部分42的摇动(例如,是否摇动摇动部分42)。在这方面,在摇动部分42是振动马达的情况下,可以控制振动马达,使振动具有10到20赫兹的频带和0.05到0.5G的加速度值(G值)。

如上所述,在本实施例中,取决于显示部分38上显示的运动图像是否表示虚拟相机62正在加速的情况来控制是否摇动所述摇动部分42。

在表示从视点观看的状态的运动图像被显示在位于用户前面的显示部分38上的情况下,安装有HMD 12的用户的晕动病(称为VR晕动病)被认为是由视点的运动和用户的体验之间的差异引起的,在上述示例中,视点的位置对应于虚拟相机62的位置。另外,视点的方向对应于捕获方向64。换句话说,上述示例中的VR晕动病被认为是由虚拟相机62的运动和用户的体验之间的差异引起的。特别是,包括感觉器官的集中的头部的体验被认为与VR晕动病显著相关。

在本实施例中,取决于在显示部分38上显示的运动图像中的视点的加速状态来控制摇动部分42的摇动。例如,如上所述,取决于在显示部38上显示的运动图像是否表示视点被加速的情况,控制是否摇动摇动部分42。因此,根据本实施例,协调所显示的运动图像和头部的摇动以使能够减轻VR晕动病。

注意,本发明可以应用于在显示部分38上显示由实际相机捕获的实际空间的运动图像的情况,也可应用于在显示部分38上显示由虚拟相机62捕获的虚拟空间60的运动图像的情况。例如,可以取决于运动图像是否表示实际相机正在加速的情况来控制是否摇动摇动部分42。另外,本发明可以应用于一般运动图像,例如视频内容的运动图像,其图像不是由实际相机或虚拟相机62捕获的运动图像,并且表示从视点观看的状态。

另外,如上所述,根据本实施例的摇动部分42附接到HMD 12的壳体44的前表面。因此,摇动部分42可以容易地附接到HMD 12。

注意,只要摇动部分42能够摇动安装有HMD 12的用户的头部,摇动部分42就不需要设置在HMD 12的壳体44的前表面上。例如,摇动部分42可以设置在壳体44的内表面上。另外,摇动部分42不需要设置在HMD 12中。

图4是示意性地示出根据本实施例的摇动控制运动图像数据66的数据结构的示例的图。在本实施例中,可以生成图4所示的摇动控制运动图像数据66。摇动控制运动图像数据66包括例如运动图像数据68和摇动控制数据70。

运动图像数据68例如是通过再现和表示从视点观察到的状态,指示在显示部分38上显示的运动图像的数据。在这方面,例如,当在显示部分38上显示根据虚拟相机62的运动生成的运动图像时,可以生成指示运动图像的运动图像数据68。

摇动控制数据70例如是能够识别由运动图像数据68指示的运动图像中的视点的加速度状态的数据。摇动控制数据70例如可以是能够识别帧图像的数据,该帧图像在由运动图像数据68指示的运动图像中表示视点被加速的情况。

在本实施例中,例如,假设运动图像数据68包括以预定帧速率生成的多个帧图像。另外,在本实施例中,假设摇动控制数据70包括与各个帧图像相关联的多个帧摇动控制数据。帧摇动控制数据可以是在关联帧图像表示视点被加速的情况下被设置为1的标志、在关联帧图像不表示视点被加速的情况下被设置为0的标志。在图4所示的摇动控制数据70中,示意性地用黑色表示的帧摇动控制数据与表示视点被加速的情况的帧图像相关联,即其值为1。

注意,摇动控制数据70的数据格式不限于上述数据格式。例如,摇动控制数据70可以是指示视点被加速的情况的帧图像的帧编号的数据。

例如,可以根据操作者在观看由运动图像数据68指示的运动图像时执行的操作来设置摇动控制数据70。例如,对于由操作者确定的表示视点被加速的情况的帧图像,操作者可以执行将1设置为与帧图像相关联的帧摇动控制数据的值的操作。然后,根据该操作,可以将1设置为帧摇动控制数据的值。

另外,可以使用图像分析技术,以对于每个帧图像,基于运动图像数据68确定帧图像是否表示视点被加速的情况。例如,可以基于以感兴趣的帧图像结束的预定数量的连续帧图像,来确定帧图像是否表示视点被加速的情况。然后,基于识别的结果,可以生成摇动控制数据70。

此外,例如,可以基于虚拟相机62的运动的确定结果来生成摇动控制数据70,并且指示虚拟相机62是否正在进行加速运动。例如,在上述示例中,可以将1设置为与在控制摇动部分42摇动时显示的帧图像相关联的帧摇动控制数据的值。

然后,在本实施例中,例如,根据由包括在摇动控制运动图像数据66中的运动图像数据68指示的运动图像的再现,可以基于包括在摇动控制运动图像数据66中的摇动控制数据70来执行摇动控制。例如,可以基于摇动控制数据70来确定是否在显示部分38上描绘表示视点被加速的情况的帧图像。然后,当确定要显示表示视点被加速的情况的帧图像时,可以控制摇动部分42摇动。例如,在与显示部分38上显示的帧图像相关联的帧摇动控制数据具有值1的情况下,摇动部分42可以摇动。

另外,例如,可以确定视点的加速度值或角加速度值。然后,可以根据加速度值或角加速度值来执行摇动控制。例如,可以控制摇动部分42,使得较大的加速度值或角加速度值使摇动部分42摇动得更剧烈。另外,与此相反,当显示在显示部分38上的运动图像表示视点被加速的情况时,摇动部分42可以被控制为摇动,使得摇动具有预定的幅度,而与视点的加速度值或角加速度值无关。

另外,在游戏分布(game distribution)的情况下,当正在玩游戏时,摇动控制运动图像数据66可以被实时地生成或发送到经由网络连接的另一娱乐系统10。然后,接收到摇动控制运动图像数据66的娱乐系统10可以显示由包括在摇动控制运动图像数据66中的运动图像数据68指示的运动图像。另外,接收到摇动控制运动图像数据66的娱乐系统10可以基于包括在摇动控制运动图像数据66中的摇动控制数据70,与显示的运动图像协调地控制摇动部分42的摇动。

将进一步描述在根据本实施例的娱乐装置14中实现的功能和由娱乐装置14执行的处理。

图5是示出根据本实施例的娱乐装置14中实现的功能的示例的功能框图。注意,根据本实施例的娱乐装置14不需要实现图5所示的所有功能,并且可以实现除图5所示的功能之外的功能。

如图5所示,根据本实施例的娱乐装置14例如在功能方面包括程序执行部分80、运动图像数据生成部分82、确定部分84、摇动控制数据生成部分86、摇动控制运动图像数据生成部分88、以及摇动控制运动图像数据存储部分90、摇动控制运动图像数据获取部分92、显示控制部分94和摇动控制部分96。

处理器50主要实现程序执行部分80、运动图像数据生成部分82、确定部分84、摇动控制数据生成部分86和摇动控制运动图像数据生成部分88。摇动控制运动图像数据存储部分90主要在存储部分52中实现。摇动控制运动图像数据获取部分92主要在处理器30或通信部分54中实现。显示控制部分94和摇动控制部分96主要在处理器50和输入/输出部分56中实现。

上述功能由处理器50通过执行安装在与计算机相对应的娱乐装置14中的程序来实现,该程序包括与功能相对应的指令。例如,经由诸如光盘、磁盘、磁带、磁光盘或闪存之类的计算机可读信息存储介质或经由因特网等将程序提供给娱乐装置14。

在本实施例中,程序执行部分80例如执行游戏程序之类的程序。

在本实施例中,运动图像数据生成部分82例如生成指示与程序执行部分80执行程序的结果相对应的运动图像的运动图像数据68,例如与游戏的游戏状态相对应的运动图像。运动图像数据生成部分82可以生成表示从位于虚拟空间60中的虚拟相机62观看的虚拟空间60的状态的运动图像。

例如,在本实施例中,确定部分84确定在显示部分38上显示的帧图像中的视点的加速状态。在这方面,确定部分84可以确定是否在显示部分38上描绘了表示视点被加速的情况的帧图像。例如,确定部分84可以确定虚拟相机62是否在虚拟空间60中进行加速运动。在这种情况下,如上所述,加速运动所指的运动可以包括也可以不包括角加速度。

例如,在本实施例中,摇动控制数据生成部分86生成上述摇动控制数据70。摇动控制数据生成部分86可以基于由确定部分84做出的确定的结果生成摇动控制数据70,并且指示位于虚拟空间60中的虚拟相机62是否在虚拟空间60中进行加速运动。

另外,摇动控制数据生成部分86可以基于指示表示从视点观看的状态的运动图像的运动图像数据68生成摇动控制数据70。例如,摇动控制数据生成部分86可以基于由运动图像数据生成部分82生成的运动图像数据68生成摇动控制数据70。

例如,在本实施例中,摇动控制运动图像数据生成部分88生成上述摇动控制运动图像数据66。在这方面,摇动控制运动图像数据生成部分88可以生成例如摇动控制运动图像数据66,其包括由运动图像数据生成部分82生成的运动图像数据68和由摇动控制数据生成部分86生成的摇动控制数据70。在这种情况下,运动图像数据68可以对应于指示表示从虚拟相机62观看的虚拟空间60的状态的运动图像的数据,并且摇动控制数据70可以对应于与确定虚拟相机62是否在虚拟空间60中进行加速运动的结果相对应的数据。

另外,包括在摇动控制运动图像数据66中的运动图像数据68不必是指示与由程序执行部分80执行程序的结果相对应的运动图像的运动图像数据68。如上所述,包括在摇动控制运动图像数据66中的运动图像数据68可以是,例如指示由实际相机捕获的实际空间的运动图像的运动图像数据68。另外,运动图像数据68不需要指示与游戏的游戏状态相对应的运动图像,并且可以指示例如电影之类的内容的运动图像。另外,由运动图像数据68指示的运动图像不需要是由实际相机或虚拟相机62捕获的运动图像。

在本实施例中,例如,摇动控制运动图像数据存储部分90存储上述摇动控制运动图像数据66。在这方面,摇动控制运动图像数据存储部分90可以存储由摇动控制运动图像数据生成部分88生成的摇动控制运动图像数据66。

另外,摇动控制运动图像数据66可以由用户购买。用户购买的摇动控制运动图像数据66可以存储在摇动控制运动图像数据存储部分90中。

在本实施例中,摇动控制运动图像数据获取部分92例如获取摇动控制运动图像数据66。在这方面,摇动控制运动图像数据获取部分92可以获取存储在摇动控制运动图像数据存储部分90中的摇动控制运动图像数据66。另外,摇动控制运动图像数据获取部分92可以接收从另一娱乐系统10发送的摇动控制运动图像数据66。

在本实施例中,显示控制部分94例如使显示部分38显示表示从视点观看的状态的运动图像。在这方面,例如,显示控制部分94可以经由中继装置16将运动图像发送到HMD12。然后,HMD 12可以使显示部分38显示接收到的运动图像。

另外,显示控制部分94可以使显示部分38显示表示从位于虚拟空间60中的虚拟相机62观看的虚拟空间60的状态的运动图像。另外,显示控制部分94可以使显示部分38显示表示从位于实际空间中的实际相机观看的实际空间的状态的运动图像。

另外,显示控制部分94可以使显示部分38显示由包括在由摇动控制运动图像数据获取部分92获取的摇动控制运动图像数据66中的运动图像数据68指示的运动图像。

在本实施例中,摇动控制部分96例如取决于在显示部分38上显示的运动图像中的视点的加速状态来控制摇动部分42的摇动。摇动控制部分96可以取决于在显示部分38上显示并且表示从视点观看的状态的运动图像是否表示视点被加速的情况来控制是否摇动部分42。在这方面,例如,摇动控制部分96可以经由中继装置16向HMD 12发送用于控制摇动部分42的控制信号。然后,HMD 12可以基于接收到的控制信号来控制摇动部分42的摇动。

另外,摇动控制部分96可以取决于由确定部分84的确定的结果来控制是否摇动所述摇动部分42。

另外,确定部分84可以基于由摇动控制运动图像数据获取部分92获取的摇动控制运动图像数据66中包括的摇动控制数据70,确定表示视点被加速的情况的帧图像是否被描绘在显示部分38上。例如,在与所显示的帧图像相关联的帧摇动控制数据的值为1的情况下,确定部分84可以确定表示视点正在加速的情况的帧图像被描绘在显示部分38上。然后,摇动控制部分96可以取决于由确定部分84的确定结果来控制是否摇动摇动部分42。

这里,将参照图6所示的流程图来描述在根据本实施例的娱乐装置14中执行的处理流程的示例。图6所示的处理示例是由摇动部分42基于虚拟相机62的运动进行的摇动控制处理的流程的示例。注意,在本处理示例中,假设由摇动控制运动图像数据生成部分88预先生成的空摇动控制运动图像数据66被存储在摇动控制运动图像数据存储部分90中。

另外,以预定的帧速率重复执行图6中S101到S107所示的处理。

首先,程序执行部分80基于从控制器22接收的操作信号和包括游戏中发生的事件的游戏的游戏状态来改变虚拟相机62的位置和捕获方向64(S101)。

然后,运动图像数据生成部分82生成表示在捕获方向64上从虚拟相机62观看的状态的帧图像(S102)。

然后,确定部分84确定虚拟相机62是否正在进行加速运动(S103)。

这里,假设确定虚拟相机62正在进行加速运动(S103:是)。在这种情况下,显示控制部分94执行用于使HMD 12的显示部分38显示由S102所示的处理生成的帧图像的显示控制,并且摇动控制部分96执行用于摇动摇动部分42的摇动控制(S104)。在这种情况下,摇动部分42摇动。

另一方面,假设虚拟相机62没有进行加速运动(S103:否)。在这种情况下,显示控制部分94执行显示控制,以使HMD 12的显示部分38显示由S102所示的处理生成的帧图像(S105)。在这种情况下,摇动部分42不摇动。然后,摇动控制部分96可以执行摇动控制以防止摇动部分42摇动。

当在S104或S105所示的处理结束时,摇动控制数据生成部分86在本循环中生成与在S103所示的处理中的确定结果相对应的帧摇动控制数据(S106)。在这方面,例如,在执行本循环中的S104所示的处理的情况下,生成值为1的帧摇动控制数据。另外,例如,在执行本循环中的S105所示的处理的情况下,生成值为0的帧摇动控制数据。

然后,摇动控制运动图像数据生成部分88更新存储在摇动控制运动图像数据存储部分90中的摇动控制运动图像数据66(S107)。在这方面,例如,通过S102处的处理生成的帧图像被添加到包括在摇动控制运动图像数据66中的运动图像数据68中。另外,例如,在本循环中通过在S106所示的处理生成的帧摇动控制数据被添加到包括在摇动控制运动图像数据66中的摇动控制数据70,其中帧摇动控制数据与帧图像相关联。然后,循环返回到S101所示的处理。

注意,不必执行在S106所示的处理和在S107所示的处理。

接下来,将参照图7所示的流程图来描述在根据本实施例的娱乐装置14中执行的另一处理的流程的示例。图7所示的处理示例是在再现由包括在由摇动控制运动图像数据获取部分92获取的摇动控制运动图像数据66中的运动图像数据68指示的运动图像期间执行的摇动部分42的摇动控制处理的流程的示例。

另外,以预定的帧速率重复执行图7中的S201到S204所示的处理。

首先,显示控制部分94识别本循环中由包括在摇动控制运动图像数据66中的运动图像数据68指示的的帧图像(S201)。

然后,确定部分84基于包括在摇动控制运动图像数据66中的摇动控制数据70,确定通过在S201所示的处理识别的帧图像是否表示视点被加速的情况(S202)。在这方面,在与S201所示的处理所识别的帧图像相关联的帧摇动控制数据的值为1的情况下,确定由S201所示的处理所识别的帧图像表示视点正在加速的情况。另外,在与由S201所示的处理所识别的帧图像相关联的帧摇动控制数据的值为0的情况下,确定由S201所示的处理所识别的帧图像不表示视点正在加速的情况。

这里,假设由S201所示的处理识别的帧图像被确定为表示视点被加速的情况(S202:是)。在这种情况下,显示控制部分94执行用于使HMD 12的显示部分38显示由S201所示的处理所识别的帧图像的显示控制,并且摇动控制部分96执行用于防止摇动部分42的摇动控制(S203)。在这种情况下,摇动部分42摇动。

另一方面,假设由S201所示的处理识别的帧图像被确定为不表示视点被加速的情况(S202:否)。在这种情况下,显示控制部分94执行用于使HMD 12的显示部分38显示由S102所示的处理生成的帧图像的显示控制(S204)。在这种情况下,摇动部分42不摇动。在这方面,摇动控制部分96可以执行摇动控制以防止摇动部分42摇动。

然后,循环返回到S201所示的处理。

注意,在本实施例中,摇动控制部分96可以基于由确定部分84确定的结果和位于图8所示的虚拟空间60中的虚拟对象100和虚拟相机62之间的距离d来控制摇动部分42的摇动。例如,摇动控制部分96可以基于确定部分84的确定结果和位于虚拟空间60中的虚拟对象100与虚拟相机62之间的距离d来控制是否摇动摇动部分42。

摇动控制部分96可以基于由确定部分84确定的结果以及位于虚拟相机62的视角(图像捕获范围)内的虚拟对象100和虚拟相机62之间的距离d来控制摇动部分42的摇动。在这方面,摇动控制部分96可以确定虚拟相机62的视点的位置P1和虚拟对象100的前表面上的位置P2之间的距离d,该位置P2最接近视点的位置P1。

另外,摇动控制部分96可以确定虚拟相机62和从多个虚拟对象中识别并位于离虚拟相机62最近的虚拟对象之间的距离d。

例如,假设多个虚拟对象被定位在虚拟相机62的视角内。在这种情况下,摇动控制部分96可以从虚拟对象中识别最接近虚拟相机62的虚拟对象。然后,摇动控制部分96可以确定所识别的虚拟对象和虚拟相机62之间的距离d。

然后,在确定部分84确定虚拟相机62正在虚拟空间60中进行加速运动并且距离d小于预定距离d1的情况下,摇动控制部分96可以执行用于摇动部分42的摇动控制。

另外,摇动控制部分96可以基于位于虚拟空间60中的虚拟对象100和虚拟相机62之间的距离d来控制摇动部分42的摇动量。例如,摇动控制部分96可以基于距离d来确定摇动部分42的摇动量。然后,摇动控制部分96可以控制摇动部分42,使摇动部分42以确定的摇动量摇动。在这方面,例如,所确定的摇动量随着距离d的减小而增加。在这种情况下,通过减小距离d控制摇动部分42摇动得更剧烈。

另外,摇动控制部分96可以使用图像分析技术来识别由运动图像数据68指示的运动图像中的对象。然后,摇动控制部分96可以识别帧图像内被识别对象每单位时间的移动量。在这种情况下,显示部分38可以显示三维图像,并且摇动控制部分96可以用二维图像替换三维图像以确定对象的移动量。换句话说,当确定对象的移动量时,不需要考虑对象在深度方向上的移动。

然后,摇动控制部分96可以基于所确定的移动量来控制摇动部分42的摇动。

摇动控制部分96例如可以基于所确定的移动量来控制是否摇动摇动部分42。例如,在所确定的移动量大于预定的移动量的情况下,摇动控制部分96可以执行摇动控制以摇动摇动部分42。

另外,摇动控制部分96可以基于所确定的移动量来控制摇动部分42的摇动量。例如,摇动部分42可以被控制为随着确定的移动量的增加而更剧烈地摇动。

例如,确定某帧的帧图像中的对象的中心位置与上述帧之前的帧的帧图像中的对象的中心位置之间的距离。然后,基于所确定的距离,可以控制摇动部分42的摇动。例如,在所确定的距离大于预定距离的情况下,摇动控制部分96可以执行摇动控制以摇动摇动部分42。另外,摇动部分42可被控制为随着确定的增加距离而更剧烈地摇动。

另外,在由运动图像数据68指示的运动图像中识别了多个对象的情况下,可以识别在帧图像内每单位时间具有最大移动量的对象之一。然后,可以基于被识别对象的每单位时间的移动量来控制摇动部分42的摇动。

另外,摇动控制部分96可以确定包括在帧的帧图像中的第一像素的像素值与包括在前一帧的帧图像中的第二像素的像素值之间的差,第二像素对应于第一像素。然后,摇动控制部分96可以基于为所有像素确定的像素值的差的总量来控制摇动部分42的摇动。例如,在确定的总量大于预定值的情况下,摇动控制部分96可以执行摇动控制以摇动摇动部分42。另外,摇动部分42可被控制为随着总量的增加而更剧烈地摇动。

这里,将参照图9所示的流程图来描述在根据本实施例的娱乐装置14中执行的另一处理的流程的示例。图9所示的处理示例是如图6所示的基于虚拟相机62的运动的摇动部分42的摇动控制处理的流程的另一示例。注意,本处理示例假设由摇动控制运动图像数据生成部分88预先生成的空(null)摇动控制运动图像数据66被存储在摇动控制运动图像数据存储部分90中。

另外,以预定的帧速率重复执行图9中的S301到S308所示的处理。

图9中在S301到S303处示出的处理类似于图6中在S101到S103处示出的处理,因此将不在下面描述。

假设在S303所示的处理中,确定虚拟相机62正在进行加速运动(S303:是)。在这种情况下,摇动控制部分96如上所述确定虚拟相机62和虚拟对象100之间的距离d,并且确定距离d是否小于预定距离d1(S304)。

在距离d小于预定距离d1的情况下,显示控制部分94执行显示控制,以使HMD 12的显示部分38显示由在S302所示的处理生成的帧图像,并且摇动控制部分96执行用于摇动摇动部分42的摇动控制(S305)。在这种情况下,摇动部分42摇动。

假设在S303所示的处理中,确定虚拟相机62不进行加速运动(S303:否)。或者,假设在S304所示的处理中,距离d被确定为等于或大于预定距离d1(S304:否)。在上述任一情况下,显示控制部分94执行显示控制,以使HMD 12的显示部分38显示由在S302所示的处理生成的帧图像(S306)。在这种情况下,摇动部分42不摇动。在这方面,摇动控制部分96可以执行摇动控制以防止摇动部分42摇动。

当在S305或S306所示的处理结束时,摇动控制数据生成部分86生成与在S303和S304所示的处理中的确定结果相对应的本循环中的帧摇动控制数据(S307)。在这方面,例如,在本循环中执行S305所示的处理的情况下,生成值为1的帧摇动控制数据。另外,例如,在本循环中执行S306所示的处理的情况下,生成值为0的帧摇动控制数据。

然后,摇动控制运动图像数据生成部分88更新存储在摇动控制运动图像数据存储部分90中的摇动控制运动图像数据66(S308)。在这方面,例如,通过在S302所示的处理生成的帧图像被添加到包括在摇动控制运动图像数据66中的运动图像数据68中。另外,通过在S307所示的处理生成的本循环中的帧摇动控制数据被添加到包括在摇动控制运动图像数据66中的摇动控制数据70中,帧摇动控制数据与帧图像相关联。然后,循环返回到S301所示的处理。

注意,不必执行在S307所示的处理和在S308所示的处理。

现在,将参照图10所示的流程图来描述在根据本实施例的娱乐装置14中执行的另一处理的流程的示例。图10所示的处理示例是在再现由包括在由图9的S301到S308所示的处理生成的摇动控制运动图像数据66中的运动图像数据68所指示的运动图像期间执行的摇动部分42的摇动控制处理的流程的示例。

另外,以预定的帧速率重复执行图10中的S401到S404所示的处理。

首先,显示控制部分94识别由包括在摇动控制运动图像数据66中的运动图像数据68指示的本循环中的帧图像(S401)。

确定部分84检查与在S401所示的处理中识别的帧图像相关联的帧摇动控制数据的值是否为1(S402)。

这里,假设确定部分84确认帧摇动控制数据的值为1(S402:是)。在这种情况下,显示控制部分94执行用于使HMD 12的显示部分38显示由S201所示的处理识别的帧图像的显示控制,并且摇动控制部分96执行用于摇动部分42的摇动控制(S403)。在这种情况下,摇动部分42摇动。

另一方面,假设确定帧摇动控制数据的值为0(S402:否)。在这种情况下,显示控制部分94执行用于使HMD 12的显示部分38显示由S102所示的处理生成的帧图像的显示控制(S404)。在这种情况下,摇动部分42不摇动。在这方面,摇动控制部分96可以执行摇动控制以防止摇动部分42摇动。

然后,循环返回到S401所示的处理。

在本实施例中,上述帧摇动控制数据可以是指示摇动量的数据。在这种情况下,例如,摇动控制数据生成部分86可以生成指示摇动量的帧摇动控制数据。在这方面,在防止摇动部分42摇动的情况下,摇动控制数据生成部分86可以生成值为0的帧摇动控制数据。在这种情况下,摇动控制部分96可以执行摇动控制,以便以由帧摇动控制数据指示的摇动量摇动摇动部分42。

注意,本发明不限于上述实施例。

例如,HMD 12、娱乐装置14和中继装置16之间的角色分配不限于上述分配。例如,可以在HMD 12中实现图5所示的部分(例如,显示控制部分94和摇动控制部分96)或全部功能。

另外,例如,摇动控制部分96可以响应于用户等的操作来打开和关闭摇动部分42的摇动控制。

另外,上述特定字符串和数值以及附图中的特定字符串和数值是说明性的,并且本发明不限于这些字符串或数值。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号