CN112337091B - 人机交互方法、装置及电子设备 - Google Patents
人机交互方法、装置及电子设备 Download PDFInfo
- Publication number
- CN112337091B CN112337091B CN202011359883.7A CN202011359883A CN112337091B CN 112337091 B CN112337091 B CN 112337091B CN 202011359883 A CN202011359883 A CN 202011359883A CN 112337091 B CN112337091 B CN 112337091B
- Authority
- CN
- China
- Prior art keywords
- interactive
- area
- scene
- human
- content
- 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.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/837—Shooting of targets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/53—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
- A63F2300/538—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8076—Shooting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种人机交互方法、装置、电子设备及计算机可读存储介质;方法包括:在人机交互界面中显示多个交互场景各自对应的区域,其中,每个交互场景的默认显示区域与人机交互区域一致;在每个交互场景对应的区域中,显示所述交互场景位于所对应的区域中的内容;响应于区域设定操作,更新至少一个区域在人机交互界面中的覆盖范围,控制第一交互场景从第一区域切换到第一更新区域,以继续在所述第一更新区域中显示第一交互场景的内容;其中,第一交互场景是所述多个交互场景中对应所述第一区域的场景,且第一更新区域是被所述区域设定操作更新所述第一区域的覆盖范围得到的。通过本申请能够融合多场景以实现高效的人机交互。
Description
技术领域
本申请涉及计算机图形图像技术,尤其涉及一种人机交互方法、装置、电子设备及计算机可读存储介质。
背景技术
基于图形处理硬件的显示技术是实现人机交互的重要途径,随着大屏幕设备的日益普及,人机交互界面往往被用来同时展示不同来源的信息。
以视频播放为例,为了实现不同视频的同步显示,相关技术提供了针对图像的融合显示技术。例如,将不同视频中的视频帧拼接以编码为新的视频来播放,或者开启两个并行的播放实例,并各自在一个非全屏区域中播放。这样,在具有固定尺寸的人机交互界面中,可以同时显示多样化的视频内容,但是这种方式仅仅具有静态显示的功能,无法满足针对显示内容的多样化人机交互的需求。
综上,在显示多源信息的基础上如何能够支持灵活的人机交互,相关技术尚无有效解决方案。
发明内容
本申请实施例提供一种人机交互方法、装置、电子设备及计算机可读存储介质,能够实现融合多场景的灵活人机交互。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种人机交互方法,包括:
在人机交互界面中显示多个交互场景各自对应的区域,其中,每个所述交互场景默认以独占所述人机交互区域的方式显示;
在每个所述交互场景对应的区域中,显示所述交互场景位于所对应的区域中的内容;
响应于区域设定操作,更新至少一个所述区域在所述人机交互界面中的覆盖范围,控制第一交互场景从第一区域切换到第一更新区域,以继续在所述第一更新区域中显示所述第一交互场景的内容;
其中,所述第一交互场景是所述多个交互场景中对应所述第一区域的场景,且所述第一更新区域是被所述区域设定操作更新所述第一区域的覆盖范围得到的。
本申请实施例提供一种人机交互装置,所述装置包括:
显示模块,用于在人机交互界面中显示多个交互场景各自对应的区域,其中,每个所述交互场景的默认显示区域与所述人机交互区域一致;
所述显示模块,还用于在每个所述交互场景对应的区域中,显示所述交互场景位于所对应的区域中的内容;
调整模块,用于响应于区域设定操作,更新至少一个所述区域在所述人机交互界面中的覆盖范围,控制第一交互场景从第一区域切换到第一更新区域,以继续在所述第一更新区域中显示所述第一交互场景的内容;
其中,所述第一交互场景是所述多个交互场景中对应所述第一区域的场景,且所述第一更新区域是被所述区域设定操作更新所述第一区域的覆盖范围得到的。
在上述方案中,所述多个交互场景各自对应的区域是以邻接的方式排布在一起,且所述区域设定操作的类型包括移动操作;所述调整模块,还用于:在相邻任意两个区域的分割线上呈现分割线控件;响应于针对所述分割线控件的所述移动操作,将所述分割线按照所述移动操作同步移动,以使所述相邻任意两个区域的覆盖范围随着所述分割线的移动而变化。
在上述方案中,所述调整模块,还用于:当第二区域的覆盖范围未被所述区域设定操作所更新时,控制第二交互场景在所述第二区域中继续显示所述第二交互场景中的内容;其中,所述第二交互场景是所述多个交互场景中与所述第二区域对应的场景。
在上述方案中,在接收到所述区域设定操作之前,所述第一交互场景中第一部位的内容用于在所述人机交互界面的所述第一区域中显示;所述调整模块,还用于:当所述第一更新区域大于所述第一区域时,控制所述第一交互场景在第一更新区域中显示所述第一交互场景中第一更新部位的内容,所述第一更新部位包括所述第一部位,且所述第一更新部位与所述第一更新区域适配;当所述第一更新区域小于所述第一区域时,控制所述第一交互场景在第一更新区域中显示所述第一交互场景中第二更新部位的内容,所述第二更新部位包括于所述第一部位,且所述第一更新部位与所述第一更新区域适配。
在上述方案中,所述多个交互场景在各自对应的区域中显示的内容包括交互素材;所述装置还包括:互动模块,用于:显示所述交互场景位于所对应的区域中的内容之后,响应于针对所述第一交互场景在所述第一区域中显示的内容的互动操作,显示第一交互素材适配所述互动操作的反馈信息;其中,所述第一交互素材是所述第一交互场景中在所述第一区域中显示的内容中被所述互动操作触发的素材。
在上述方案中,当第二交互场景包括第二交互素材、且所述第二交互素材与所述第一交互素材是相同素材时,所述互动模块,还用于:在第二区域中显示所述第二交互素材适配所述互动操作的反馈信息;其中,所述第二区域与所述第二交互场景对应,所述反馈信息包括反馈过程和反馈结果至少之一。
在上述方案中,所述互动模块,还用于:当所述第一区域中的所述第一交互素材与所述第二区域中的所述第二交互素材同步显示时,与所述第一交互素材同步显示所述第二交互素材适配所述互动操作的反馈信息;当所述第一区域中的所述第一交互素材与所述第二区域中的所述第二交互素材未同步显示、且当所述第二交互场景中的所述第二交互素材在所述第二区域出现时,显示所述第一交互素材的反馈结果以及反馈结果至少之一。
在上述方案中,所述互动模块,还用于:第二交互场景包括第三交互素材、且所述第三交互素材与所述第一交互素材是具有关联关系时,在第二区域中显示所述第三交互素材适配所述互动操作的反馈信息;其中,所述第二区域与所述第二交互场景对应,所述反馈信息包括反馈过程和反馈结果至少之一。
在上述方案中,所述互动模块,还用于:获取所述第二交互场景中的多个候选交互素材的特征,基于所述多个候选交互素材的特征以及所述第一交互素材的特征调用神经网络模型,以预测得到与所述第一交互素材之间具有关联关系的第二交互素材;其中,所述神经网络模型的训练样本包括多个样本交互素材,所述训练样本的标注数据包括所述多个样本交互素材之间所具有的关联关系。
在上述方案中,每个所述交互场景是通过对应的二维或三维的交互场景模型实现的;所述显示模块,还用于:针对每个所述交互场景,执行以下处理:将所述交互场景的默认渲染区域调整为所述交互场景对应的区域;调用渲染引擎,以将所述交互场景模型中第一部位的内容渲染到所述交互场景对应的区域中;其中,所述第一部位是所述交互场景启动时默认显示的起始部位,或者是所述多个交互场景的交互场景模型中的相同部位。
在上述方案中,在每个所述交互场景对应的区域中,显示所述交互场景位于所对应的区域中的内容之前,所述显示模块,还用于:接收编辑指令,所述编辑指令用于编辑所述第一交互场景在所述第一区域中待显示的内容;响应于所述编辑指令,对所述第一交互场景在所述第一区域中待显示的内容执行相应的编辑操作;其中,所述编辑操作包括以下至少之一:在所述第一区域中待显示的内容中增加素材;在所述第一区域中待显示的内容中删除素材;在所述第一区域中待显示的内容中修改素材。
在上述方案中,所述显示模块,还用于:当所述多个交互场景初始化时,自动将所述人机交互界面均匀划分为与所述多个交互场景一一对应的区域,或者,响应于针对所述人机交互区域的划分操作,将所述人机交互界面划分为与所述多个交互场景一一对应的区域。
本申请实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的人机交互方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的人机交互方法。
本申请实施例具有以下有益效果:
将多个来源的内容承载到对应的交互场景中,从而赋予了内容随时进行人机交互的能力,通过为多个场景分配在人机交互界面中对应的区域,并支持通过区域设定操作来灵活调整各个交互场景的区域的覆盖范围,从而提供了灵活的融合多场景显示的能力,提高人机交互效率。
附图说明
图1是相关技术中的融合多图像的应用界面示意图;
图2A-2D是本申请实施例提供的人机交互的方法的应用模式示意图;
图3是本申请实施例提供的电子设备的结构示意图;
图4A-4D是本申请实施例提供的人机交互方法的流程示意图;
图5A-5B是本申请实施例提供的人机交互方法的场景示意图;
图6是本申请实施例提供的人机交互方法的场景图层关系图;
图7A-7C是本申请实施例提供的人机交互方法的渲染区域调整示意图;
图8是本申请实施例提供的人机交互方法的裁剪区域;
图9是本申请实施例提供的人机交互方法的裁剪示意图;
图10A-10B是本申请实施例的人机交互方法的球体旋转示意图;
图11是本申请实施例提供的人机交互方法的技术流程图;
图12A-12F是本申请实施例提供的人机交互方法的界面示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)Canvas:超文本标记语言标准的一部分,允许脚本语言动态渲染图像。
2)三维空间:指由长、宽、高三个维度所构成的空间。
3)WebGL:一种三维空间绘图协议,这种绘图技术标准允许把JavaScript和OpenGLES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5Canvas提供硬件三维加速渲染,这样网页开发人员就可以借助系统显卡来在浏览器里更流畅地展示三维场景和模型,还能创建复杂的导航和数据视觉化。
4)ThreeJS:一款运行在电脑和移动端浏览器中的三维引擎,可以用于在网页中创建各种三维场景,ThreeJS是通过对WebGL接口的封装与简化而形成的一个易用的三维图形库,包括了摄影机、光影、材质等各种对象。
在相关技术中,参见图1,图1相关技术中的融合多图像的应用界面示意图,在某款HTML5产品中,用户通过拖动中间的竖线可以调整左右画面的内容,左侧显示2020年电竞行业的情况,右侧则显示2010年的情况,响应于用户拖动竖线的操作可以改变这两个画面在屏幕中的显示面积,从而让用户感受电竞行业10年间的差异,上述产品利用了HTML5的Canvas和Video来实现,首先获取一个已经制作完成的2020年视频和一个已经制作完成的2010年视频,然后对这两个视频分别抓取画面得到两个画面,并将抓取后的两个画面按当前的屏幕分割面积重新合并到同一个Canvas画布中来渲染呈现,上述产品是通过抓取两个视频的画面然后再拼接在一起来实现内容显示,视频的方式导致了画面的不可变动性,整个内容在视频制作完成时就已经固定下来,用户只能改变两段视频在同一个画面中的显示面积而已,因而用户无法与视频中出现的人物或物体进行互动,只能单纯观看,缺乏交互功能。
针对相关技术在显示多源内容时缺乏互动特性的技术问题,本申请实施例提供一种人机交互方法、装置、电子设备和计算机可读存储介质,能够通过对多个交互场景进行划区域的渲染显示,使得分割出的多个区域的显示内容可以实时地发生动态变化,且用户还可以与交互场景中的任何物体进行互动,在画面上会实时反馈互动结果,画面可以根据用户的互动进行相应的变化,丰富了画面表现的同时也提高了用户的交互体验。
下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的用于实现人机交互方法的电子设备可以实施为笔记本电脑,平板电脑,台式计算机,机顶盒,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)等各种类型的用户终端。
在一个实施场景中,参见图2A,图2A是本申请实施例提供的人机交互的方法的应用模式示意图,适用于一些完全依赖终端400的计算能力即可完成第一交互场景110和第二交互场景130的相关数据计算的应用模式,例如单机版/离线模式的游戏,通过智能手机、平板电脑和虚拟现实/增强现实设备等终端400完成游戏的虚拟场景的显示,在实际应用中,用户往往面临多场游戏的对战邀请,由于多场游戏的对战邀请之间存在时间冲突,因此,可以将多场游戏对战的虚拟场景作为上述第一交互场景和第二交互场景,通过针对任意一个交互场景之间的互动反馈完成与多个交互场景之间的互动反馈,从而有效提高了人机交互效率。
当形成第一交互场景110和第二交互场景130的视觉感知时,终端400通过图形计算硬件计算显示所需要的数据,并完成显示数据的加载、解析和渲染,在图形显示硬件显示能够对虚拟场景形成视觉感知的图像帧,例如,在智能手机的显示屏幕呈现二维的图像帧,或者,在增强现实/虚拟现实眼镜的镜片上投射实现三维显示效果的图像帧。
作为示例,终端400运行客户端410(例如单机版的游戏应用),在客户端410的运行过程中,涉及第一交互场景110和第二交互场景130,这两个交互场景默认的显示区域都是图2A示出的完整的人机交互界面,但是在图2A中这两个交互场景只显示了局部的部位的内容,参见图2C-2D,图2C是本申请实施例提供的人机交互的方法的应用模式示意图,图2C中示出了第一交互场景独占人机交互界面的示意图,图2D中示出了第二交互场景独占人机交互界面的示意图,但是,在一些实施例中,即使在独占显示的情况下,人机交互界面也可能无法完整显示第一交互场景的全部部位,这种情况下可以通过各种方式切换显示部位,例如通过触控或体感操作来切换,通过图2A中将两个交互场景分别在各自对应的区域中显示的技术方案,可以实现融合多场景的显示,具体来说,控制第一交互场景110在第一区域100中显示第一交互场景110中第一部位的内容(这是因为第一交互场景110在独占人机交互区域时才能完整显示全部部位对应的内容),第一部位可以是第一交互场景110中能够恰好填充(例如,在设定的比例下填充)第一区域100的任意部位;控制第二交互场景130在第二区域120中显示显二交互场景130中的第二部位的内容(这是因为第二交互场景130在独占人机交互区域时才能完整显示全部部位对应的内容),第一区域100和第二区域120是客户端410的人机交互界面中不同的显示区域,通过调整第一区域100/第二区域120的覆盖范围,可以调整第一交互场景110/第二交互场景130中被显示的部位的尺寸。
在另一个实施场景中,参见图2B,图2B是本申请实施例提供的人机交互的方法的应用模式示意图,应用于终端400和服务器200,服务器和终端之间通过网络300进行通讯,一般地,适用于依赖服务器200的计算能力完成虚拟场景计算、并在终端400的人机交互界面中显示虚拟场景的应用模式。
以形成第一交互场景110和第二交互场景130的视觉感知为例,服务器200进行场景相关显示数据的计算并发送到终端400,终端400依赖于图形计算硬件完成计算显示数据的加载、解析和渲染,依赖于图形显示硬件显示虚拟场景以形成视觉感知,例如可以在智能手机的显示屏幕呈现二维的图像帧,或者,在增强现实/虚拟现实眼镜的镜片上投射实现三维显示效果的图像帧。
作为示例,终端400运行客户端410(例如网络版的游戏应用),通过连接游戏服务器(即服务器200)与其他用户进行游戏互动,终端400的人机交互界面中融合了第一交互场景110和第二交互场景130,具体来说,控制第一交互场景110在第一区域100显示第一交互场景110中第一部位的内容(这是因为第一交互场景110在独占人机交互区域时才能完整显示全部部位对应的内容),第一部位可以是第一交互场景110中能够恰好填充(例如,在设定的比例下填充)第一区域100的任意部位;控制第二交互场景130在第二区域120中显示第二交互场景130中的第二部位的内容(这是因为第二交互场景130在独占人机交互区域时才能完整显示全部部位对应的内容),第一区域100和第二区域120是客户端410的人机交互界面中的不同显示区域,通过调整第一区域100/第二区域120的覆盖范围,,可以调整第一交互场景110/第二交互场景130中被显示的部位的尺寸。
在一些实施例中,终端400可以通过运行计算机程序来实现本申请实施例提供的融合多场景的人机交互的方法,例如,计算机程序可以是操作系统中的原生程序或软件模块;可以是上述的客户端,客户端可以是本地(Native)应用程序(APP,Application),即需要在操作系统中安装才能运行的程序,例如游戏APP;客户端也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;客户端还可以是能够嵌入至任意APP中的游戏小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
本申请实施例可以借助于云技术(Cloud Technology)实现,云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、以及应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源。
作为示例,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端400可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、以及智能手表等,但并不局限于此。终端400以及服务器200可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
参见图3,图3是本申请实施例提供的电子设备的结构示意图,以电子设备实施为终端进行举例说明,图3所示的终端400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。终端400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口430包括使得能够呈现媒体内容的一个或多个显示装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块453,用于经由一个或多个与用户接口430相关联的显示装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的人机交互装置可以采用软件方式实现,图3示出了存储在存储器450中的融合多场景的人机交互装置455,其可以是程序和插件等形式的软件,包括以下软件模块:显示模块4551、调整模块4552以及互动模块4553,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分,将在下文中说明各个模块的功能。
将结合本申请实施例提供的终端的示例性应用和实施,说明本申请实施例提供的人机交互方法。
参见图4A,图4A是本申请实施例提供的人机交互方法的流程示意图,将结合图4A示出的步骤进行说明。
在步骤101中,在人机交互界面中显示多个交互场景各自对应的区域。
在一些实施例中,在人机交互界面中显示与多个交互场景对应的区域,可以通过以下技术方案实现:当多个交互场景初始化时,自动将人机交互界面均匀划分为与多个交互场景一一对应的区域,或者,响应于针对人机交互区域的划分操作,将人机交互界面划分为与多个交互场景一一对应的区域。
作为示例,多个交互场景对应的区域是排布在一起的,并且是对人机交互界面的整个区域进行划分得到的,可以自动将人机交互界面的至少部位划分为与多个交互对应的区域,或者,响应于针对人机交互区域的划分操作,将人机交互界面的至少部位划分为与多个交互对应的区域。
在一些实施例中,多个交互场景对应的区域可以在人机交互界面的整个区域中离散排布,参见图12E,图12E是本申请实施例提供的人机交互方法的界面示意图,人机交互界面301E中的第一区域302E、第三区域303E和第二区域305E之间互不相邻,三个区域是离散排布的,离散排布的多个区域之间的边界线可以作为用于调整区域覆盖范围的控件,或者每个离散排布的区域分别配置有对应的用户调整覆盖范围的控件,通过针对控件的缩放操作来调整对应区域的覆盖范围。
在一些实施例中,不同的区域对应的交互场景完全不同或不完全相同,参见图12F,图12F是本申请实施例提供的人机交互方法的界面示意图,图12F中的人机交互界面301F中包括三个区域:第一区域302F、第三区域303F和第二区域305F,其中,第一交互场景可以通过第一区域和第三区域进行显示,并且第一区域和第三区域中分别显示了第一交互场景中不同部位的内容,第二交互场景通过第二区域进行显示;可见,相同场景可以对应多个(至少两个)区域,多个区域总是显示该相同的交互场景的不同部位的内容,例如第一区域显示第一交互场景中虚拟对象的头,第三区域显示第一交互场景中虚拟对象的腿,并且第一交互场景在多个区域的视角可以相同或者不同,第一交互场景在第一区域的视角可以与第一交互场景在第三区域的视角相同或者不同。
作为示例,每个交互场景默认以独占人机交互区域的方式显示,每个交互场景的默认显示区域与人机交互区域一致,因此多个交互场景的默认的渲染区域是重叠的。例如,人机交互界面尺寸为10*10,则交互场景的默认渲染区域的尺寸为10*10。交互场景在独占人机交互区域时可能恰好显示交互场景中全部部位的内容,也可能只能够显示交互场景中个别部位的内容,对于后者,交互场景支持通过触控操作或体感操作来切换在对应的区域中所显示的部位。
在步骤102中,在每个交互场景对应的区域中,控制交互场景显示交互场景位于所对应的区域中的内容。
参见图12A,图12A是本申请实施例提供的人机交互方法的界面示意图,人机交互界面301A中包括多个区域,例如第一区域302A和第三区域303A,每个区域中显示各自对应的场景中的内容,例如,在第一区域中显示对应的第一交互场景,在第三区域中显示对应的第三交互场景,每个交互场景中只有与对应区域的适配的部位的内容被显示。交互场景可以为游戏场景,则多个区域可以统一采用相同视角,也可以各自采用被设定的视角,即第一交互场景与第三交互场景的视角为不同视角或者为相同视角。
在步骤103中,响应于区域设定操作,更新至少一个区域在人机交互界面中的覆盖范围,控制第一交互场景从第一区域切换到第一更新区域,以继续在第一更新区域中显示第一交互场景的内容。
作为示例,第一交互场景是多个交互场景中对应第一区域的场景,且第一更新区域是被区域设定操作更新第一区域的覆盖范围得到的,第一区域和第一更新区域是针对第一交互场景对应的一次区域设定操作而言,第一区域是更新前的区域,第一更新区域是更新后得到的区域,参见图12B,图12B是本申请实施例提供的人机交互方法的界面示意图,人机交互界面301B中的第一区域302B是图12A中的第一区域302A响应于区域设定操作得到的新区域(第一更新区域),人机交互区域中的第三区域303B是图12A中的第三区域303B响应于区域设定操作得到的新区域(第三更新区域),当接收到针对第一区域302B的新的区域设定操作时,则第一区域302B是对于第一区域302A而言的新的第一区域,并在新的第一区域的基础上更新得到新的第一更新区域,区域设定操作可以同时更新多个区域,例如,参见图12A-12B,区域设定操作同时更新了第一区域以及第三区域,即同时更新了多个交互场景对应区域的覆盖范围,第三区域以及对应的第三交互场景的调整以及显示可以参考第一交互场景以及第一区域的类似实施方式。
在一些实施例中,参见图4B,图4B是本申请实施例提供的人机交互方法的流程示意图,步骤103中响应于区域设定操作,更新至少一个区域在人机交互界面中的覆盖范围可以通过以下步骤实现。
在步骤1031中,在相邻任意两个区域的分割线上呈现分割线控件。
在步骤1032中,响应于针对分割线控件的移动操作,将分割线按照移动操作同步移动,以使相邻任意两个区域的覆盖范围随着分割线的移动而变化。
作为示例,多个交互场景各自对应的区域是以邻接的方式排布在一起,且区域设定操作的类型包括移动操作,参见图12A-12B,图12A以及图12B中的第一区域、第三区域以及第二区域之间存在分割线,分割线上呈现分割线控件304A和分割线控件304B,分割线控件可以是移动操作的触发入口,或者,可以仅显示分割线,将分割线作为移动操作的触发入口,响应于针对分割线控件的移动操作,将分割线按照移动操作的移动方向以及移动距离同步移动,以使相邻任意两个区域的覆盖范围随着分割线的移动而变化。
例如,针对图12A的人机交互界面,接收到针对分割线控件304A的移动操作,移动后得到如图12B的人机交互界面的分割线控件304B所示,移动操作的移动方向向左,分割线也向左移动,移动操作的移动距离是两个单位长度,分割线的移动距离也为两个单位长度,由于分割线发生了变化,所以该分割线的任意两个相邻区域(如图12A所示的第一区域和第三区域,以及图12B所示的第一更新区域以及第三更新区域)的覆盖范围也发生变化,例如,第一区域302A的覆盖范围变化为第一区域302B(第一区域302A的第一更新区域)的覆盖范围,第三区域303A的覆盖范围变化为第三区域303B(第三区域302A的第三更新区域)的覆盖范围。
在一些实施例中,区域设定操作可以有多种多样的形式,只要能够达到调整各个区域的覆盖范围的操作效果即可,例如,可以直接在人机交互界面中输入第一区域对应的第一更新区域的边界坐标,从而直接在人机交互界面上呈现第一更新区域。
在一些实施例中,人机交互界面中对应各个交互场景的区域可以是离散分布的,例如第一区域和第三区域不是相邻的,这种情况下,每个区域的内部可以配置有对应的边界线控件(例如,以覆盖范围的边界线本身作为边界线控件,或者,覆盖范围的边界线上的特定图形例如圆点来作为边界线控件),响应于控制边界线控件向外扩张/向内收缩的移动操作,可以使得区域的覆盖范围对应扩大/缩小,即可以对离散排布的区域的覆盖范围单独进行调整。
在一些实施例中,当第二区域的覆盖范围未被区域设定操作所更新时,还可以执行以下技术方案:控制第二交互场景在第二区域中继续显示第二交互场景中位于第二区域的内容;其中,第二交互场景是多个交互场景中与第二区域对应的场景。
作为示例,参见图12A-12B,人机交互界面301A和人机交互界面301B中均包括第二区域305A和305B,在第一区域和第三区域的覆盖范围被调整的时候,第二区域可以不受区域设定操作的影响,即第二区域的覆盖范围不变,则第二交互场景在第二区域中继续显示,例如显示第二交互场景中与第二区域适配的部位的内容,从而保证交互场景显示的连贯性。
在一些实施例中,参见图4C,图4C是本申请实施例提供的人机交互方法的流程示意图,步骤103中控制第一交互场景从第一区域切换到第一更新区域,以继续在第一更新区域中显示第一交互场景的内容,可以通过以下步骤实现。
在步骤1033中,当第一更新区域大于第一区域时,控制第一交互场景在第一更新区域中显示第一交互场景中第一更新部位的内容,第一更新部位包括第一部位。
在接收到区域设定操作之前,第一交互场景中第一部位的内容用于在人机交互界面的第一区域中显示;第一更新部位与第一更新区域适配,即第一更新部位的内容在设定的比例尺寸下恰好填充第一更新区域,参见图12A,在接收到区域设定操作之前,第一交互场景在第一区域302A中显示第一部位的内容,参见图12B,区域设定操将第一区域更新为第一更新区域,图12B中的第一区域302B(第一区域302A的第一更新区域)的覆盖范围大于图12A中的第一区域302A的覆盖范围,从而能够显示第一交互场景中更多部位的内容。例如,第一部位的内容是第一区域302A中呈现的角色的头部,第一更新部位的内容包括第一区域呈现的所有内容,即包括第一部位的内容,第一更新区域还显示了第一交互场景中第一部位之外的其他部位的内容,例如,第一区域302B(第一区域302A的第一更新区域)显示的内容不仅包括角色的头部,还包括角色的手臂。
在步骤1034中,当第一更新区域小于第一区域时,控制第一交互场景在第一更新区域中显示第一交互场景中第二更新部位的内容,第二更新部位包括于第一部位。
在接收到区域设定操作之前,第一交互场景中第一部位的内容用于在人机交互界面的第一区域中显示,第一更新部位与第一更新区域适配;参见图12A,在接收到区域设定操作之前,第一交互场景在第一区域302A中显示第一交互场景的第一部位的内容;参见图12C中的人机交互界面301C,第一区域302A被区域设定操作更新为第一更新区域,即图12C中的第一区域302C,第三区域303A被区域设定操作更新为第三更新区域,即图12C中的第三区域303C,第一区域302C(第一区域302A的第一更新区域)的覆盖范围小于图12A中的第一区域302A的覆盖范围,例如,第一部位的内容是第一区域302A中呈现的角色的全部背影,第一更新区域302C显示的内容仅为角色的背影的四分之一,第二更新部位包括于第一部位,即第一部位的内容除了包括第二更新部位的所有内容,还包括第二更新部位之外的其他部位的内容,例如,第一区域302A显示的内容不仅包括第一区域302C(第一区域302A的第一更新区域)显示的内容,还包括第一更新区域302C显示的内容之外的其他内容。
在一些实施例中,多个交互场景在各自对应的区域中显示的内容包括交互素材;参见图4D,图4D是本申请实施例提供的人机交互方法的流程示意图,步骤102中控制交互场景显示交互场景位于所对应的区域中的内容之后,还可以执行步骤104。
在步骤104中,响应于针对在第一区域中显示的第一交互场景的内容的互动操作,显示第一交互素材适配互动操作的反馈信息。
作为示例,响应于针对第一交互场景在第一区域中显示的内容的互动操作,显示第一交互素材适配互动操作的反馈信息,第一交互素材是第一区域中显示的内容中被互动操作触发的素材,响应于针对在第一区域中显示的第一交互场景的内容的互动操作,显示第一交互素材适配互动操作的反馈信息,反馈信息包括反馈过程以及反馈结果中至少之一,第一交互素材是预先配置的可以响应于特定互动操作的素材,可以是第一交互场景中的任意素材,例如可以是道具,可以是布景中的模型等等,互动操作可以是旋转操作,生成操作,隐藏操作等等,任意一个可交互素材对应有特定的互动操作以及配置的反馈信息,参见图12D,图12D是本申请实施例提供的人机交互方法的界面示意图,人机交互界面301D中包括第一区域302D和第二区域305D,第一区域对应第一交互场景,例如,第一区域中显示第一交互场景中的步枪306D,步枪306D相当于是第一交互素材,响应于针对步枪306D的添加八倍镜307D的操作,显示对应的反馈信息,反馈信息即为八倍镜307D,反馈过程为八倍镜安装至步枪306D的过程,反馈结果为具有八倍镜307D的步枪306D。
在一些实施例中,当第二交互场景包括第二交互素材、且第二交互素材与第一交互素材是相同素材时,还可以执行以下技术方案:在第二区域中显示第二交互素材适配互动操作的反馈信息;其中,第二区域与第二交互场景对应,反馈信息包括反馈过程和反馈结果至少之一。
在一些实施例中,上述在第二区域中显示第二交互素材适配互动操作的反馈信息,可以通过以下技术方案实现:当第一区域中的第一交互素材与第二区域中的第二交互素材同步显示时,与第一交互素材同步显示第二交互素材适配互动操作的反馈信息;当第一区域中的第一交互素材与第二区域中的第二交互素材未同步显示、且当第二交互场景中的第二交互素材在第二区域出现时,显示第一交互素材的反馈结果以及反馈结果至少之一。
作为示例,参见图12D,第二区域中的第二交互素材为步枪,即步枪308D,与第一交互素材相同,且第二交互场景中的第二交互素材在第二区域305D中显示,在第二区域中显示第二交互素材适配互动操作的反馈信息,反馈信息即为八倍镜309D,反馈过程为八倍镜安装至步枪308D的过程,反馈结果为具有八倍镜309D的步枪308D,若是第二交互素材未在第二区域中显示,则当第二交互素材在第二区域中显示时再显示反馈信息,可以直接显示反馈结果,也可以先显示反馈过程再显示反馈结果。
在一些实施例中,当第二交互场景包括第三交互素材、且第三交互素材与第一交互素材是具有关联关系时,还可以执行以下技术方案:在第二区域中显示第三交互素材适配互动操作的反馈信息;其中,第二区域与第二交互场景对应,反馈信息包括反馈过程和反馈结果至少之一。
作为示例,第三交互素材在第二区域中显示或未在第二区域中显示,第三交互素材适配互动操作的反馈信息在第二区域中与显示第一交互素材的反馈信息同步,或者,异步显示第三交互素材适配互动操作的反馈信息;其中,第二区域与第二交互场景对应,反馈信息包括反馈过程和反馈结果至少之一。
在一些实施例中,还可以执行以下技术方案:获取第二交互场景中的多个候选交互素材的特征,基于多个候选交互素材的特征以及第一交互素材的特征调用神经网络模型,以预测得到与第一交互素材之间具有关联关系的第二交互素材;其中,神经网络模型的训练样本包括多个样本交互素材,训练样本的标注数据包括多个样本交互素材之间所具有的关联关系。
作为示例,特征可以是交互素材的控制方式、功能等等,关联关系可以是具有类似功能的虚拟道具,可以是具有类似角色的虚拟对象,关联关系可以是第二交互场景中与第四交互素材的类型相同的素材,第四交互素材是在第一交互场景中与第一交互素材具有互动关系的素材。
在一些实施例中,每个交互场景是通过对应的二维或三维的交互场景模型实现的;步骤102中在每个交互场景对应的区域中,控制交互场景显示交互场景位于所对应的区域中的内容,可以通过以下技术方案实现:针对每个交互场景,执行以下处理:将交互场景的默认渲染区域调整为交互场景对应的区域;调用渲染引擎,以将交互场景模型中第一部位的内容渲染到交互场景对应的区域中;其中,第一部位是交互场景启动时默认显示的起始部位,或者是多个交互场景的交互场景模型中的相似部位。
作为示例,每个交互场景的第一部位是交互场景模型启动时默认显示的起始部位,或者是多个交互场景的交互场景模型中的相似部位,例如,游戏地图中的相同位置,通过渲染引擎分别改变两个场景的渲染范围,即区域的覆盖范围,将三维空间里的物体映射到二维平面的过程称为三维渲染,该过程由渲染引擎执行,通过渲染引擎可以将制作好的三维场景渲染到二维画面上,默认情况下它会将指定的三维场景渲染到整个人机交互界面,本申请实施例提供的人机交互方法中将交互场景的默认渲染区域调整为交互场景对应的区域,从而分别渲染多个三维场景到相同人机交互界面的不同区域中,渲染引擎每执行一次渲染指令后会得到一帧图像,然后将此帧图像更新到人机交互界面上的所有像素,这样画布上呈现的内容就发生了变化,在执行渲染引擎的渲染指令之前,如果通过剪裁方法定义了对应交互场景的区域,那么执行渲染指令时,渲染引擎就只会更新位于对应交互场景的区域内的像素,而处于对应交互场景的区域外的像素则保持不变。
在一些实施例中,在步骤102中在每个交互场景对应的区域中,控制交互场景显示位于交互场景所对应的区域中的内容之前,还可以执行以下技术方案:接收编辑指令,编辑指令用于编辑第一交互场景在第一区域中待显示的内容;响应于编辑指令,对第一交互场景在第一区域中待显示的内容执行相应的编辑操作;其中,编辑操作包括以下至少之一:在第一区域中待显示的内容中增加素材;在第一区域中待显示的内容中删除素材;在第一区域中待显示的内容中修改素材。
作为示例,编辑指令来自于服务器,编辑指令的编辑对象是场景,例如,通过编辑指令对交互场景进行编辑,可以在第一区域中的待显示的内容中增加素材,在第一区域中待显示的内容中删除素材,在第一区域中待显示的内容中修改素材,通过对交互场景的编辑可以完成场景构建,使得在作为渲染基础的场景可以实时应需求进行调整,例如,在游戏应用中,多个交互场景中的布景等具有灵活变化的需求,在显示相应交互场景的内容之前,通过后台服务器的编辑指令对交互场景进行修复构建,或者通过服务器预设的场景构建逻辑对交互场景进行变化调整,从而通过低成本资源为用户提供更加丰富的信息感知体验。
下面,将说明本申请实施例在一个实际的交互场景中的示例性应用,以交互场景中仅包括一个内容(球体)为例进行说明。
首先创建两个交互场景,参见图5A和图5B,图5A-5B是本申请实施例提供的人机交互方法的交互场景示意图,每个交互场景都是独立的三维空间,在交互场景中可以自由摆放物体、灯光和摄像机等等,例如,为每个交互场景添加了一个多面球形几何体(交互场景中的对象),并配置有不同的纹理材质,使得图5A中交互场景A的对象501A和图5B中交互场景B的对象501B呈现出不同的效果,交互场景A中的球体配置为基于物理渲染的材质,交互场景B中的球体配置为基于线框渲染的材质,交互场景A和交互场景B中两个球体大小一致,但在其他实施方式中不需要刻意保持多个交互场景中的对象大小保持一致,可以根据实际需要自由设置两个交互场景中的各种素材,两个交互场景中的对象越相似,越能提供两个交互场景处于相同空间中的视觉感受,然后可以通过三维引擎将交互场景中的对象渲染到画布上。
参见图6,图6是本申请实施例提供的融合多交互场景的人机交互方法的交互场景图层关系图,在向交互场景中添加三维素材之后,将两个交互场景重叠在一起,目的是让两个交互场景中各自放置的对象的相对位置更加接近,视觉上看起来觉得这些对象是被放在相同交互场景中的,更好呈现同屏不同态的视觉效果,参见图7A-7C,图7A-7C是本申请实施例提供的融合多交互场景的人机交互方法的渲染区域调整示意图,图7A中的人机交互界面包括两个渲染区域701A和702A,两个渲染区域交界处放置有分割线控件703A,通过按住分割线控件并左右滑动手指可以改变两个交互场景各自的区域,初始时在屏幕正中间放置一个交互场景分割线控件,用户通过按住此元件并左右滑动手指来改变分割线控件的位置,滑动时同时改变的还有两个交互场景各自在屏幕中的显示面积,比如,图7B中显示出当用户将此分割线控件703B往左滑动一段距离后,左侧交互场景的显示面积(对应区域701B)缩小,右侧交互场景的显示面积(对应区域702B)扩大,从而左侧交互场景中的素材被部位隐藏,右侧交互场景中的素材被更多呈现,比如,图7C中显示出当用户将分割线控件703C往右滑动一段距离后,左侧交互场景的显示面积(对应区域701C)增大,右侧交互场景的显示面积(对应区域702C)缩小,从而左侧交互场景中的素材被更多呈现,右侧交互场景中的素材被部位隐藏。
下面介绍获取并更新分割线控件位置的坐标信息的相关代码:
当用户手指在分割线控件按下并滑动时,实时记录并更新手指在屏幕上的坐标,并根据此坐标让分割线控件跟随手指一起移动。
在一些实施例中,通过WebGL渲染器分别改变两个交互场景的渲染范围,将三维空间里的物体映射到二维平面的过程称为三维渲染,进行这种渲染操作的软件称为渲染器,WebGL渲染器是ThreeJS封装好的一款WebGL渲染器,通过该渲染器可以将制作好的交互场景渲染到二维画面上,默认情况下它会根据显示设备的屏幕尺寸、摄像机朝向和摄像机视口范围将指定的交互场景渲染到整个屏幕画面,在本申请实施例提供的融合多交互场景的人机交互方法中需要改变默认渲染方式,从而分别渲染两个交互场景到相同画面的不同显示区域中,WebGL渲染器提供了setScissor这个剪裁方法,可以在Canvas画布上定义一个局部矩形区域,这个局部矩形区称为剪裁框或剪裁区域,setScissor剪裁方法的功能是控制WebGL渲染器的渲染指令在画布中的影响范围,setScissor通过传递给它的4个参数来确定裁剪区域,4个参数依次为:裁剪区域左上角的横坐标、纵坐标、裁剪区域的宽度、高度,参见图8,图8是本申请实施例提供的融合多交互场景的人机交互方法的裁剪区域,图8中的阴影区域是一个裁剪区域,它由其左上角在画布中的坐标和设定的某个宽度、高度共同确定,WebGL渲染器每执行一次渲染指令后会得到一帧图像,然后将此帧图像更新到Canvas画布上的所有像素,这样画布上呈现的内容就发生了变化,在执行WebG L渲染器的渲染指令之前,如果通过setScissor剪裁方法定义了剪裁区域,那么执行渲染指令时,WebGL渲染器就只会更新位于剪裁区域内的像素,而处于裁剪区域外的像素则保持不变,参见图9,图9是本申请实施例提供的融合多交互场景的人机交互方法的裁剪示意图,图9显示了两个交互场景在某一时刻的裁剪区域示意图,本申请实施例中,两个交互场景的显示区域的总面积等于显示设备的屏幕总面积。
下面介绍设置裁剪区域和渲染过程的相关代码:
首先需要开启裁剪检测,改变WebGL渲染器的默认渲染流程,这样才能手动调整WebGL渲染器的渲染范围,然后根据分割线控件的位置算出两个交互场景各自在屏幕中的显示面积,最后以它们各自的显示面积做为渲染范围让WebGL渲染器将它们渲染到画布上。
在一些实施例中,可以通过手指滑动转动交互场景中的球体,从而与两个交互场景中的物体进行交互,通过手指在屏幕上滑动来改变球体的转向,滑动球体的响应范围是除分割线控件之外的所有区域,参见图10A-10B,图10A-10B是本申请实施例的融合多交互场景的人机交互方法的球体旋转示意图,初始时,球体的朝向如图10A所示,可以看到左半部位显示的是光滑球1201A,颜色偏白色,右半部位的线框球1202A靠右边缘的线框偏灰色,当旋转任意一个交互场景时,参见图10B,左半部位现在显示的是光滑球1201B,颜色偏黑色,而右半部位的线框球1202B靠右边缘的线框现在呈现偏白色,无论旋转的是哪个交互场景中的球体,都需要实时同步另一个交互场景中的球体并使其产生一致的旋转,尽量保证两个交互场景中的物体属性(位置、大小、旋转角度等)一致,能更好地让人觉得这些物体是存在于同一个空间中,当然交互方式不局限于旋转物体,也可以是让物体移动或者播放一段模型动画等。因为每个用户的操作方式都不同,理论上画面有近乎无限种可能的表现形式。
参见图11,图11是本申请实施例提供的融合多交互场景的人机交互方法的技术流程图,创建两个交互场景,并向其中分别放入模型,然后把两个交互场景重叠在一起,侦听屏幕触摸事件,根据用户手指的滑屏操作实时更新并记录屏幕左右两侧的显示面积,根据显示面积修改WebGL渲染器的渲染范围,让画面左侧区域显示其中一个交互场景的内容,让画面右侧区域显示另一个交互场景的内容,可以在手机等移动端设备上实现屏幕画面的实时切割,在同一个屏幕画面中对同一个物体呈现两种不同的视觉效果,无需再借助视频等传统方式来实现。基于WebGL的实时渲染技术和用户的个性化操作,可以实现近乎无限种不同的画面表现效果,这是采用视频方式所无法做到的。此外用户也可以与交互场景中的物体产生互动,极大提升了用户交互的多样性,不再只局限在观看体验。
本申请实施例中的渲染区域分割可以是上下分割画面,或者分割更多数量的画面,WebGL渲染器底层是以矩形来定义裁剪范围的,但其操作单位是像素,在手机上看到的任意图形都是由这些在硬件上呈矩形排列的像素来实现的,所以理论上只要裁剪区域分得足够多,画面的分割表现就不仅限于矩形,三角形、圆形、菱形、任意异形都可以。
通过本申请实施例对多个交互场景进行分区域显示,实现了多个交互场景的集约化显示,相较于将已制作完成的图像或者视频进行融合处理,通过交互场景可以实现在不耗费额外人工成本的前提下灵活改变交互场景的显示内容,并且交互场景的显示内容可以与用户发生交互,从而可以提高人机交互效率。
下面继续说明本申请实施例提供的融合多场景的人机交互装置455的实施为软件模块的示例性结构,在一些实施例中,如图3所示,存储在存储器45的融合多场景的人机交互装置455中的软件模块可以包括:显示模块4551,用于在人机交互界面中显示多个交互场景各自对应的区域,其中,每个交互场景的默认显示区域与人机交互区域一致;显示模块4551,还用于在每个交互场景对应的区域中,控制交互场景显示交互场景位于所对应的区域中的内容;调整模块4552,用于响应于区域设定操作,更新至少一个区域在人机交互界面中的覆盖范围,控制第一交互场景从第一区域切换到第一更新区域,以继续在第一更新区域中显示第一交互场景的内容;其中,第一交互场景是多个交互场景中对应第一区域的场景,且第一更新区域是被区域设定操作更新第一区域的覆盖范围得到的。
在上述方案中,多个交互场景各自对应的区域是以邻接的方式排布在一起,且区域设定操作的类型包括移动操作;调整模块4552,还用于:在相邻任意两个区域的分割线上呈现分割线控件;响应于针对分割线控件的移动操作,将分割线按照移动操作同步移动,以使相邻任意两个区域的覆盖范围随着分割线的移动而变化。
在一些实施例中,调整模块4552,还用于:当第二区域的覆盖范围未被区域设定操作所更新时,控制第二交互场景在第二区域中继续显示第二交互场景中的内容;其中,第二交互场景是多个交互场景中与第二区域对应的场景。
在一些实施例中,在接收到区域设定操作之前,第一交互场景中第一部位的内容用于在人机交互界面的第一区域中显示;调整模块4552,还用于:当第一更新区域大于第一区域时,控制第一交互场景在第一更新区域中显示第一交互场景中第一更新部位的内容,第一更新部位包括第一部位,且第一更新部位与第一更新区域适配;当第一更新区域小于第一区域时,控制第一交互场景在第一更新区域中显示第一交互场景中第二更新部位的内容,第二更新部位包括于第一部位,且第一更新部位与第一更新区域适配。
在一些实施例中,多个交互场景在各自对应的区域中显示的内容包括交互素材;装置还包括:互动模块4553,用于:控制交互场景显示交互场景位于所对应的区域中的内容之后,响应于针对第一交互场景在第一区域中显示的内容的互动操作,显示第一交互素材适配互动操作的反馈信息;其中,第一交互素材是第一交互场景中在第一区域中显示的内容中被互动操作触发的素材。
在一些实施例中,当第二交互场景包括第二交互素材、且第二交互素材与第一交互素材是相同素材时,互动模块4553,还用于:在第二区域中显示第二交互素材适配互动操作的反馈信息;其中,第二区域与第二交互场景对应,反馈信息包括反馈过程和反馈结果至少之一。
在一些实施例中,互动模块4553,还用于:当第一区域中的第一交互素材与第二区域中的第二交互素材同步显示时,与第一交互素材同步显示第二交互素材适配互动操作的反馈信息;当第一区域中的第一交互素材与第二区域中的第二交互素材未同步显示、且当第二交互场景中的第二交互素材在第二区域出现时,显示第一交互素材的反馈结果以及反馈结果至少之一。
在一些实施例中,互动模块4553,还用于:第二交互场景包括第三交互素材、且第三交互素材与第一交互素材是具有关联关系时,在第二区域中显示第三交互素材适配互动操作的反馈信息;其中,第二区域与第二交互场景对应,反馈信息包括反馈过程和反馈结果至少之一。
在一些实施例中,互动模块4553,还用于:获取第二交互场景中的多个候选交互素材的特征,基于多个候选交互素材的特征以及第一交互素材的特征调用神经网络模型,以预测得到与第一交互素材之间具有关联关系的第二交互素材;其中,神经网络模型的训练样本包括多个样本交互素材,训练样本的标注数据包括多个样本交互素材之间所具有的关联关系。
在一些实施例中,每个交互场景是通过对应的二维或三维的交互场景模型实现的;显示模块4551,还用于:针对每个交互场景,执行以下处理:将交互场景的默认渲染区域调整为交互场景对应的区域;调用渲染引擎,以将交互场景模型中第一部位的内容渲染到交互场景对应的区域中;其中,第一部位是交互场景启动时默认显示的起始部位,或者是多个交互场景的交互场景模型中的相同部位。
在一些实施例中,在每个交互场景对应的区域中,控制交互场景显示交互场景位于所对应的区域中的内容之前,显示模块4551,还用于:接收编辑指令,编辑指令用于编辑第一交互场景在第一区域中待显示的内容;响应于编辑指令,对第一交互场景在第一区域中待显示的内容执行相应的编辑操作;其中,编辑操作包括以下至少之一:在第一区域中待显示的内容中增加素材;在第一区域中待显示的内容中删除素材;在第一区域中待显示的内容中修改素材。
在一些实施例中,显示模块4551,还用于:当多个交互场景初始化时,自动将人机交互界面均匀划分为与多个交互场景一一对应的区域,或者,响应于针对人机交互区域的划分操作,将人机交互界面划分为与多个交互场景一一对应的区域。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的人机交互方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的人机交互方法,例如,如图4A-4D示出的人机交互方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EP ROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部位,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部位的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
综上所述,通过本申请实施例将多个来源的内容承载到对应的交互场景中,从而赋予了内容随时进行人机交互的能力,通过为多个场景分配在人机交互界面中对应的区域,并支持通过区域设定操作来灵活调整各个交互场景的区域的覆盖范围,从而提供了灵活的融合多场景显示的能力,提高人机交互效率。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (15)
1.一种人机交互方法,其特征在于,所述方法包括:
在人机交互界面中显示多个交互场景各自对应的区域,其中,每个所述交互场景的默认显示区域与人机交互区域一致;
在每个所述交互场景对应的区域中,显示所述交互场景位于所对应的区域中的内容;
响应于区域设定操作,更新至少一个所述区域在所述人机交互界面中的覆盖范围,控制第一交互场景从第一区域切换到第一更新区域,以继续在所述第一更新区域中显示所述第一交互场景的内容;
其中,所述第一交互场景是所述多个交互场景中对应所述第一区域的场景,且所述第一更新区域是被所述区域设定操作更新所述第一区域的覆盖范围得到的。
2.根据权利要求1所述的方法,其特征在于,
所述多个交互场景各自对应的区域是以邻接的方式排布在一起,且所述区域设定操作的类型包括移动操作;
所述响应于区域设定操作,更新至少一个所述区域在所述人机交互界面中的覆盖范围,包括:
在相邻任意两个区域的分割线上呈现分割线控件;
响应于针对所述分割线控件的所述移动操作,将所述分割线按照所述移动操作同步移动,以使所述相邻任意两个区域的覆盖范围随着所述分割线的移动而变化。
3.根据权利要求1所述的方法,其特征在于,当第二区域的覆盖范围未被所述区域设定操作所更新时,所述方法还包括:
控制第二交互场景在所述第二区域中继续显示所述第二交互场景中的内容;
其中,所述第二交互场景是所述多个交互场景中与所述第二区域对应的场景。
4.根据权利要求1所述的方法,其特征在于,
在接收到所述区域设定操作之前,所述第一交互场景中第一部位的内容用于在所述人机交互界面的所述第一区域中显示;
所述控制第一交互场景从第一区域切换到第一更新区域,以继续在所述第一更新区域中显示所述第一交互场景的内容,包括:
当所述第一更新区域大于所述第一区域时,控制所述第一交互场景在第一更新区域中显示所述第一交互场景中第一更新部位的内容,所述第一更新部位包括所述第一部位,且所述第一更新部位与所述第一更新区域适配;
当所述第一更新区域小于所述第一区域时,控制所述第一交互场景在第一更新区域中显示所述第一交互场景中第二更新部位的内容,所述第二更新部位包括于所述第一部位,且所述第一更新部位与所述第一更新区域适配。
5.根据权利要求1所述的方法,其特征在于,
所述多个交互场景在各自对应的区域中显示的内容包括交互素材;
所述显示所述交互场景位于所对应的区域中的内容之后,所述方法还包括:
响应于针对所述第一交互场景在所述第一区域中显示的内容的互动操作,显示第一交互素材适配所述互动操作的反馈信息;
其中,所述第一交互素材是所述第一交互场景中在所述第一区域中显示的内容中被所述互动操作触发的素材。
6.根据权利要求5所述的方法,其特征在于,当第二交互场景包括第二交互素材、且所述第二交互素材与所述第一交互素材是相同素材时,所述方法还包括:
在第二区域中显示所述第二交互素材适配所述互动操作的反馈信息;
其中,所述第二区域与所述第二交互场景对应,所述反馈信息包括反馈过程和反馈结果至少之一。
7.根据权利要求6所述的方法,其特征在于,所述在第二区域中显示所述第二交互素材适配所述互动操作的反馈信息,包括:
当所述第一区域中的所述第一交互素材与所述第二区域中的所述第二交互素材同步显示时,与所述第一交互素材同步显示所述第二交互素材适配所述互动操作的反馈信息;
当所述第一区域中的所述第一交互素材与所述第二区域中的所述第二交互素材未同步显示、且当所述第二交互场景中的所述第二交互素材在所述第二区域出现时,显示所述第一交互素材的反馈结果以及反馈结果至少之一。
8.根据权利要求5所述的方法,其特征在于,当第二交互场景包括第三交互素材、且所述第三交互素材与所述第一交互素材是具有关联关系时,所述方法还包括:
在第二区域中显示所述第三交互素材适配所述互动操作的反馈信息;
其中,所述第二区域与所述第二交互场景对应,所述反馈信息包括反馈过程和反馈结果至少之一。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
获取所述第二交互场景中的多个候选交互素材的特征,基于所述多个候选交互素材的特征以及所述第一交互素材的特征调用神经网络模型,以预测得到与所述第一交互素材之间具有关联关系的第二交互素材;
其中,所述神经网络模型的训练样本包括多个样本交互素材,所述训练样本的标注数据包括所述多个样本交互素材之间所具有的关联关系。
10.根据权利要求1所述的方法,其特征在于,
每个所述交互场景是通过对应的二维或三维的交互场景模型实现的;
所述在每个所述交互场景对应的区域中,显示所述交互场景位于所对应的区域中的内容,包括:
针对每个所述交互场景,执行以下处理:
将所述交互场景的默认渲染区域调整为所述交互场景对应的区域;
调用渲染引擎,以将所述交互场景模型中第一部位的内容渲染到所述交互场景对应的区域中;
其中,每个所述交互场景模型中的所述第一部位是所述交互场景模型启动时默认显示的部位,或者是所述多个交互场景的交互场景模型中的相似部位。
11.根据权利要求1所述的方法,其特征在于,在每个所述交互场景对应的区域中,显示所述交互场景位于所对应的区域中的内容之前,所述方法还包括:
接收编辑指令,所述编辑指令用于编辑所述第一交互场景在所述第一区域中待显示的内容;
响应于所述编辑指令,对所述第一交互场景在所述第一区域中待显示的内容执行相应的编辑操作;
其中,所述编辑操作包括以下至少之一:
在所述第一区域中待显示的内容中增加素材;
在所述第一区域中待显示的内容中删除素材;
在所述第一区域中待显示的内容中修改素材。
12.根据权利要求1所述的方法,其特征在于,所述在人机交互界面中显示与多个交互场景对应的区域,包括:
当所述多个交互场景初始化时,自动将所述人机交互界面均匀划分为与所述多个交互场景一一对应的区域,或者,响应于针对所述人机交互区域的划分操作,将所述人机交互界面划分为与所述多个交互场景一一对应的区域。
13.一种人机交互装置,其特征在于,所述装置包括:
显示模块,用于在人机交互界面中显示多个交互场景各自对应的区域,其中,每个所述交互场景的默认显示区域与人机交互区域一致;
所述显示模块,还用于在每个所述交互场景对应的区域中,显示所述交互场景位于所对应的区域中的内容;
调整模块,用于响应于区域设定操作,更新至少一个所述区域在所述人机交互界面中的覆盖范围,控制第一交互场景从第一区域切换到第一更新区域,以继续在所述第一更新区域中显示所述第一交互场景的内容;
其中,所述第一交互场景是所述多个交互场景中对应所述第一区域的场景,且所述第一更新区域是被所述区域设定操作更新所述第一区域的覆盖范围得到的。
14.一种电子设备,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至12任一项所述的人机交互方法。
15.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至12任一项所述的人机交互方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011359883.7A CN112337091B (zh) | 2020-11-27 | 2020-11-27 | 人机交互方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011359883.7A CN112337091B (zh) | 2020-11-27 | 2020-11-27 | 人机交互方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112337091A CN112337091A (zh) | 2021-02-09 |
CN112337091B true CN112337091B (zh) | 2022-06-07 |
Family
ID=74366010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011359883.7A Active CN112337091B (zh) | 2020-11-27 | 2020-11-27 | 人机交互方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112337091B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113095191A (zh) * | 2021-04-02 | 2021-07-09 | 上海元云信息技术有限公司 | 一种基于微信小程序的实物场景互动方法 |
CN113160968B (zh) * | 2021-04-13 | 2022-10-28 | 阜外华中心血管病医院 | 基于移动互联网的个性化诊断系统与应用方法 |
CN113318444B (zh) * | 2021-06-08 | 2023-01-10 | 天津亚克互动科技有限公司 | 角色的渲染方法和装置、电子设备和存储介质 |
CN114546199B (zh) * | 2022-02-17 | 2023-09-26 | 北京百度网讯科技有限公司 | 一种图像处理方法、装置、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106502560A (zh) * | 2016-10-11 | 2017-03-15 | 北京小米移动软件有限公司 | 显示控制方法及装置 |
CN107391117A (zh) * | 2017-06-28 | 2017-11-24 | 广州神马移动信息科技有限公司 | 轻应用的分屏处理方法、设备及电子设备 |
CN111381738A (zh) * | 2018-12-27 | 2020-07-07 | 北京小米移动软件有限公司 | 界面显示方法、装置、电子设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7403211B2 (en) * | 2003-02-13 | 2008-07-22 | Lumapix, Inc. | Method and system for interactive region segmentation |
US9141718B2 (en) * | 2005-06-03 | 2015-09-22 | Apple Inc. | Clipview applications |
CN111228793B (zh) * | 2020-01-21 | 2021-11-19 | 腾讯科技(深圳)有限公司 | 交互界面的显示方法和装置、存储介质及电子装置 |
-
2020
- 2020-11-27 CN CN202011359883.7A patent/CN112337091B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106502560A (zh) * | 2016-10-11 | 2017-03-15 | 北京小米移动软件有限公司 | 显示控制方法及装置 |
CN107391117A (zh) * | 2017-06-28 | 2017-11-24 | 广州神马移动信息科技有限公司 | 轻应用的分屏处理方法、设备及电子设备 |
CN111381738A (zh) * | 2018-12-27 | 2020-07-07 | 北京小米移动软件有限公司 | 界面显示方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112337091A (zh) | 2021-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112337091B (zh) | 人机交互方法、装置及电子设备 | |
US11386623B2 (en) | Methods, systems, and computer program product for managing and displaying webpages in a virtual three-dimensional space with a mixed reality system | |
US20220249949A1 (en) | Method and apparatus for displaying virtual scene, device, and storage medium | |
US9317962B2 (en) | 3D space content visualization system | |
US10706212B1 (en) | Cross-platform presentation of digital content | |
US9224237B2 (en) | Simulating three-dimensional views using planes of content | |
US9437038B1 (en) | Simulating three-dimensional views using depth relationships among planes of content | |
US10049490B2 (en) | Generating virtual shadows for displayable elements | |
US11443490B2 (en) | Snapping, virtual inking, and accessibility in augmented reality | |
US11587280B2 (en) | Augmented reality-based display method and device, and storage medium | |
KR102646977B1 (ko) | 증강 현실에 기반한 디스플레이 방법 및 장치, 및 저장 매체 | |
CN108255546B (zh) | 一种数据加载动画的实现方法及装置 | |
CN113724331A (zh) | 视频处理方法、视频处理装置和非瞬时性存储介质 | |
US20180184148A1 (en) | Electronic device and operation method thereof | |
US20240020910A1 (en) | Video playing method and apparatus, electronic device, medium, and program product | |
KR102579463B1 (ko) | 확장현실 기술 기반 미디어아트 시스템 | |
US12002165B1 (en) | Light probe placement for displaying objects in 3D environments on electronic devices | |
US20230298239A1 (en) | Data processing method based on augmented reality | |
CN118350872A (zh) | 信息推荐方法、装置、电子设备及存储介质 | |
CN115202792A (zh) | 用于场景切换的方法、装置、设备和存储介质 | |
CN115904192A (zh) | 界面显示方法、装置、电子设备及可读存储介质 | |
CN115904592A (zh) | 虚拟桌面的显示方法和装置 | |
CN117788689A (zh) | 一种基于三维建模的可交互式虚拟云展厅构建方法及系统 | |
CN117710180A (zh) | 图像渲染方法及相关设备 | |
CN118331572A (zh) | 一种基于WebGL零代码构建混合现实空间的方法 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40038851 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |