CN113730905A - 一种在虚拟空间中实现自由游走的方法及其装置 - Google Patents

一种在虚拟空间中实现自由游走的方法及其装置 Download PDF

Info

Publication number
CN113730905A
CN113730905A CN202111031191.4A CN202111031191A CN113730905A CN 113730905 A CN113730905 A CN 113730905A CN 202111031191 A CN202111031191 A CN 202111031191A CN 113730905 A CN113730905 A CN 113730905A
Authority
CN
China
Prior art keywords
virtual
virtual space
virtual camera
control signal
camera
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111031191.4A
Other languages
English (en)
Inventor
李沛伦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
As you can see (Beijing) Technology Co.,Ltd.
Original Assignee
Beijing Fangjianghu Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Fangjianghu Technology Co Ltd filed Critical Beijing Fangjianghu Technology Co Ltd
Priority to CN202111031191.4A priority Critical patent/CN113730905A/zh
Publication of CN113730905A publication Critical patent/CN113730905A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提供一种在虚拟空间中实现自由游走的方法,包括以下步骤:采集外接设备的控制信号;构建虚拟摄像机,并根据外接设备的控制信号,实时更新虚拟摄像机在虚拟空间中的变换矩阵;基于所述虚拟摄像机在虚拟空间中实时更新的变换矩阵,利用虚拟摄像机预先设定的裁剪矩阵,更新虚拟场景;以及将虚拟场景转换为可视画面。本发明所提供的在虚拟空间中实现自由游走的方法及装置可以使用户通过控制外接设备在虚拟场景中进行自由游览,提高用户使用体验。

Description

一种在虚拟空间中实现自由游走的方法及其装置
技术领域
本发明涉及计算机图像处理技术领域,特别涉及一种能够在虚拟空间中实现自由游走的方法及其装置。
背景技术
随着三维虚拟空间技术的发展,三维虚拟空间的游览方式也在逐步发展。目前市场上虚拟空间游览的主流方式为点位游走,即通过构建一系列的全景观察点位,在不同的观察点位上构建虚拟空间。例如WebGL天空盒,其原理为,将一组共六张图片贴在天空盒立方体的六个面上,用虚拟相机在天空盒内观察场景,即可以呈现出全景视觉效果。
上述方案根据有无真实的三维模型还可以进一步细分,其中一种采用的是真实三维模型游览,其在真实的三维空间位置上生成天空盒进行全景观察,可以实现更加丰富的视觉效果;另外一种由于没有使用真实的三维模型,因此视觉效果欠佳。这两种系统使用的均是点位观察的方式,而点位观察的方式存在一个明显的问题:点位之间的切换不流畅,带给用户的体验存在瓶颈。因此,需要一种能够在虚拟空间中实现自由游走的方法和装置,为用户提供更加自由的虚拟空间游览体验。
需要说明的是,以上背景技术部分所公开的信息仅用于增强对本发明背景的理解,因此其可能包含不构成对本领域技术人员已知的现有技术的信息。
发明内容
为了至少在一定程度上解决现有技术中存在的上述问题之一,本发明的第一个目的在于提供一种在虚拟空间中实现自由游走的方法。本发明的第二个目的在于还提供一种用于在虚拟空间中实现自由游走的装置。本发明的其他目的在于提供一种计算机设备、计算机可读存储介质和计算机程序产品。
为达到上述目的,根据本发明一实施例,本发明第一方面提供一种在虚拟空间中实现自由游走的方法,其包括以下步骤:采集外接设备的控制信号;构建虚拟摄像机,并根据外接设备的控制信号,实时更新虚拟摄像机在虚拟空间中的变换矩阵;基于虚拟摄像机在虚拟空间中实时更新的变换矩阵,利用虚拟摄像机预先设定的裁剪矩阵,更新虚拟场景;以及将虚拟场景转换为可视画面。
上述采集外接设备的控制信号的步骤可以包括:通过轮询持续采集外接设备的控制信号。
上述根据外接设备的控制信号,实时更新虚拟摄像机在虚拟空间中的变换矩阵的步骤可以包括:当轮询外接设备的一个或多个控制信号不为零时,计算轮询间隔时长与该控制信号值的乘积,作为虚拟摄像机的移动位置值和/或旋转角度值;以及根据虚拟摄像机的移动位置值和/或旋转角度值,更新虚拟摄像机在虚拟空间中的变换矩阵。
上述裁剪矩阵根据虚拟摄像机预设的近裁剪面、远裁剪面和视场角生成。上述虚拟场景可以通过WebGL加载真实三维模型构建。
根据本发明一实施例,上述在虚拟空间中实现自由游走的方法还可以包括远程服务器端接收外接设备控制信号的步骤,其中所述构建虚拟摄像机,并根据所述外接设备的控制信号,实时更新所述虚拟摄像机在虚拟空间中的变换矩阵的步骤,以及更新虚拟场景的步骤在所述远程服务器端执行;并且远程服务器端通过视频流渲染将虚拟场景转换为可视画面,并将可视画面以流的形式发送至本地客户端。
上述远程服务器端构建的虚拟摄像机可以是UE4摄像机,所述视频流渲染可以通过WebRTC进行传输。
为达到上述目的,根据本发明一实施例,本发明第二方面提供一种用于在虚拟空间中实现自由游走的装置,包括:信号采集模块,其采集外接设备的控制信号;虚拟摄像机模块,其构建虚拟摄像机,并根据外接设备的控制信号,实时更新虚拟摄像机在虚拟空间中的变换矩阵;虚拟场景更新模块,其基于虚拟摄像机在虚拟空间中实时更新的变换矩阵,利用虚拟摄像机预先设定的裁剪矩阵,更新虚拟场景;以及渲染模块,其将虚拟场景转换为可视画面。
根据本发明一实施例,上述用于在虚拟空间中实现自由游走的装置还可以包括远程服务器端,其接收信号采集模块采集的外接设备的控制信号,其中所述虚拟摄像机模块、虚拟场景更新模块以及渲染模块可以设置在该远程服务器端。
上述虚拟摄像机模块构建的虚拟摄像机可以是UE4摄像机。上述渲染模块可以通过WebRTC视频流渲染的方式将虚拟场景转换为可视画面,并将所述可视画面以流的形式发送至本地客户端。
为达到上述目的,根据本发明一实施例,本发明第三方面提供一种计算机设备,包括:处理器;存储装置;以及存储在存储装置上并可在处理器上运行的计算机程序,当处理器执行计算机程序时,实现上述在虚拟空间中实现自由游走的方法方法的步骤。
为达到上述目的,根据本发明一实施例,本发明第四方面提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述在虚拟空间中实现自由游走的方法的步骤。
为达到上述目的,根据本发明一实施例,本发明第五方面提供一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现上述在虚拟空间中实现自由游走的方法的步骤。
本发明所提供的在虚拟空间中实现自由游走的方法及装置可以使用户通过控制外接设备在虚拟场景中进行自由游览,包括移动、跳跃、旋转等,提高用户的使用体验。
附图说明
以下将详细参考附图示出的特定示例性实施例,对本发明的上述和其他特征进行说明,所述示例性实施例在下文中仅以说明的方式给出,因此并不限制本发明,其中:
图1示出可适用于本发明的在虚拟空间中实现自由游走的方法的一个具体实施方式的示例性系统架构。
图2示出根据本发明一实施例的在虚拟空间中实现自由游走的方法流程图。
图3示出图2所示流程图中根据外接设备的控制信号实时更新虚拟摄像机在虚拟空间中的变换矩阵的具体流程图。
图4示出将虚拟场景转换为可视画面的一个示例性实施例的具体流程图。
图5示出根据本发明另一实施例的通过服务器端渲染的方式在虚拟空间中实现自由游走的方法的流程图。
图6示出根据本发明一实施例的用于在虚拟空间中实现自由游走的装置的示意框图。
图7示出根据本发明另一实施例的用于在虚拟空间中实现自由游走的装置的示意框图。
图8示出根据本发明一实施例可以用来实现本发明实施例的设备的一个计算机系统的结构示意图。
具体实施方式
以下通过具体实施例对本发明进行详细描述,以使本领域普通技术人员能够容易地根据本说明书公开的内容实施本发明。以下所描述的实施例仅是本发明的一部分实施例,而非全部。基于本说明书所描述的实施例,本领域普通技术人员在不付出创造性劳动的前提下所获得的所有其它实施例,都属于本发明保护的范围。需要说明的是,在不发生冲突的情况下,本说明书中的实施例及实施例中的特征可以相互组合。
本文所使用的术语仅是为了说明特定实施例的目的,而非意在限制本发明。除非上下文另外特别指明,本文所使用的单数形式“一个”、“一种”和“该”也包括复数形式“多个”、“多种”和“该等”。本文所使用的“第一”、“第二”等词语仅用于区别不同特征、步骤、操作、元件和/或部件等,既不表示任何特定的技术含义,也不表示它们之间的必然逻辑顺序。本文所使用的词语“多个”可以指两个或两个以上,词语“至少一个”可以指一个、两个或两个以上。对于本文中提及的任何特征、步骤、操作、元件和/或部件,在上下文没有另外特别指明的情况下,一般可以理解为一个或多个。还应理解的是,本文使用的词语“包括”和/或“包含”指存在所述特征、步骤、操作、元件和/或部件,但不排除一个或多个其他特征、步骤、操作、元件、部件和/或其集合的存在或增加。本文所使用的词语“和/或”包括一个或多个相关列出项目的任何或全部组合。本文中的元件后缀“模块”和“单元”仅是用于便于描述,因此,其能够交替使用,并且不具有任何有区别的意义或功能。
当与本发明的说明有关的现有技术对于本领域的技术人员而言显而易见时,将省略其详细描述。还应理解的是,本说明书对各个实施例的描述着重于强调各实施例之间的不同之处,实施例间的相同或相似之处可以相互参考,本说明书为了简洁起见,不做一一赘述。
如图1示意性所示,其示出了可以适用于本发明的在虚拟空间中实现自由游走的方法的一个具体实施方式的示例性系统架构100。系统架构100可以包括终端设备101、102、103,以及网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信,其可以包括各种连接类型,例如有线、无线通信或者光纤电缆等。
用户可以使用终端设备101、102、103通过网络104与服务器105实现交互。终端设备101、102、103上可以安装有各种通信客户端应用,例如图像及视频拍摄应用、文本输入应用、网页浏览器应用、专业领域应用软件、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
在具体实施中,终端设备101、102、103可以根据实际需要实现为硬件,也可以实现为软件。当终端设备101、102、103实现为硬件时,可以是具有(触摸)显示屏并且支持语音、文本等各种输入的各种电子设备,包括但不限于个人电脑(包括笔记本计算机和台式计算机)、平板电脑、智能手机、车载终端、电子书阅读器、视频播放器等等。当终端设备101、102、103实现为软件时,可以安装在合适的电子设备中,实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现为单个软件或软件模块。应当理解,图1中及以上描述的终端设备101、102、103实例在此仅作为示例,而不应被理解为具体限定。
服务器105可以是提供各种服务的服务器,例如是对终端设备101、102、103输入的各种信息,例如控制信号、语音或文本信息提供分析、响应和支持等处理的后台服务器。后台服务器可以对接收到的控制信号、语音或目标文本等信息进行分析等处理,并将处理结果通过网络104反馈给终端设备101、102、103。
在具体实施中,服务器105可以根据实际需要实现为硬件,也可以实现为软件。当服务器105实现为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器105实现为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。应当理解,图1中及以上描述的服务器105实例在此仅作为示例,而不应被理解为具体限定。
需要说明的是,本申请实施例所提供的在虚拟空间中实现自由游走的方法可以由终端设备101、102、103执行,也可以由服务器105执行,也可以由终端设备101、102、103与服务器105共同配合执行。相应地,用于在虚拟空间中实现自由游走的装置可以设置于终端设备101、102、103中,也可以设置于服务器105中,也可以设置于终端设备101、102、103和服务器105中。
可以理解的是,当本申请实施例所提供的在虚拟空间中实现自由游走的方法由终端设备101、102、103执行时,上述系统架构100可以不包括网络104和服务器105。
应当理解,图1中的终端设备、网络和服务器的数目及种类仅仅是示意性的。在具体实施中,根据实际需要,可以具有任意数目和种类的终端设备、网络和服务器。
如图2所示,根据本发明一实施例在虚拟空间中实现自由游走的方法包括以下步骤:步骤S201,采集外接设备的控制信号,在该步骤中,可以通过轮询方式持续采集外接设备的控制信号;步骤S202,构建虚拟摄像机,并根据外接设备的控制信号,实时更新虚拟摄像机在虚拟空间中的变换矩阵;步骤S203,基于虚拟摄像机在虚拟空间中实时更新的变换矩阵,利用虚拟摄像机预先设定的裁剪矩阵,更新虚拟场景,本领域技术人员利用现有公知的工具可以很容易地实现虚拟场景的生成和更新,因此不再对此做过多赘述;以及步骤S204,将虚拟场景转换为可视画面。
在上述步骤S201中,可以通过轮询的方式持续采集外接设备的控制信号。所述的外接设备可以是各种常见或不常见的可以输入控制信号的外接设备,例如可通过USB、HDMI等接口有线连接或者可通过蓝牙、红外等无线连接的鼠标、触摸屏、旋转摇杆、游戏手柄、可感知人体肢体运动或面部表情的传感器等。
参照图3,其示出了上述步骤S202中根据外接设备的控制信号实时更新虚拟摄像机在虚拟空间中的变换矩阵的具体流程图。如图3所示,在步骤S301中,判断步骤S201中通过轮询方式所采集的外接设备的控制信号是否为零,如果控制信号为零,则接着继续进行下一轮询;如果通过轮询发现外接设备的某个或某几个控制信号不为零,则在步骤S302利用封装的库将不为零的控制信号转换为虚拟摄像机的参数,例如,计算两次轮询的间隔时长与该控制信号值的乘积,将其作为虚拟摄像机的移动位置值和/或旋转角度值。具体举例来说,例如外接设备是摇杆的情况下,摇杆设置成可以在前、后、左、右方向上移动,并且可以在自身轴向上旋转,这些移动和旋转分别对应多个信号输出端口。这样,根据摇杆移动和/或旋转的范围大小,端口可输出强度在[0,1]范围内的信号。对端口进行轮询时,可以设置轮询的频率为N(fps),这样,在每个1/N内,都可以求得信号输出强度和时间间隔1/N之间的乘积,因此在任意时刻,按照微积分中积分的概念,都可以求得此刻在前、后、左、右方向上累积移动的距离(移动位置值)和/或累积的旋转角度(旋转角度值);随后在步骤S303,根据所述虚拟摄像机的移动位置值和/或旋转角度值,更新虚拟摄像机在虚拟空间中的变换矩阵。之后虚拟摄像机可以据此更新裁剪出的虚拟空间的画面,从而帮助用户控制想要看到的虚拟空间画面。
参照图4,其示出了将虚拟场景转换为可视画面的一个示例性实施例的具体流程图。如图4所示,首先在步骤S401中通过加载真实三维模型来构建虚拟场景,该加载可以通过本领域已知的方式,例如通过WebGL来完成。随后在步骤S402中,根据上述步骤S302确定的虚拟摄像机的移动位置值和/或旋转角度值,更新虚拟摄像机的位置和视线方向,虚拟摄像机通过摄像机位置和视线方向组成变换矩阵,即场景投影矩阵(Projection Matrix)。在步骤S403中,通过预先设定的虚拟摄像机的近裁剪面(Near plane,也称为“近裁切面”、“近剪切面”等),远裁剪面(Far plane,也称为“远裁切面”、“远剪切面”等),视场角(Field ofView,Fov)构成裁剪矩阵(clip matrix,也称为“裁切矩阵”、“剪切矩阵”等)。在步骤S404中,通过生成的上述两个矩阵,即场景投影矩阵和裁剪矩阵,将虚拟场景变换为可视画面,最后在屏幕上呈现给用户。
以上结合附图2~4进行说明的本发明在虚拟空间中实现自由游走的方法通过本地渲染的方式实现。根据本发明另一实施例在虚拟空间中实现自由游走的方法也可以通过服务器端渲染的方式实现。以下将参照图5对通过服务器端渲染的方式在虚拟空间中实现自由游走的方法进行说明。
如图5所示,其示出了根据本发明另一实施例的通过服务器端渲染的方式在虚拟空间中实现自由游走的方法的流程图。步骤S501与图2中的步骤S201相同,即本地客户端在该步骤采集外接设备的控制信号。随后在步骤S502中,远程服务器端接收被本地客户端推送至其的步骤S501采集的外接设备控制信号。在步骤S503中,远程服务器端构建虚拟摄像机,并实时更新所述虚拟摄像机在虚拟空间中的变换矩阵,在远程服务器端构建的虚拟摄像机可以是UE4摄像机,并且可以在UE4中将外接设备控制信号转换成UE4摄像机的移动位置值和/或旋转角度值,并且还可以实现摄像机的前后左右移动、视角旋转、跳跃操作等等。在步骤S504中,在远程服务器端,根据所述虚拟摄像机在虚拟空间中实时更新的变换矩阵,更新虚拟场景,本领域技术人员利用现有公知的工具可以很容易地实现虚拟场景的生成和更新,因此对此不再做过多赘述。在步骤S505中,远程服务器端通过视频流渲染将虚拟场景转换为可视画面,并将所述可视画面以流的形式发送至本地客户端,可以将所述可视画面以流的形式通过WebRTC的方式将渲染出的画面传输推回至本地客户端,然后浏览器可以通过视频的方式将虚拟场景呈现给用户。
图6示出根据本发明一实施例用于在虚拟空间中实现自由游走的装置600的示意框图,该装置600具体可以应用于各种电子设备。如图6所示,根据本发明一实施例的用于在虚拟空间中实现自由游走的装置600包括:信号采集模块601,其采集外接设备的控制信号;虚拟摄像机模块602,其构建虚拟摄像机,并根据外接设备的控制信号,实时更新虚拟摄像机在虚拟空间中的变换矩阵;虚拟场景更新模块603,其基于虚拟摄像机在虚拟空间中实时更新的变换矩阵,利用虚拟摄像机预先设定的裁剪矩阵,更新虚拟场景;以及渲染模块604,其将虚拟场景转换为可视画面。
图7示出根据本发明另一实施例用于在虚拟空间中实现自由游走的装置700的示意框图,该装置700用于实施如图5所示的通过服务器端渲染的方式在虚拟空间中实现自由游走的方法。如图7所示,根据本发明另一实施例的用于在虚拟空间中实现自由游走的装置700与图6所示的装置600相比,除同样包括相同或类似的信号采集模块601之外,还包括远程服务器端,该远程服务器端接收所述信号采集模块601采集的外接设备的控制信号,并且与虚拟摄像机模块602、虚拟场景更新模块603以及渲染模块604相同或类似的虚拟摄像机模块602’、虚拟场景更新模块603’以及渲染模块604’均设置在所述远程服务器端,所述虚拟摄像机模块602’、虚拟场景更新模块603’以及渲染模块604’用于实施如图5所示的通过服务器端渲染的方式在虚拟空间中实现自由游走的方法中的对应步骤S503、S504和S505。
参考图8,其示出了可以用来实现本发明实施例的设备的一个计算机系统的结构示意图。需要说明的是,图8示出的设备仅仅是一个示例,不应理解为对本申请的实施例有任何限制作用。图8所示的计算机系统包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储单元808加载到随机访问存储器(RAM)803中的程序,执行各种适当的动作和处理。在RAM 803中,还存储有计算机系统操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标、麦克风、触摸屏幕等的输入单元806;包括诸如液晶显示器、发光二极管显示器等的显示屏幕、扬声器等的输出单元807;包括硬盘存储器等的存储单元808;以及包括诸如WAN/LAN卡、调制解调器等的网络接口卡的通信单元809。通信单元809经由诸如因特网、局域网等的网络执行通信处理。驱动器810也可以根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储单元808。
另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置可以实现本发明上述在虚拟空间中实现自由游走方法的步骤。
再一方面,本申请还提供了一种计算机程序产品,其包括计算机指令,该计算机指令被处理器执行时实现本发明上述在虚拟空间中实现自由游走方法的步骤。
特别地,以上参考附图中的流程图描述的实施例可以被实现为计算机软件程序。例如,本申请说明书公开的实施例包括一种计算机程序产品,该计算机程序产品包含用于执行附图中各流程图所示的本发明在虚拟空间中实现自由游走方法的程序指令或代码。在这样的实施例中,该计算机程序可以通过通信单元809从网络上下载和安装,以及/或者从可拆卸介质811安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本发明的方法。
需要说明的是,本申请所描述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM)、闪存、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等,或者上述的任意合适的组合。
可以通过一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用互联网服务提供商来通过互联网连接)。
附图中的流程图和框图,示例性示出了按照本申请各实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。应当注意,在有些可作为替换的实施方式中,方框中所标注的功能也可以以不同于附图中所示的顺序发生。例如,两个依次表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。还要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。上述单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器,其包括信号采集模块、虚拟摄像机模块、虚拟场景生成模块以及渲染模块。这些单元或模块的名称在某些情况下并不构成对该单元或模块本身的限定,例如,信号采集模块还可以被描述为“采集信号的模块”。
在本说明书中提及的所有文献都在本申请中引用作为参考,就如同每一篇文献被完整引用至本说明书作为参考。
此外应理解,在阅读了本发明的上述说明内容之后,本领域技术人员可以对本发明做出各种改动或修改,这些等同形式同样落入本发明的保护范围。

Claims (10)

1.一种在虚拟空间中实现自由游走的方法,其特征在于,包括以下步骤:
采集外接设备的控制信号;
构建虚拟摄像机,并根据所述外接设备的控制信号,实时更新所述虚拟摄像机在虚拟空间中的变换矩阵;
基于所述虚拟摄像机在虚拟空间中实时更新的变换矩阵,利用虚拟摄像机预先设定的裁剪矩阵,更新虚拟场景;以及
将所述虚拟场景转换为可视画面。
2.根据权利要求1所述的在虚拟空间中实现自由游走的方法,其特征在于,所述采集外接设备的控制信号的步骤包括:
通过轮询持续采集所述外接设备的控制信号。
3.根据权利要求2所述的在虚拟空间中实现自由游走的方法,其特征在于,所述根据外接设备的控制信号,实时更新虚拟摄像机在虚拟空间中的变换矩阵的步骤包括:
当轮询外接设备的一个或多个控制信号不为零时,计算轮询间隔时长与该控制信号值的乘积,作为所述虚拟摄像机的移动位置值和/或旋转角度值;以及
根据所述虚拟摄像机的移动位置值和/或旋转角度值,更新所述虚拟摄像机在虚拟空间中的变换矩阵。
4.根据权利要求3所述的在虚拟空间中实现自由游走的方法,其特征在于,所述裁剪矩阵根据所述虚拟摄像机预设的近裁剪面、远裁剪面和视场角生成。
5.根据权利要求1所述的在虚拟空间中实现自由游走的方法,其特征在于,所述虚拟场景通过WebGL加载真实三维模型构建。
6.根据权利要求1所述的在虚拟空间中实现自由游走的方法,其特征在于,还包括以下步骤:
远程服务器端接收所述采集的外接设备的控制信号;
其中,所述远程服务器端通过视频流渲染将所述虚拟场景转换为可视画面,并将所述可视画面以流的形式发送至本地客户端。
7.根据权利要求6所述的在虚拟空间中实现自由游走的方法,其特征在于,通过WebRTC进行所述视频流渲染的传输。
8.一种用于在虚拟空间中实现自由游走的装置,其特征在于,包括:
信号采集模块,其被配置为,采集外接设备的控制信号;
虚拟摄像机模块,其被配置为,构建虚拟摄像机,并根据所述外接设备的控制信号,实时更新所述虚拟摄像机在虚拟空间中的变换矩阵;
虚拟场景更新模块,其被配置为,基于所述虚拟摄像机在虚拟空间中实时更新的变换矩阵,利用虚拟摄像机预先设定的裁剪矩阵,更新虚拟场景;以及
渲染模块,其被配置为,将所述虚拟场景转换为可视画面。
9.根据权利要求8所述的用于在虚拟空间中实现自由游走的装置,其特征在于,还包括:
远程服务器端,其被配置为,接收所述信号采集模块采集的外接设备的控制信号,并将可视画面以流的形式发送至本地客户端。
10.一种计算机程序产品,包括计算机指令,其特征在于,该计算机指令被处理器执行时实现权利要求1-7中任一项所述方法的步骤。
CN202111031191.4A 2021-09-03 2021-09-03 一种在虚拟空间中实现自由游走的方法及其装置 Pending CN113730905A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111031191.4A CN113730905A (zh) 2021-09-03 2021-09-03 一种在虚拟空间中实现自由游走的方法及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111031191.4A CN113730905A (zh) 2021-09-03 2021-09-03 一种在虚拟空间中实现自由游走的方法及其装置

Publications (1)

Publication Number Publication Date
CN113730905A true CN113730905A (zh) 2021-12-03

Family

ID=78735362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111031191.4A Pending CN113730905A (zh) 2021-09-03 2021-09-03 一种在虚拟空间中实现自由游走的方法及其装置

Country Status (1)

Country Link
CN (1) CN113730905A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116896684A (zh) * 2023-08-02 2023-10-17 广州颖上信息科技有限公司 一种稳定器的虚拟控制系统及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018000987A (ja) * 2017-09-08 2018-01-11 株式会社コロプラ 表示制御方法および当該表示制御方法をコンピュータに実行させるためのプログラム
CN109069927A (zh) * 2016-06-10 2018-12-21 Colopl株式会社 用于提供虚拟空间的方法、用于使计算机实现该方法的程序以及用于提供虚拟空间的系统
CN110163938A (zh) * 2018-12-05 2019-08-23 腾讯科技(深圳)有限公司 动画的控制方法、装置、存储介质和电子装置
CN111277845A (zh) * 2020-01-15 2020-06-12 网易(杭州)网络有限公司 游戏直播控制方法及装置、计算机存储介质及电子设备
CN112017133A (zh) * 2020-10-22 2020-12-01 武汉中科通达高新技术股份有限公司 一种图像展示方法、装置及电子设备
CN112933606A (zh) * 2021-03-16 2021-06-11 天津亚克互动科技有限公司 游戏场景转换方法及装置、存储介质、计算机设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109069927A (zh) * 2016-06-10 2018-12-21 Colopl株式会社 用于提供虚拟空间的方法、用于使计算机实现该方法的程序以及用于提供虚拟空间的系统
JP2018000987A (ja) * 2017-09-08 2018-01-11 株式会社コロプラ 表示制御方法および当該表示制御方法をコンピュータに実行させるためのプログラム
CN110163938A (zh) * 2018-12-05 2019-08-23 腾讯科技(深圳)有限公司 动画的控制方法、装置、存储介质和电子装置
CN111277845A (zh) * 2020-01-15 2020-06-12 网易(杭州)网络有限公司 游戏直播控制方法及装置、计算机存储介质及电子设备
CN112017133A (zh) * 2020-10-22 2020-12-01 武汉中科通达高新技术股份有限公司 一种图像展示方法、装置及电子设备
CN112933606A (zh) * 2021-03-16 2021-06-11 天津亚克互动科技有限公司 游戏场景转换方法及装置、存储介质、计算机设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
宋伟: "《DirectX三维游戏编程》", vol. 1, 西安电子科技大学出版社, pages: 48 - 49 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116896684A (zh) * 2023-08-02 2023-10-17 广州颖上信息科技有限公司 一种稳定器的虚拟控制系统及方法
CN116896684B (zh) * 2023-08-02 2024-05-17 广州颖上信息科技有限公司 一种稳定器的虚拟控制系统及方法

Similar Documents

Publication Publication Date Title
CN106846497B (zh) 应用于终端的呈现三维地图的方法和装置
CN112291590A (zh) 视频处理方法及设备
CN112051961A (zh) 虚拟交互方法、装置、电子设备及计算机可读存储介质
CN113730905A (zh) 一种在虚拟空间中实现自由游走的方法及其装置
US11921994B2 (en) Method, apparatus, device, medium and program product for replying questions
CN110288523B (zh) 图像生成方法和装置
CN111710046A (zh) 交互方法、装置和电子设备
CN113722644B (zh) 基于外接设备在虚拟空间选取浏览点位的方法及其装置
CN111696214A (zh) 房屋展示方法、装置和电子设备
CN114357348B (zh) 显示方法、装置和电子设备
WO2024016880A1 (zh) 信息交互方法、装置、电子设备和存储介质
CN115454255B (zh) 物品展示的切换方法和装置、电子设备、存储介质
WO2023231666A1 (zh) 信息交互方法、装置、电子设备和存储介质
CN117519456A (zh) 信息交互方法、装置、电子设备和存储介质
CN117641040A (zh) 视频处理方法、装置、电子设备和存储介质
CN117640919A (zh) 基于虚拟现实空间的图片显示方法、装置、设备及介质
CN117519457A (zh) 信息交互方法、装置、电子设备和存储介质
CN114417204A (zh) 信息生成方法、装置和电子设备
CN117934769A (zh) 图像显示方法、装置、电子设备和存储介质
CN118057466A (zh) 基于扩展现实的控制方法、装置、电子设备和存储介质
CN117991889A (zh) 信息交互方法、装置、电子设备和存储介质
CN117631904A (zh) 信息交互方法、装置、电子设备和存储介质
CN117745981A (zh) 图像生成方法、装置、电子设备和存储介质
CN117687542A (zh) 信息交互方法、装置、电子设备和存储介质
CN117376655A (zh) 视频处理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20211228

Address after: Unit 05, room 112, 1st floor, office building, Nangang Industrial Zone, economic and Technological Development Zone, Binhai New Area, Tianjin 300457

Applicant after: BEIKE TECHNOLOGY Co.,Ltd.

Address before: 101300 room 24, 62 Farm Road, Erjie village, Yangzhen Town, Shunyi District, Beijing

Applicant before: Beijing fangjianghu Technology Co.,Ltd.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220330

Address after: 100085 8th floor, building 1, Hongyuan Shouzhu building, Shangdi 6th Street, Haidian District, Beijing

Applicant after: As you can see (Beijing) Technology Co.,Ltd.

Address before: Unit 05, room 112, 1st floor, office building, Nangang Industrial Zone, economic and Technological Development Zone, Binhai New Area, Tianjin 300457

Applicant before: BEIKE TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
RJ01 Rejection of invention patent application after publication

Application publication date: 20211203