掌桥专利:专业的专利平台
掌桥专利
首页

游戏程序中的UGC生成方法、装置、设备及存储介质

文献发布时间:2024-04-18 19:58:30


游戏程序中的UGC生成方法、装置、设备及存储介质

技术领域

本申请涉及游戏领域,特别涉及一种游戏程序中的UGC生成方法、装置、设备及存储介质。

背景技术

UCG(User Generated Content,用户生成内容)指用户在互联网上共享的自创内容。在游戏领域,设计者会通过在游戏内提供相应的UGC编辑能力,鼓励用户参与到关卡地图、玩法、生态等游戏内容的设计中。用户在设计关卡地图时,通常会使物体运动起来,来增加关卡难度和趣味性。

相关技术中,采用对单个物体进行运动叠加方式来设计物体运动。当用户希望控制物体完成多段或者多维度的复杂运动时,需要将该复杂运动拆解成不同时间段的简单运动。例如实现物体由低到高的螺旋状曲线运动,需要拆解成圆周运动加由低到高的直线运动,并且还需要不断调试运动速度以及运动时间来达到目标效果。

上述方案对于普通用户而言具有一定的难度,不利于用户进一步参与到游戏内容的设计中,如何设计使用户更容易操作的物体运动设计方法,是目前亟需解决的问题。

发明内容

本申请提供了一种游戏程序中的UGC生成方法、装置、设备及存储介质。所述技术方案如下:

根据本申请的一个方面,提供了一种游戏程序中的UGC生成方法,所述方法包括:

在所述UGC编辑器的编辑器界面中显示位于虚拟环境中的虚拟物体;

响应于针对所述虚拟物体的关键运动点编辑操作,在所述虚拟环境中为所述虚拟物体设置至少两个关键运动点,每个所述关键运动点用于指示所述虚拟物体在所述虚拟环境的运动路径上的一个空间点对应的运动参数;

基于所述至少两个关键运动点,控制所述虚拟物体在所述虚拟环境中运动。

另一方面,本申请实施例提供一种游戏程序中的UGC生成方法,所述方法包括:

在所述编辑器界面上显示所述第i个关键运动点对应的关键运动点控件,所述第i个关键运动点对应的关键运动点控件上显示有时间输入框;

所述响应于时间设置操作,设置所述虚拟物体从第i个关键运动点运动至第i+1个关键运动点的运动时间,包括:

响应于在所述时间输入框内输入时间的操作,将被输入的时间设置为所述虚拟物体从第i个关键运动点运动至第i+1个关键运动点的时间;

其中,i为正整数。

另一方面,本申请实施例提供一种游戏程序中的UGC生成方法,所述方法包括:

响应于针对所述虚拟物体的关键运动点编辑操作,在所述编辑器界面中显示辅助信息;

其中,所述辅助信息包括:起点标识、运动连线、选中关键运动点和非选中关键运动点中的至少一项。

另一方面,本申请实施例提供一种游戏程序中的UGC生成装置,所述装置包括:

第一显示模块,用于在所述UGC编辑器的编辑器界面中显示位于虚拟环境中的虚拟物体;

设置模块,用于响应于针对所述虚拟物体的关键运动点编辑操作,在所述虚拟环境中为所述虚拟物体设置至少两个关键运动点,每个所述关键运动点用于指示所述虚拟物体在所述虚拟环境的运动路径上的一个空间点对应的运动参数;

控制模块,用于基于所述至少两个关键运动点,控制所述虚拟物体在所述虚拟环境中运动。

另一方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现上述游戏程序中的UGC生成方法。

另一方面,本申请实施例提供一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述游戏程序中的UGC生成方法。

另一方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中;所述计算机程序由计算机设备的处理器从所述计算机可读存储介质读取并执行,使得所述计算机设备执行上述游戏程序中的UGC生成方法。

本申请实施例提供的技术方案带来的有益效果至少包括:

上述技术方案支持用户通过关键运动点来设置虚拟物体在虚拟环境中的运动,用户仅需设置至少两个关键运动点的运动参数即可由计算机设备生成对应的虚拟物体从第一个关键运动点运动到最后一个关键运动点的运动过程,有计算机设备补充虚拟设备在相邻关键运动点间的运动参数,使用户仅需关注关键运动点的设计,即可实现设计虚拟物体在虚拟环境中的复杂运动,降低了用户设计虚拟物体在虚拟环境中运动的难度。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了本申请一个示例性实施例提供的计算机系统的示意图;

图2示出了本申请一个示例性实施例提供的计算机系统的示意图;

图3示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图4示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图5示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图6示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图7示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图8示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图9示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图10示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图11示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图12示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图13示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图14示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图15示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图16示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图17示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图18示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图19示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图;

图20示出了本申请一个示例性实施例提供的路径平滑操作前后的示意图;

图21示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图22示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图23示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的流程图;

图24示出了本申请一个示例性实施例提供的游戏程序中的UGC生成装置的结构框图;

图25示出了本申请一个示例性实施例提供的计算机设备的结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

需要进行说明的是,本申请在收集用户的相关数据(比如:终端设备中的各个视频文件以及各个视频文件分别对应的视频片段)之前以及在收集用户的相关数据的过程中,都可以显示提示界面、弹窗或输出语音提示信息,该提示界面、弹窗或语音提示信息用于提示用户当前正在搜集其相关数据,使得本申请仅仅在获取到用户对该提示界面或弹窗发出的确认操作后,才开始执行获取用户相关数据的相关步骤,否则(即未获取到用户对该提示界面或弹窗发出的确认操作时),结束获取用户相关数据的相关步骤,即不获取用户的相关数据。换句话说,本申请所采集的所有用户数据都是在用户同意并授权的情况下进行采集的,且相关用户数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。

首先,对本申请涉及的相关名词做出介绍:

UCG(User Generated Content,用户生成内容):指用户在互联网上共享的自创内容。在游戏领域,设计者会通过在游戏内提供相应的UGC编辑能力,鼓励用户参与到关卡地图、玩法、生态等游戏内容的设计中。通过用户对游戏内容的设计来提高用户的归属感以及游戏内容的丰富度,更满足个性化需求。

虚拟环境:是客户端在终端上运行时显示(或提供)的虚拟环境。该虚拟环境可以是对真实世界的仿真环境,也可以是半仿真半虚构的环境,还可以是纯虚构的环境。虚拟环境可以是二维虚拟环境、2.5维虚拟环境和三维虚拟环境中的任意一种,本申请对此不加以限定。下述实施例以虚拟环境是三维虚拟环境来举例说明。

应当理解,尽管在本申请可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一参数也可以被称为第二参数,类似地,第二参数也可以被称为第一参数。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

图1和图2示出了本申请一个示例性实施例提供的计算机系统的示意图。该计算机系统可以包括:终端设备110、服务器120。

终端设备110可以是膝上型便携式计算机、台式计算机、手机、平板电脑、电子书阅读器以及电子游戏机等等。

终端设备110中包括存储器和处理器;存储器可以包括一个或者多个计算机可读存储介质。上述计算机可读存储介质包括随机存取存储器(Random Access Memory,RAM)、只读存储器(Read Only Memory,ROM)、闪存(Flash)中的至少一种。存储器中安装有操作系统和游戏程序。

游戏程序可以是闯关游戏、休闲竞技游戏、MMOG(Massive Multiplayer OnlineGame,大型多人在线游戏)游戏、棋牌游戏、MOBA(Multiplayer Online Battle Arena,多人在线战术竞技游戏)游戏、SLG(Simulation Game,策略类游戏)游戏、虚拟现实应用程序、三维地图程序、FPS(First-Person Shooting Game,第一人称射击类游戏)游戏、多人枪战类生存游戏、休闲类游戏、派对类游戏、沙盒类游戏中的任意一种。

操作系统是为游戏程序提供对计算机硬件的安全访问的基础软件,操作系统可以是安卓系统(Android)或者苹果系统(IOS)。操作系统支持游戏程序的下载、安装和运行。

可选地,终端设备110还包括触摸屏;触摸屏可以是电容屏或者电阻屏。触摸屏用于实现终端设备与用户130之间的交互。在本申请的实施例中,终端设备通过触摸屏获得用户130触发的对游戏程序的中的UGC编辑器的编辑器界面140的交互操作。

终端设备110安装和运行有游戏程序,该游戏程序设计有编辑器界面140。

编辑器界面140支持用户130对虚拟环境的进行编辑、保存、发布等操作。用户130在对虚拟环境进行编辑时,可以采用虚拟物体搭建不同的虚拟环境。UGC编辑器支持用户130创建运动物体来丰富虚拟环境,提高用户的可操作性和趣味性。

终端设备110是用户使用的终端设备。用户130使用终端设备110操作编辑器界面140,用户130可以将编辑中或编辑好的虚拟环境保存到终端设备110中。可选的,终端设备110用于将用户130保存的虚拟环境信息上传给服务器120;或,终端设备110用于向游戏程序提供虚拟环境和虚拟物体的数据信息;或,终端设备110用于保存关键运动点信息。

在一些实施例中,该计算机系统还包括服务器120,如图2所示。服务器120可以是多个服务器、虚拟云存储或云计算中心中的任意一种。可选的,服务器120用于保存终端设备110上传的虚拟环境信息;或,服务器120用于保存终端设备110上传的关键运动点信息;或,服务器120用于向游戏程序提供虚拟环境和虚拟物体的数据信息。

在一些实施例中,终端设备110和服务器120之间通过有线或者无线网络进行连接。

图3示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图,所述方法由终端设备执行,该终端设备可以是如图1和图2中所示的终端设备。该方法包括:

步骤210:在UGC编辑器的编辑器界面中显示位于虚拟环境中的虚拟物体;

在一些实施例中,在UGC编辑器的编辑器界面中显示虚拟环境画面,虚拟环境画面是通过摄像机模型采集三维虚拟环境得到的画面,用户可以通过对触摸屏的交互操作控制摄像机模型来改变虚拟环境画面的显示效果。

在一些实施例中,虚拟物体为支持运动的虚拟物体。

在一些实施例中,虚拟物体为UGC编辑器提供的;或,虚拟物体为用户使用UGC编辑器提供的虚拟物体组合得到的;或,虚拟物体为用户向UGC编辑器导入图片后,由UGC编辑器生成的;或,虚拟物体为UGC编辑器的使用者创造并保存在公共库中的虚拟物体。

步骤220:响应于针对虚拟物体的关键运动点编辑操作,在虚拟环境中为虚拟物体设置至少两个关键运动点,每个关键运动点用于指示虚拟物体在虚拟环境的运动路径上的一个空间点对应的运动参数;

在一些实施例中,关键运动点简称为路点,但与传统路点仅代表一个坐标的含义不同,关键运动点用于指示虚拟物体在虚拟环境的运动路径上的空间点对应的运动参数。

在一些实施例中,虚拟环境中关键运动点显示为简单图形;或,虚拟环境中关键运动点显示为虚拟物体副本;或,虚拟环境中关键运动点显示为缩小到第一阈值的虚拟物体副本;或,虚拟环境中关键运动点显示为简单图形和缩小到第一阈值的虚拟物体副本的组合图形。其中,第一阈值为小于1的正数。

示意性的,虚拟环境中关键运动点显示为黑色圆球;或,虚拟环境中关键运动点显示为虚拟物体副本,该虚拟物体副本是通过对虚拟物体进行等比例复制得到;或,虚拟环境中关键运动点显示为缩小0.5倍的虚拟物体副本;或,虚拟环境中关键运动点显示为被黑色空心球体包裹的缩小0.5倍的虚拟物体副本。

在一些实施例中,响应于针对虚拟物体的关键运动点编辑操作,在UGC编辑器的编辑器界面中显示辅助信息。

其中,辅助信息包括:起点标识、运动连线、选中关键运动点和非选中关键运动点中的至少一项。起点标识为第一个关键运动点的标识;运动连线为相邻关键运动点间以虚线相连的连线;选中关键运动点相较于非选中关键运动点为突出显示,例如,选中关键运动点具有高亮边框;非选中关键运动点显示为半透明形式。

在一些实施例中,关键运动点为虚拟物体在虚拟环境的运动路径上的一个运动点,该运动点指示了虚拟物体在运动到该运动点时的运动参数,运动参数包括坐标参数、旋转参数和缩放参数中的至少一项。

步骤230:基于至少两个关键运动点,控制虚拟物体在虚拟环境中运动。

在一些实施例中,基于至少两个关键运动点的运动参数,控制虚拟物体在虚拟环境中运动。

在一些实施例中,基于至少两个关键运动点的坐标参数,控制虚拟物体沿相邻关键运动点间的最短路径运动;或,基于至少两个关键运动点的坐标参数,响应于路径平滑操作,控制虚拟物体在相邻关键运动点间的平滑曲线运动;或,基于至少两个关键运动点的坐标参数,响应于运动路径的设置,控制虚拟物体根据运动路径运动。其中,运动路径为UGC编辑器提供的预设运动路径,或,运动路径为用户调整后得到的运动路径。

在一些实施例中,基于至少两个关键运动点的旋转参数,控制虚拟物体在相邻关键运动点间运动时的旋转参数为逐渐由第i个关键运动点的旋转参数变化为第i+1个关键运动点的旋转参数;或,基于至少两个关键运动点的旋转参数,响应于针对第i个关键运动点的自动旋转操作,控制虚拟物体在第i个关键运动点的旋转参数变化为朝向第i+1个关键运动点的旋转参数;或,基于至少两个关键运动点的旋转参数,控制虚拟物体在第i个关键运动点的旋转参数变化为朝向第i+1个关键运动点的旋转参数;或,基于至少两个关键运动点的旋转参数,响应于旋转曲线的设置,控制虚拟物体根据旋转曲线旋转。其中,旋转曲线为UGC编辑器提供的预设旋转曲线,或,旋转曲线为用户调整后得到的旋转曲线,i为正整数。

在一些实施例中,基于至少两个关键运动点的缩放参数,控制虚拟物体在相邻关键运动点间运动时的缩放参数为逐渐由第i个关键运动点的缩放参数变化为第i+1个关键运动点的缩放参数;或,基于至少两个关键运动点的缩放参数,控制虚拟物体运动到第i个关键运动点时,虚拟物体的缩放参数变化为第i个关键运动点的缩放参数;或,基于至少两个关键运动点的缩放参数,响应于缩放曲线的设置,控制虚拟物体根据缩放曲线缩放。其中,缩放曲线为UGC编辑器提供的预设缩放曲线,或,缩放曲线为用户调整后得到的缩放曲线。

综上所述,本实施例提供的方法,使用户通过对关键运动点的编辑操作,控制虚拟物体根据关键运动点在虚拟环境中运动。通过对关键运动点的编辑,将虚拟物体在虚拟环境中的复杂运动拆分成在多个关键运动点间的简单运动,使用户在没有相关经验的前提下也能快速上手控制虚拟物体在虚拟环境中的运动。

针对关键运动点的编辑操作包括:添加操作、编辑操作和设置操作中的至少一项。

在基于图3的可选实施例中,如图4所示,步骤220可替换实现为步骤221和步骤222。

步骤221:响应于针对虚拟物体的添加关键运动点操作,在虚拟环境中为虚拟物体添加至少两个关键运动点;

在一些实施例中,添加关键运动点操作包括新增关键运动点操作和复制关键运动点操作中的至少两个。

在一些实施例中,一个虚拟物体可以拥有n个关键运动点,n为正整数。

步骤222:响应于对至少两个关键运动点中的第i个关键运动点的编辑操作,设置虚拟物体在第i个关键运动点对应的运动参数。

其中,运动参数包括虚拟物体在第i个关键运动点对应的坐标参数、旋转参数和缩放参数中的至少一个,i为正整数。

在一些实施例中,对关键运动点的编辑操作包括:移动操作、旋转操作和缩放操作中的至少一项。

在一些实施例中,对关键运动点的编辑操作会使关键运动点对应的运动参数发生改变。

示例性的,对关键运动点的移动操作会改变关键运动点对应的坐标参数;或,对关键运动点的旋转操作会改变关键运动点对应的旋转参数;或,对关键运动点的缩放操作会改变关键运动点对应的缩放参数。

在一些实施例中,关键运动点的运动参数为虚拟物体运动到该关键运动点时的运动状态,运动状态包括三维坐标、旋转姿态和缩放比例中的至少一项。其中,三维坐标对应坐标参数;旋转姿态对应旋转参数;缩放比例对应缩放参数。

在一些实施例中,运动参数的表现形式为坐标形式、数值形式、字符串形式、集合形式中的至少之一。需要说明的是,为了方便表示,本申请实施例将运动参数的表现形式抽象为坐标形式,例如坐标参数为(14,8,54),旋转参数为(0,25,81),缩放参数为(1,5,0.5)。其中,运动参数的坐标原点均为(0,0,0)。关键运动点对应的旋转参数(0,25,-81)表示该关键运动点相对于坐标原点在y轴正半轴方向偏转了25度,相对于坐标原点在z轴负半轴方向偏转了81度。关键运动点对应的缩放参数(1,-5,0.5)表示该关键运动点相对于坐标原点在x轴正半轴方向为预设值的1倍,即预设值乘1,相对于坐标原点在y轴负半轴方向为预设值的5倍,相对于坐标原点在z轴正半轴方向为预设值的0.5倍,其中,缩放参数在x轴的预设值为虚拟物体的长,在y轴的预设值为虚拟物体的宽,在z轴的预设值为虚拟物体的高。

在一些实施例中,步骤221可以作为独立实施例来实施;步骤222可以作为独立实施例来实施。步骤221和步骤222可以交换顺序或同时执行。

综上所述,本实施例提供的方法将对关键运动点的编辑操作拆分为添加关键运动点和编辑关键运动点,用户能通过增加关键运动点的方式,将虚拟物体在虚拟环境中的运动拆分成在多个关键运动点上的运动,实现通过多个简单运动的来组合一个复杂运动。

在基于图4的可选实施例中,如图5所示,所述方法还包括步骤240。

步骤240:响应于将虚拟物体的运动模式设置为关键运动点运动模式的设置操作,根据虚拟物体在虚拟环境中的三维坐标、旋转姿态、缩放比例生成第一个关键运动点。

在一些实施例中,虚拟物体在虚拟环境中的三维坐标、旋转姿态、缩放比例为UGC编辑器预设的;或,虚拟物体在虚拟环境中的三维坐标、旋转姿态、缩放比例为用户调整后的。

在一些实施例中,第一个关键运动点具有起点标识。示例性的,起点标识为一个旗帜;或,起点标识为突出显示的简单形状;或,起点标识为一个图标。

综上所述,本申请实施例提供的方法当用户将虚拟物体的运动模式设置为关键运动点运动模式时,根据当前虚拟物体的状态自动生成第一个关键运动点即起点,而不需要用户寻找控件来创建,提高用户的编辑效率与游戏程序的友好性。

在基于图4的可选实施例中,如图6所示,步骤221可替换实现为步骤2211和/或步骤2212。

步骤2211:在虚拟物体已具有n个关键运动点的情况下,响应于针对虚拟物体的新建关键运动点操作,在虚拟环境中为虚拟物体增加第n+1个关键运动点,第n+1个关键运动点是第n个关键运动点的下一个关键运动点;

其中,n为正整数。

在一些实施例中,虚拟环境中第n+1个关键运动点对应的运动参数与第n个关键运动点相同;或,虚拟环境中第n+1个关键运动点对应的旋转参数和缩放参数与第n个关键运动点对应的旋转参数和缩放参数相同,第n+1个关键运动点对应的坐标参数为第n个关键运动点对应的坐标参数加偏移坐标参数;或,虚拟环境中第n+1个关键运动点对应的运动参数为虚拟物体的预设运动参数;或,虚拟环境中第n+1个关键运动点对应的旋转参数和缩放参数为虚拟物体的预设旋转参数和预设缩放参数,第n+1个关键运动点对应的坐标参数为第n个关键运动点对应的坐标参数加偏移坐标参数。

在一些实施例中,偏移坐标参数为向x轴正半轴偏移的坐标参数;或,偏移坐标参数为向x轴负半轴偏移的坐标参数;或,偏移坐标参数为向y轴正半轴偏移的坐标参数;或,偏移坐标参数为向y轴负半轴偏移的坐标参数;或,偏移坐标参数为向z轴正半轴偏移的坐标参数;或,偏移坐标参数为向z轴负半轴偏移的坐标参数;或,偏移坐标参数为向x轴正半轴和y轴正半轴偏移的坐标参数;或,偏移坐标参数为向x轴正半轴和z轴正半轴偏移的坐标参数;或,偏移坐标参数为向y轴正半轴和z轴正半轴偏移的坐标参数;或,偏移坐标参数为向x轴正半轴、y轴正半轴偏移和z轴正半轴偏移的坐标参数。需要说明的是,本申请实施例仅列举出部分偏移坐标参数的偏移方向,针对剩余偏移坐标参数的偏移方向本申请实施例不再一一列举,但本申请的保护范围但不限于此。

在一些实施例中,偏移坐标参数的偏移值为预设值;或,偏移坐标参数的偏移值为用户设定的值。

示例性的,偏移坐标参数的偏移方向为向y轴正半轴偏移,偏移坐标参数的偏移值为预设值20,偏移坐标参数为(0,20,0);或,偏移坐标参数的偏移方向为向x轴正半轴和y轴正半轴偏移,偏移坐标参数的x轴方向上的偏移值为预设值20,y轴方向上的偏移值为预设值10,偏移坐标参数为(20,10,0);或,偏移坐标参数的偏移方向为向x轴负半轴和y轴正半轴偏移,偏移坐标参数的x轴方向上的偏移值为用户设定的值50,y轴方向上的偏移值为为用户设定的值30,偏移坐标参数为(-50,30,0)。

示例性的,第n个关键运动点对应的旋转参数为(0,20,0),缩放参数为(1,2,2),坐标参数为(10,20,0);虚拟物体的预设旋转参数为(0,0,0),预设缩放参数为(0,0,0),预设坐标参数为(0,0,0);偏移坐标参数为(0,20,0)。第n+1个关键运动点对应的旋转参数为第n个关键运动点对应的旋转参数(0,20,0),缩放参数为第n个关键运动点对应的缩放参数(1,2,2),坐标参数为第n个关键运动点对应的坐标参数(10,20,0);或,第n+1个关键运动点对应的旋转参数为(0,20,0),缩放参数为(1,2,2),坐标参数为第n个关键运动点的坐标参数(10,20,0)加偏移坐标参数(0,20,0),第n+1个关键运动点对应的坐标参数为(10,40,0);或,第n+1个关键运动点对应的旋转参数为虚拟物体的预设旋转参数(0,0,0),缩放参数为虚拟物体的预设缩放参数(0,0,0),坐标参数为虚拟物体的预设坐标参数(0,0,0)。

示例性的,如图7中的示意图(1)所示,编辑器界面中包括虚拟环境画面910、路点编辑区920中的至少一个。虚拟环境画面910中显示有虚拟物体的2个关键运动点,分别是起点和路点1,其中,起点在虚拟环境显示为路点911,路点1在虚拟环境中显示为路点912,路点912的坐标参数为(10,20,0)。路点编辑区920显示有起点对应的路点控件921和路点1对应的路点控件922。当用户点击新增路点控件923进行新增关键运动点操作后,如示意图(2)所示,路点编辑区920新增路点2对应的路点控件925,虚拟环境画面910中新增路点913,路点913的旋转参数和缩放参数与路点912的旋转参数和缩放参数相等,偏移坐标参数为(0,20,0),路点913的坐标参数为(10,40,0)。

步骤2212:在虚拟物体已具有n个关键运动点的情况下,响应于针对虚拟物体的第i个关键运动点的复制关键运动点操作,在n个关键运动点中的第i个关键运动点和第i+1个关键运动点之间插入一个关键运动点,得到虚拟物体的n+1个关键运动点。

其中,插入的关键运动点是n+1个关键运动点中的第i+1个关键运动点,n个关键运动点中的第i+1个关键运动点顺延为n+1个关键运动点中的第i+2个关键运动点,其中,i为小于n的正整数。

在一些实施例中,响应于针对虚拟物体的第n个关键运动点的复制关键运动点操作,第n个关键运动点后插入一个关键运动点,得到虚拟物体的n+1个关键运动点。

在一些实施例中,第i+1个关键运动点对应的旋转参数和缩放参数与第i个关键运动点相同,第i+1个关键运动点对应的坐标参数为第i个关键运动点对应的坐标参数加偏移坐标参数;或,虚拟环境中第i+1个关键运动点对应的运动参数为虚拟物体的预设运动参数;或,虚拟环境中第i+1个关键运动点对应的旋转参数和缩放参数为虚拟物体的预设旋转参数和预设缩放参数,第i+1个关键运动点对应的坐标参数为第i个关键运动点对应的坐标参数加偏移坐标参数。

示意性的,如图7的示意图(2)所示,编辑器界面中有起点、路点1和路点2共3个关键运动点。其中,起点在虚拟环境画面910中显示为路点911,路点1显示为路点912,路点2显示为913;路点编辑区920中显示有起点对应的路点控件921、路点1对应的路点控件922和路点2对应的路点控件925。当用户点击起点对应的路点控件921后,再点击复制当前路点控件924,虚拟环境画面显示新增的路点914,路点编辑区920在起点和路点1中间新增路点3对应的路点控件926。新增的路点914的旋转参数和缩放参数与被复制的路点911的旋转参数和缩放参数相同,路点914的坐标参数为路点911的坐标参数加偏移坐标参数。其中,当用户点击起点对应的路点控件921后,虚拟环境画面910中的路点911显示为选中态。

在一些实施例中,步骤2211可以作为独立实施例来实施;步骤2212可以作为独立实施例来实施。步骤2211和步骤2212可以交换顺序或同时执行。

综上所述,本实施例提供的方法将添加关键运动点分为新增关键运动点和复制关键运动点,新增关键运动点的运动参数为预设值,复制关键运动点的运动参数为被复制关键运动点的运动参数,用户可以根据需要自行选择添加关键运动点的方式,这样可以多样化满足用户增加关键运动点的需要。

在基于图4的可选实施例中,如图8所示,步骤222可替换实现为步骤310至步骤370中的至少一个。

步骤310包括以下三个步骤中的至少一个:

步骤310-A:在编辑器界面显示移动控件,以及位于第i个关键运动点的虚拟物体副本;

步骤310-B:在编辑器界面显示旋转控件,以及位于第i个关键运动点的虚拟物体副本;

步骤310-C:在编辑器界面显示缩放控件,以及位于第i个关键运动点的虚拟物体副本。

其中,i为正整数。

响应于步骤310-A显示的移动控件及第i个关键运动点的虚拟物体副本,步骤222可替换实现为步骤320至步骤330。

步骤320:在第i个关键运动点处于选中态的情况下,响应于针对移动控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴移动线;

在一些实施例中,第i个关键运动点处于选中态,第i个关键运动点的虚拟物体副本具有高亮边框;或,第i个关键运动点处于选中态,第i个关键运动点的虚拟物体副本具有加粗边框。

在一些实施例中,如图9所示,虚拟环境画面910中显示有控件展示区930,响应于针对控件展示区930中移动控件931的点击操作,以虚拟物体副本上的参考点为中心显示三个坐标轴移动线915。

步骤330:响应于将虚拟物体副本沿三个坐标轴移动线上的任一坐标轴移动线进行移动的操作,改变虚拟物体副本在虚拟环境中的三维坐标;以及将改变后的三维坐标确定为虚拟物体在第i个关键运动点对应的坐标参数。

在一些实施例中,虚拟物体副本在虚拟环境中的三维坐标是相对于世界坐标系的;或,虚拟物体副本在虚拟环境中的三维坐标是相对于第一个关键运动点的;或,虚拟物体副本在虚拟环境中的三维坐标是相对于第i-1个关键运动点的。

示例性的,虚拟物体副本在虚拟环境中的三维坐标是相对于世界坐标系的,世界坐标系的原点为(0,0,0),第i个关键运动点的虚拟物体副本的三维坐标为(10,0,20),表示虚拟物体副本在世界坐标系上坐标为(10,0,20)的位置;或,虚拟物体副本在虚拟环境中的三维坐标是相对于第一个关键运动点的,第一个关键运动点的位置为原点(0,0,0),第i个关键运动点的虚拟物体副本的三维坐标为(10,0,20),表示虚拟物体副本在以第一个关键运动点的位置为原点的坐标系上坐标为(10,0,20)的位置;或,虚拟物体副本在虚拟环境中的三维坐标是相对于第i-1个关键运动点的,第i-1个关键运动点的位置为原点(0,0,0),第i个关键运动点的虚拟物体副本的三维坐标为(10,0,20),表示虚拟物体副本在以第i-1个关键运动点的位置为原点的坐标系上坐标为(10,0,20)的位置。

响应于步骤310-A显示的移动控件及第i个关键运动点的虚拟物体副本,步骤222可替换实现为步骤340至步骤350。

步骤340:在第i个关键运动点处于选中态的情况下,响应于针对旋转控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴旋转线;

在一些实施例中,第i个关键运动点处于选中态,第i个关键运动点的虚拟物体副本具有高亮边框;或,第i个关键运动点处于选中态,第i个关键运动点的虚拟物体副本具有加粗边框。

在一些实施例中,如图10所示,虚拟环境画面910中显示有控件展示区930,响应于针对控件展示区930中旋转控件932的点击操作,以虚拟物体副本上的参考点为中心显示三个坐标轴旋转线916。

步骤350:响应于将虚拟物体副本沿三个坐标轴旋转线上的任一坐标轴旋转线进行旋转的操作,改变虚拟物体副本在虚拟环境中的旋转姿态;以及将改变后的旋转姿态确定为虚拟物体在第i个关键运动点对应的旋转参数。

在一些实施例中,虚拟物体副本在虚拟环境中的旋转姿态是相对于世界坐标系的;或,虚拟物体副本在虚拟环境中的旋转姿态是相对于第一个关键运动点的;或,虚拟物体副本在虚拟环境中的旋转姿态是相对于第i-1个关键运动点的。

示例性的,虚拟物体副本在虚拟环境中的旋转姿态是相对于世界坐标系的,世界坐标系的原点为(0°,0°,0°),第i个关键运动点的虚拟物体副本的旋转姿态为(10°,0°,20°),表示虚拟物体副本在世界坐标系上相对于x轴对应的平面偏转了10度,相对于y轴对应的平面偏转了0度,相对于z轴对应的平面偏转了20度;或,虚拟物体副本在虚拟环境中的旋转姿态是相对于第一个关键运动点的,第一个关键运动点的旋转姿态为原点(0°,0°,0°),第i个关键运动点的虚拟物体副本的旋转姿态为(10°,0°,20°),表示虚拟物体副本在以第一个关键运动点的旋转姿态为原点的坐标系上相对于x轴对应的平面偏转了10度,相对于y轴对应的平面偏转了0度,相对于z轴对应的平面偏转了20度;或,虚拟物体副本在虚拟环境中的旋转姿态是相对于第i-1个关键运动点的,第i-1个关键运动点的旋转姿态为原点(0°,0°,0°),第i个关键运动点的虚拟物体副本的旋转姿态为(10°,0°,20°),表示虚拟物体副本在以第i-1个关键运动点的旋转姿态为原点的坐标系上相对于x轴对应的平面偏转了10度,相对于y轴对应的平面偏转了0度,相对于z轴对应的平面偏转了20度。

响应于步骤310-A显示的移动控件及第i个关键运动点的虚拟物体副本,步骤222可替换实现为步骤360至步骤370。

步骤360:在第i个关键运动点处于选中态的情况下,响应于针对缩放控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴缩放线;

在一些实施例中,第i个关键运动点处于选中态,第i个关键运动点的虚拟物体副本具有高亮边框;或,第i个关键运动点处于选中态,第i个关键运动点的虚拟物体副本具有加粗边框。

在一些实施例中,如图11所示,虚拟环境画面910中显示有控件展示区930,响应于针对控件展示区930中缩放控件933的点击操作,以虚拟物体副本上的参考点为中心显示三个坐标轴缩放线917。

步骤370:响应于沿三个坐标轴缩放线上的任一坐标轴缩放线进行拖拽的操作,改变虚拟物体副本在坐标轴缩放线对应的坐标轴维度的缩放比例;以及将改变后的缩放比例确定为虚拟物体在第i个关键运动点对应的缩放参数。

在一些实施例中,虚拟物体副本在坐标轴缩放线对应的坐标轴维度的缩放比例是相对于第一个关键运动点的;或,虚拟物体副本在坐标轴缩放线对应的坐标轴维度的缩放比例是相对于第i-1个关键运动点的。

示例性的,有x轴、y轴和z轴三条坐标轴缩放线,这三条缩放线分别对应虚拟物体的长度方向、宽度方向和高度方向。虚拟物体副本在坐标轴缩放线对应的坐标轴维度的缩放比例是相对于第一个关键运动点的,第一个关键运动点的缩放比例为(1,1,1),第i个关键运动点的虚拟物体副本的缩放比例为(1,0.8,-2),表示虚拟物体副本在x轴正半轴方向上为第一个关键运动点长度的1倍,在y轴正半轴方向上为第一个关键运动点宽度的0.8倍,在z轴负半轴方向上为第一个关键运动点长度的2倍;或,虚拟物体副本在坐标轴缩放线对应的坐标轴维度的缩放比例是相对于第i-1个关键运动点的,第i-1个关键运动点的缩放比例为(1,1,1),第i个关键运动点的虚拟物体副本的缩放比例为(1,0.8,-2),表示虚拟物体副本在x轴正半轴方向上为第i-1个关键运动点长度的1倍,在y轴正半轴方向上为第i-1个关键运动点宽度的0.8倍,在z轴负半轴方向上为第i-1个关键运动点长度的2倍。

综上所述,本申请实施例提供的方法将编辑关键运动点划分为移动关键运动点、旋转关键运动点和缩放关键运动点,通过这些编辑操作来改变物体运动到该关键运动点时的运动参数,使虚拟物体在虚拟场景中的运动更加多样化。

在基于图4的可选实施例中,如图12所示,所述方法还包括步骤250。

步骤250:响应于时间设置操作,设置虚拟物体从第i个关键运动点运动至第i+1个关键运动点的运动时间。

在一些实施例中,运动时间为UGC编辑器预设的;或,运动时间为用户设置的。

示例性的,UGC编辑器预设的虚拟物体从第i个关键运动点运动至第i+1个关键运动点的运动时间为2秒;或,用户进行了时间设置操作,虚拟物体从第i个关键运动点运动至第i+1个关键运动点的运动时间为0.8秒。

在一些实施例中,响应于对第i个关键运动点的编辑操作,在编辑器界面上显示第i个关键运动点对应的关键运动点控件,第i个关键运动点对应的关键运动点控件上显示有时间输入框。

示例性的,如图7中的示意图(1)所示,编辑器界面中显示有路点编辑区920,路点编辑区920内显示起点对应的路点控件921和路点1对应的路点控件922,起点对应的路点控件921上显示有时间输入框927,用于输入从起点运动到路点1的运动时间。

在一些实施例中,响应于在时间输入框内输入时间的操作,将被输入的时间设置为虚拟物体从第i个关键运动点运动至第i+1个关键运动点的时间。

示例性的,用户在第i个关键运动点对应的关键运动点控件上显示的时间输入框输入0.8,虚拟物体从第i个关键运动点运动至第i+1个关键运动点的时间被设置为0.8秒。

综上所述,本申请提供的方法通过设置运动时间来设置虚拟物体在两个关键运动点间的运动速度,可以使用户更直观的感受到在虚拟物体在虚拟环境中运动的时间与速度状态,并且能够通过修改运动时间的方式来改变虚拟物体的运动速度。

在基于图4的可选实施例中,如图13所示,所述方法还包括步骤410至步骤460中的至少一个。

步骤410:响应于运动循环模式设置操作,设置虚拟物体的运动循环模式;

其中,运动循环模式包括单程运动方式、连续单程方式、循环往复方式中的一种,单程运动方式是从第一个关键运动点依次运动到最后一个关键运动点的方式,连续单程方式是从第一个关键运动点依次运动到最后一个关键运动点后,重新从第一个关键运动点依次运动到最后一个关键运动点的连续运动方式;循环往复方式是从第一个关键运动点依次运动到最后一个关键运动点后,再从最后一个关键运动点返回前一个关键运动点,直至返回运动到第一个关键运动点的往复运动方式。

示例性的,如图9所示,编辑器界面中显示有虚拟物体详情区940,虚拟物体详情区940中显示有运动循环模式设置控件941,点击运动循环模式设置控件941后,会出想下拉栏942,下拉栏用于显示运动循环模式。

步骤420:响应于针对第i个关键运动点的自动旋转操作,设置虚拟物体在第i个关键运动点的旋转参数为朝向第i+1个关键运动点的旋转参数;

示例性的,第i个关键运动点的旋转参数为(0°,20°,20°),朝向第i+1个关键运动点的旋转参数为(50°,10°,0°);响应于针对第i个关键运动点的自动旋转操作,设置虚拟物体在第i个关键运动点的旋转参数为朝向第i+1个关键运动点的旋转参数为(50°,10°,0°)。

步骤430:响应于针对中间关键运动点的速度平滑操作,设置虚拟物体在中间关键运动点前后的两段运动路径之间切换时的速度变化过程为平滑变化;

示例性的,有3个关键运动点,第一个关键运动点的运动时间为2秒,第2个关键运动点的运动时间为8秒;第一个关键运动点与第2个关键运动点间的最短距离为2米,第2个关键运动点与第3个关键运动点间的最短距离为2米。当未对第2个关键运动点进行速度平滑操作时,虚拟物体从第一个关键运动点运动到第2个关键运动点时,速度为1米/秒,当虚拟物体从第2个关键运动点开始运动到第3个关键运动点时,速度将会突变为0.25米/秒。当对第2个关键运动点进行速度平滑操作后,虚拟物体从第一个关键运动点运动到第2个关键运动点的第1秒时,速度为1米/秒,从第一个关键运动点运动到第2个关键运动点的第2秒时速度为0.5米/秒,虚拟物体从第2个关键运动点运动到第3个关键运动点的第1秒时,速度为0.25米/秒。

步骤440:响应于针对中间关键运动点的路径平滑操作,设置虚拟物体在中间关键运动点前后的两段运动路径之间切换时的路径变化过程为平滑变化;

示例性的,如图20所示,有3个关键运动点,3个关键运动点的位置如示意图(1)和示意图(2)所示,未对第2个关键运动点设置路径平滑操作时如示意图(1)所示,虚拟物体从第一个关键运动点运动到第2个关键运动点,从第2个关键运动点运动到第3个关键运动点时,将沿最短距离即2个关键运动点间的直线进行运动;当对第2个关键运动点进行路径平滑操作后,如示意图(2)所示,虚拟物体从第一个关键运动点运动到第2个关键运动点,从第2个关键运动点运动到第3个关键运动点时,将沿曲线运动。

步骤450:显示第i个关键运动点至第i+1个关键运动点的速度曲线设置控件;

其中,i为正整数。

在一些实施例中,编辑器界面显示第i个关键运动点至第i+1个关键运动点的速度曲线设置控件。

步骤460:响应于针对速度曲线设置控件的设置操作,设置虚拟物体从第i个关键运动点运动至第i+1个关键运动点过程中的速度曲线。

在一些实施例中,速度曲线为用户输入的曲线公式;或,速度曲线为用户基于UGC编辑器提供的速度曲线调整控件绘制的曲线,该曲线可以表示为曲线公式。

示例性的,有2个关键运动点,第一个关键运动点的运动事件为2秒,第一个关键运动点和第2个关键运动点间的距离为2米;用户设置的速度曲线为y=x+0.5,虚拟物体在从第一个关键运动点运动第2个关键运动点时的初速度为0.5米/秒,从第一个关键运动点运动第2个关键运动点的第1秒速度为1.5米/秒,从第一个关键运动点运动第2个关键运动点的第2秒速度为2.5米/秒。

在一些实施例中,响应于使运动开始信号的设置操作,设置使虚拟物体开始运动的开始信号。

在一些实施例中,开始信号为虚拟物体的坐标参数达到预设值;或,开始信号为虚拟物体的旋转参数达到预设值;或,开始信号为虚拟物体的缩放比例达到预设值;或,开始信号为固定时间,该固定时间是预设值,或,该固定时间为用户设定。

示例性的,当虚拟物体的坐标参数在范围A内,虚拟物体开始运动;或,当虚拟物体出现在虚拟环境画面2秒后,虚拟物体开始运动。

在一些实施例中,响应于使运动停止信号的设置操作,设置使虚拟物体停止运动的停止信号。

在一些实施例中,停止信号为虚拟物体的坐标参数达到预设值;或,停止信号为虚拟物体的旋转参数达到预设值;或,停止信号为虚拟物体的缩放比例达到预设值;或,停止信号为固定时间,该固定时间是预设值,或,该固定时间为用户设定。

在一些实施例中,步骤410,步骤420,步骤430,步骤440,步骤450和步骤460是可选的,在不同实施例中,可对这些步骤中的一个或多个步骤进行省略或替代,步骤410,步骤420,步骤430,步骤440,步骤450和步骤460可以交换顺序或同时执行。

步骤410可作为独立实施例来实施;步骤420可作为独立实施例来实施;步骤430可作为独立实施例来实施;步骤440可作为独立实施例来实施;步骤450和步骤460可作为独立实施例来实施;步骤410和步骤420可作为独立实施例来实施;步骤420和步骤430可作为独立实施例来实施;步骤430和步骤440可作为独立实施例来实施;步骤410、步骤420和步骤430可作为独立实施例来实施;步骤410、步骤420、步骤430和步骤440可作为独立实施例来实施;但不限于此。

综上所述,本申请实施例提供的方法为用户提供了关键运动点的多种设置操作,用户只需进行对不同设置控件的触发操作就可以为关键运动点添加设置,这些设置能够控制虚拟物体在虚拟环境中的运动更加自然、符合运动学,而这些设置仅需简单触发操作就能实现,使用户能够快速实现完整的有逻辑的虚拟物体在虚拟环境中的运动。

在基于图4的可选实施例中,如图21所示,所述方法还包括步骤260。

步骤260:响应于针对第i个关键运动点至第i+1个关键运动点的运动预览操作,显示运动预览动画。

其中,当第i个关键运动点和第i+1个关键运动点的旋转参数不同时,运动预览动画中显示从第i个关键运动点的旋转参数向第i+1个关键运动点的旋转参数的最短旋转路径的渐变旋转运动;当第i个关键运动点和第i+1个关键运动点的缩放参数不同时,运动预览动画中显示从第i个关键运动点的缩放参数向第i+1个关键运动点的缩放参数的最短缩放路径的渐变缩放运动。

在一些实施例中,编辑器界面上显示至少两个关键运动点的运动预览控件,至少两个关键运动点包括n个关键运动点。

在一些实施例中,响应于针对第i个关键运动点的运动预览控件的触发操作,显示第i个关键运动点至第n个关键运动点的运动预览动画,其中,n为正整数,i为小于n的正整数。

综上所述,本申请实施例提供的方法支持用户进行运动预览,方便用户明确运动过程,所见即所得,提高用户使用的积极性。

为了更清楚的理解本申请实施例的各种显示方式和操作方式,以下结合示意图进行详细说明。其中,关键运动点为路点,即虚拟物体在虚拟环境中运动路径上的空间点。

·在UGC编辑器的编辑器界面中显示位于虚拟环境中的虚拟物体

如图14所示,编辑器界面510中包括虚拟环境画面10、控件展示区20中的至少一个。虚拟环境画面10中显示有位于虚拟环境中的虚拟物体11。

其中,虚拟环境画面10是通过摄像机模型采集三维虚拟环境得到的画面,用户可以通过对触摸屏的交互操作控制摄像机模型来改变虚拟环境画面10的显示效果;控件展示区20用于显示编辑虚拟物体的控件,包括移动控件、旋转控件、缩放控件、删除控件、编辑控件中的至少一项。

当用户通过编辑器界面510选中虚拟物体11时,编辑器界面510的右侧区域会显示虚拟物体详情区30;或,当用户选中虚拟物体11,并对控件展示区20中的编辑控件进行点击操作后,编辑器界面510的右侧区域会显示虚拟物体详情区30。用户通过对虚拟物体详情区30中的运动信息查看控件31的点击操作使虚拟物体详情区30显示运动控制区40。

编辑器界面310中还包括虚拟物体详情收起控件12,基于用户对虚拟物体详情收起控件12的点击操作,可以使虚拟物体详情区30从编辑器界面510中隐藏。

虚拟物体详情区30用于显示至少一个与虚拟物体有关的交互控件。如图14所示,虚拟物体详情区30包含虚拟物体名称显示区、虚拟物体缩略图显示区和虚拟物体控件区。虚拟物体控件区用于显示至少一个虚拟物体有关的控件,包括基础信息查看控件、外观信息查看控件和运动信息查看控件31中的至少一个。

运动控制区40的其他显示方式还包括:当用户选中虚拟物体11时,编辑器界面510的右侧区域会显示运动控制区40;或,当用户选中虚拟物体11,并对控件展示区20中的编辑控件进行点击操作后,编辑器界面510的右侧区域会显示运动控制区40。

虚拟物体详情区30会遮盖虚拟环境画面10的第一区域;或,运动控制区40会遮盖部分虚拟环境画面10的第一区域。第一区域为编辑器界面510的四分之一。

运动控制区40用于显示至少一个与运动单元有关的控件。运动单元为虚拟物体的运动过程的组成部分,用户通过为虚拟物体增加运动器的方式来控制虚拟物体在虚拟环境中运动。运动器为控制虚拟物体的运动过程。一个虚拟物体可以设置多个运动器,一个运动器可以包括多个运动单元。运动单元可以设置为不同的运动单元模式。在一些实施例中,运动单元模式被称为运动模式。

如图14所示,虚拟物体11创建有一个名称为运动单元1的运动单元,运动单元1的运动单元模式为路点运动模式。当运动单元1的运动单元模式被设置为路点运动模式时,会根据虚拟物体11在虚拟环境中的三维坐标、旋转姿态、缩放比例生成第一个路点。

其中,生成的第一个路点为起点,起点具有起点标识。示例性的,起点标识为一个旗帜;或,起点标识为突出显示的简单形状;或,起点标识为一个图标。

路点用于指示虚拟物体在虚拟环境的运动路径上的一个空间点对应的运动参数,运动参数包括坐标参数、旋转参数和缩放参数中的至少一个。其中,坐标参数对应虚拟物体在虚拟环境中的三维坐标,旋转参数对应虚拟物体在虚拟环境中的旋转姿态,缩放参数对应虚拟物体在虚拟环境中的缩放比例。用户可以对路点进行与对虚拟物体同样的编辑操作,该编辑操作可以通过控件展示区20中的控件进行。路点运动模式支持用户将虚拟物体在虚拟环境的运动路径拆解成连续的多段运动,每段运动对应至少两个路点。路点的显示形式为原点处显示未黑色球体的虚拟物体副本。

编辑器界面510中还包括状态控制区13和试玩控件14。状态控制区13包括撤销控件和恢复控件,撤销控件用于取消用户对虚拟物体或路点的编辑操作;恢复控件用于恢复用户对虚拟物体或路点的撤销操作。试玩控件14用于使用户退出编辑器界面,进入试玩界面;试玩界面中,设置有运动器的虚拟物体会进行运动,用户可以通过对试玩控件14进入试玩界面预览虚拟物体的运动。

·添加路点

添加路点的方式有两种:方式一为新增路点;方式二为复制路点。

方式一:新增路点

如图14所示,用户通过对运动控制区40中的路点新增控件41的点击操作新增路点;用户对运动控制区40中的路点新增控件41进行点击操作后,如图15所示,编辑器界面520显示路点编辑区50,虚拟环境画面10中出现新增的路点15,该新增的路点处于选中态,具有高亮边框。路点编辑区50用于显示路点列表。路点列表中显示有2个路点控件,分别对应起点和路点1。起点对应的路点控件上显示时间输入框51,时间输入框51用于显示从当前路点运动至下一个路点的运动时间,时间输入框51显示的运动时间默认为2秒,用户可以通过时间输入框51自行设置从当前路点运动至下一个路点的运动时间。

如图15所示,用户通过对路点编辑区50中的新增路点控件52的点击操作新增路点;路点列表显示新增路点的路点控件54,虚拟环境画面10中出现新增的路点15,该新增的路点处于选中态,具有高亮边框。起点对应的路点控件上显示时间输入框51,时间输入框51显示的运动时间默认为2秒,用户可以通过时间输入框51自行设置从当前路点运动至下一个路点的运动时间。

其中,路点1的旋转参数和缩放参数与路点列表中最后一个路点旋转参数和缩放参数相同,路点1的坐标参数为路点列表中最后一个路点的三维坐标左移1个单位后对应的坐标参数。

新增路点后,虚拟环境画面10中除了显示新增的路点外,路点间会显示运动连线,该运动连线显示两个路点间的最短距离。运动连线使用虚线展示。

方式二:复制路点

如图15所示,用户点击路点编辑区50中路点1对应的路点控件54,路点1对应的路点控件54显示为选中态,具有高亮边框。然后路点复制控件53,如图16所示,路点列表显示新增的路点控件,虚拟环境画面10中出现新增的路点16,该新增的路点处于选中态,具有高亮边框。路点1对应的路点控件54上显示时间输入框,时间输入框显示的运动时间默认为2秒,用户可以通过时间输入框自行设置从当前路点运动至下一个路点的运动时间。

路点编辑区50除了可以新增路点和复制路点外,还能够删除除起点外的任意路点,路点删除控件显示在对应的路点控件右侧。

·编辑路点

针对路点的编辑操作有三种:移动操作、旋转操作和缩放操作。

1.移动操作

如图17所示,用户点击虚拟环境画面10中的路点17后,路点17处于选中态,具有高亮边框。在路点17处于选中态的情况下,用户点击控件展示区20的移动控件21后,以路点17的黑色球体为中心,显示三个坐标轴移动线,分别是x轴移动线、y轴移动线和z轴移动线。用户点击x轴移动线后,可以控制路点17在x轴移动线及其延长线上移动,该移动会改变路点17的三维坐标。

2.旋转操作

如图18所示,用户点击虚拟环境画面10中的路点16后,路点16处于选中态,具有高亮边框。在路点16处于选中态的情况下,用户点击控件展示区20的旋转控件22后,以路点16的黑色球体为中心,显示三个坐标轴旋转线,分别是x轴旋转线、y轴旋转线和z轴旋转线。用户点击y轴旋转线后,可以控制路点16在y轴旋转线所在的平面上旋转,该旋转会改变路点16的旋转姿态。

3.缩放操作

如图19所示,用户点击虚拟环境画面10中的路点16后,路点16处于选中态,具有高亮边框。在路点16处于选中态的情况下,用户点击控件展示区20的缩放控件23后,以路点16的黑色球体为中心,显示三个坐标轴缩放线,分别是x轴缩放线、y轴缩放线和z轴缩放线,这三条缩放线分别对应虚拟物体的长度方向、宽度方向和高度方向;同时还会显示一个将路点16完全包裹的半透明长方体,该长方体的长宽高与路点16对应的虚拟物体11的长宽高相等。用户点击z轴缩放线后,可以控制路点16在z轴缩放线即高度方向上缩放,该缩放会改变路点16的缩放比例。

·运动预览

如图16所示,用户点击路点编辑区50的起点对应的路点控件上显示的运动预览控件55,虚拟环境画面10中会对应显示虚拟物体11从起点即路点17开始运动到路点1在虚拟环境中对应的路点18再运动到路点2在虚拟环境中对应的路点16的运动动画。该运动动画播放过程中,虚拟物体的运动参数会逐渐从前一个路点的运动参数变更为后一个路点的运动参数。例如虚拟物体11从路点17运动到路点18时,路点17的旋转参数为(0°,0°,0°),路点18的旋转参数为(0°,0°,30°),运动时间为2秒,则虚拟物体11在第1秒时的旋转参数为(0°,0°,15°)。其中,路点运动为最近距离的匀速直线运动。

从路点18运动到路点16的运动动画播放过程中,路点编辑区50对应的路点控件54上会显示动画播放的进度条,同时,当前动画播放的路点运动对应的路点控件54上的运动预览控件会变为运动停止控件56。

图22示出了本申请一个示例性实施例提供的游戏程序中的UGC生成方法的示意图,该方法包括:

步骤510:在UGC编辑器的编辑器界面中显示交互控件和位于虚拟环境中的虚拟物体;

在一些实施例中,交互控件包括以下控件中的至少一个:

A,新增关键运动点控件,用于新增关键运动点;

B,复制关键运动点控件,用于复制关键运动点;

C,移动控件,用于移动关键运动点,改变关键运动点的三维坐标;

D,旋转控件,用于旋转关键运动点,改变关键运动点的旋转姿态;

E,缩放控件,用于缩放关键运动点,改变关键运动点的缩放比例;

F,关键运动点控件,关键运动点控件上显示有时间输入框,用于改变关键运动点的运动时间;

G,运动循环模式控件,用于改变虚拟物体的运动循环模式;

H,自动旋转控件,用于使虚拟物体在该关键运动点实现自动旋转;

I,速度平滑控件,用于使虚拟物体在速度切换时保持速度平滑;

J,路径平滑控件,用于使虚拟物体在路径切换时保持路径平滑;

K,速度曲线设置控件,用于设置虚拟物体在两个关键运动点间的速度曲线;

L,运动预览控件,用于预览虚拟物体的运动动画。

在一些实施例中,交互控件是直接在编辑器界面加载显示的;或,交互控件是终端设备触发控件显示事件后在编辑器界面加载显示的。

示例性的,用户通过触摸屏点击显示控件后,终端设备将获取到的点击坐标发送给操作系统,操作系统再将点击坐标发送给游戏程序,游戏程序根据点击坐标,定位到被点击位置为显示控件,游戏程序触发控件显示事件,根据显示控件,在编辑器界面显示上述交互控件中的至少一个。

步骤520:响应于针对交互控件的触发操作,在虚拟环境中为虚拟物体设置至少两个关键运动点,每个关键运动点用于指示虚拟物体在虚拟环境的运动路径上的一个空间点对应的运动参数;

在一些实施例中,关键运动点的参数会被抽象为关键运动点运动单元数据,关键运动点运动单元数据包括:运动参数、运动时间和设置参数中的至少一项。

在一些实施例中,关键运动点运动单元数据是相对于世界坐标系的;或,关键运动点运动单元数据是相对于相对坐标系的,例如相对于第一个关键运动点或相对于前一个关键运动点。

示例性的,关键运动点运动单元数据是相对于世界坐标系的,则关键运动点的三个坐标轴是与世界坐标系的三个坐标轴同方向的,当用户对关键运动点进行旋转操作和缩放操作时,对应的三个坐标轴不会发生改变;或,关键运动点运动单元数据是相对于相对坐标系的,则关键运动点的三个坐标轴会根据用户进行的旋转操作和缩放操作进行相应的旋转和缩放。

在一些实施例中,响应于针对A新增关键运动点控件的触发操作,在虚拟物体已具有n个关键运动点的情况下,在虚拟环境中为虚拟物体增加第n+1个关键运动点,第n+1个关键运动点是第n个关键运动点的下一个关键运动点。

示例性的,用户对新增关键运动点控件进行触发操作后,游戏程序生成相应的关键运动点运动单元数据通过操作系统发送给终端设备,再通过终端设备发送给服务器,由服务器保存在数据库中;或,用户对新增关键运动点控件进行触发操作后,游戏程序生成相应的关键运动点运动单元数据通过操作系统发送给终端设备,有终端设备保存在存储器中,终端设备会定时将存储器中保存的关键运动点运动单元数据发送给服务器,由服务器保存在数据库中。

在一些实施例中,响应于针对B复制关键运动点控件的触发操作,在虚拟物体已具有n个关键运动点的情况下,响应于针对虚拟物体的第i个关键运动点的复制关键运动点操作,在n个关键运动点中的第i个关键运动点和第i+1个关键运动点之间插入一个关键运动点,得到虚拟物体的n+1个关键运动点。其中,插入的关键运动点是n+1个关键运动点中的第i+1个关键运动点,n个关键运动点中的第i+1个关键运动点顺延为n+1个关键运动点中的第i+2个关键运动点,其中,i为小于n的正整数。

示例性的,用户对复制关键运动点控件进行触发操作后,游戏程序生成相应的关键运动点运动单元数据通过操作系统发送给终端设备,再通过终端设备发送给服务器,由服务器保存在数据库中;或,用户对新增关键运动点控件进行触发操作后,游戏程序生成相应的关键运动点运动单元数据通过操作系统发送给终端设备,有终端设备保存在存储器中,终端设备会定时将存储器中保存的关键运动点运动单元数据发送给服务器,由服务器保存在数据库中。

在一些实施例中,在第i个关键运动点处于选中态的情况下,响应于针对C移动控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴移动线。响应于将虚拟物体副本沿三个坐标轴移动线上的任一坐标轴移动线进行移动的操作,改变虚拟物体副本在虚拟环境中的三维坐标;以及将改变后的三维坐标确定为虚拟物体在第i个关键运动点对应的坐标参数。

示例性的,用户通过触摸屏对移动控件的触发操作会触发坐标轴绘制事件,使编辑器显示界面显示三个坐标轴移动线;用户对三个坐标轴移动线上任一坐标轴移动线进行移动的操作会触发坐标轴事件,根据用户对触摸屏的滑动操作,终端设备获取滑动操作对应的按压点坐标和抬起点坐标计算得出滑动距离,游戏程序根据从操作系统或终端设备获取到的滑动距离触发坐标轴事件,坐标轴事件会改变虚拟物体在第i个关键运动点的坐标参数,游戏程序根据关键运动点的坐标参数改变编辑器界面内虚拟环境中虚拟物体副本的位置即三维坐标。

在一些实施例中,在第i个关键运动点处于选中态的情况下,响应于针对D旋转控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴旋转线。响应于将虚拟物体副本沿三个坐标轴旋转线上的任一坐标轴旋转线进行旋转的操作,改变虚拟物体副本在虚拟环境中的旋转姿态;以及将改变后的旋转姿态确定为虚拟物体在第i个关键运动点对应的旋转参数。

示例性的,用户通过触摸屏对移动控件的触发操作会触发坐标轴绘制事件,使编辑器显示界面显示三个坐标轴旋转线;用户对三个坐标轴旋转线上任一坐标轴旋转线进行旋转的操作会触发坐标轴事件,根据用户对触摸屏的滑动操作,终端设备获取滑动操作对应的按压点坐标和抬起点坐标计算得出滑动距离,游戏程序根据从操作系统或终端设备获取到的滑动距离触发坐标轴事件,坐标轴事件会改变虚拟物体在第i个关键运动点的旋转参数,游戏程序根据关键运动点的旋转参数改变编辑器界面内虚拟环境中虚拟物体副本的旋转姿态。

在一些实施例中,在第i个关键运动点处于选中态的情况下,响应于针对E缩放控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴缩放线。响应于沿三个坐标轴缩放线上的任一坐标轴缩放线进行拖拽的操作,改变虚拟物体副本在坐标轴缩放线对应的坐标轴维度的缩放比例;以及将改变后的缩放比例确定为虚拟物体在第i个关键运动点对应的缩放参数。

示例性的,用户通过触摸屏对移动控件的触发操作会触发坐标轴绘制事件,使编辑器显示界面显示三个坐标轴缩放线;用户对三个坐标轴缩放线上任一坐标轴缩放线进行拖拽的操作会触发坐标轴事件,根据用户对触摸屏的滑动操作,终端设备获取滑动操作对应的按压点坐标和抬起点坐标计算得出滑动距离,游戏程序根据从操作系统或终端设备获取到的滑动距离触发坐标轴事件,坐标轴事件会改变虚拟物体在第i个关键运动点的缩放参数,游戏程序根据关键运动点的缩放参数改变编辑器界面内虚拟环境中虚拟物体副本的缩放比例。

在一些实施例中,响应于针对F关键运动点控件的触发操作,响应于在关键运动点控件上显示的时间输入框内输入时间的操作,将被输入的时间设置为虚拟物体从第i个关键运动点运动至第i+1个关键运动点的时间。

示例性的,关键运动点运动单元数据中运动参数的预设值为2秒,当用户在时间输入框输入时间并保存后,游戏程序会将关键运动点运动单元数据中的运动参数更新为输入值,并通过操作系统保存在终端设备的存储器中;或,游戏程序将更新后的关键运动点运动单元数据通过操作系统和终端设备发送给服务器,由服务器保存在数据库中。

在一些实施例中,响应于针对G运动循环模式控件的触发操作,设置虚拟物体的运动循环模式。其中,运动循环模式包括单程运动方式、连续单程方式、循环往复方式中的一种,单程运动方式是从第一个关键运动点依次运动到最后一个关键运动点的方式,连续单程方式是从第一个关键运动点依次运动到最后一个关键运动点后,重新从第一个关键运动点依次运动到最后一个关键运动点的连续运动方式;循环往复方式是从第一个关键运动点依次运动到最后一个关键运动点后,再从最后一个关键运动点返回前一个关键运动点,直至返回运动到第一个关键运动点的往复运动方式。

示例性的,关键运动点运动单元数据中设置参数有运动循环模式参数,预设值为单程运动方式,当用户通过运动循环模式控件设置运动循环模式参数并保存后,游戏程序会将关键运动点运动单元数据中的运动循环模式参数更新为修改后的运动循环模式,并通过操作系统保存在终端设备的存储器中;或,游戏程序将更新后的关键运动点运动单元数据通过操作系统和终端设备发送给服务器,由服务器保存在数据库中。

在一些实施例中,响应于针对H自动旋转控件的触发操作,设置虚拟物体在第i个关键运动点的旋转参数为朝向第i+1个关键运动点的旋转参数。

示例性的,关键运动点运动单元数据中设置参数有自动旋转参数,预设值为否,即不进行自动旋转,当用户通过自动旋转控件设置自动旋转参数并保存后,游戏程序会将关键运动点运动单元数据中的自动旋转参数进行更新,并通过操作系统保存在终端设备的存储器中;或,游戏程序将更新后的关键运动点运动单元数据通过操作系统和终端设备发送给服务器,由服务器保存在数据库中。

在一些实施例中,响应于针对I速度平滑控件的触发操作,设置虚拟物体在中间关键运动点前后的两段运动路径之间切换时的速度变化过程为平滑变化。

示例性的,关键运动点运动单元数据中设置参数有速度平滑参数,预设值为否,即不进行速度平滑,当用户通过速度平滑控件设置速度平滑参数并保存后,游戏程序会将关键运动点运动单元数据中的速度平滑参数进行更新,并通过操作系统保存在终端设备的存储器中;或,游戏程序将更新后的关键运动点运动单元数据通过操作系统和终端设备发送给服务器,由服务器保存在数据库中。

在一些实施例中,响应于针对J路径平滑控件的触发操作,设置虚拟物体在中间关键运动点前后的两段运动路径之间切换时的路径变化过程为平滑变化。

示例性的,关键运动点运动单元数据中设置参数有路径平滑参数,预设值为否,即不进行路径平滑,当用户通过路径平滑控件设置路径平滑参数并保存后,游戏程序会将关键运动点运动单元数据中的路径平滑参数进行更新,并通过操作系统保存在终端设备的存储器中;或,游戏程序将更新后的关键运动点运动单元数据通过操作系统和终端设备发送给服务器,由服务器保存在数据库中。

在一些实施例中,响应于针对K速度曲线设置控件的触发操作,设置虚拟物体从第i个关键运动点运动至第i+1个关键运动点过程中的速度曲线。

示例性的,关键运动点运动单元数据中设置参数有速度曲线参数,预设值为两关键运动点间的直线,当用户通过速度曲线设置控件设置速度曲线参数并保存后,游戏程序会将关键运动点运动单元数据中的速度曲线参数更新为输入值,并通过操作系统保存在终端设备的存储器中;或,游戏程序将更新后的关键运动点运动单元数据通过操作系统和终端设备发送给服务器,由服务器保存在数据库中。

在一些实施例中,响应于针对L运动预览控件的触发操作,显示第i个关键运动点至第n个关键运动点的运动预览动画。其中,n为正整数,i为小于n的正整数;当第i个关键运动点和第i+1个关键运动点的旋转参数不同时,运动预览动画中显示从第i个关键运动点的旋转参数向第i+1个关键运动点的旋转参数的最短旋转路径的渐变旋转运动;当第i个关键运动点和第i+1个关键运动点的缩放参数不同时,运动预览动画中显示从第i个关键运动点的缩放参数向第i+1个关键运动点的缩放参数的最短缩放路径的渐变缩放运动。

示例性的,用户对第i个关键运动点的运动预览控件进行触发操作后,游戏程序基于第i个关键运动点至第n个关键运动点的关键运动点运动单元数据,通过终端设备的处理器进行运动计算,并根据运动计算结果控制虚拟物体基于关键运动点在虚拟环境中运动,同时将该运动通过终端设备的显示屏显示在编辑器界面中;或,用户对第i个关键运动点的运动预览控件进行触发操作后,触发运动预览事件,游戏程序通过操作系统和终端设备向服务器发送运动预览请求,服务器根据第i个关键运动点至第n个关键运动点的关键运动点运动单元数据,进行运动计算,并根据运动计算结果控制虚拟物体基于关键运动点在虚拟环境中运动,同时将该运动编辑为运动预览动画响应给终端设备,终端设备将该响应通过操作系统转发给游戏程序,游戏程序通过终端设备将该运动预览动画显示在编辑器界面中。

步骤530:基于至少两个关键运动点,控制虚拟物体在虚拟环境中运动。

在一些实施例中,控制虚拟物体在虚拟环境中运动是由服务器完成的;或,控制虚拟物体在虚拟环境中运动是由终端设备完成的。

示例性的,如图23所示,基于用户800通过交互控件对关键运动点的新增、编辑、设置等操作,游戏程序会基于数据生成811对应的关键运动点运动单元数据820,关键运动点运动单元数据820包括关键运动点的运动参数、运动时间和设置参数中的至少一项。游戏程序会通过操作系统将关键运动点运动单元数据传输给终端设备,由终端设备通过网络发送给服务器,最终由服务器保存在数据库中。用户在关键运动点编辑810的过程中,服务器会根据保存的关键运动点运动单元数据进行辅助信息计算812,并将其辅助信息展示813在编辑器界面。当用户完成对关键运动点的编辑操作后希望查看虚拟物体在关键运动点运动830的情况时,服务器会根据相邻的关键运动点运动单元数据进行运动计算831,根据运动计算的结果对虚拟物体进行运动控制832,在编辑器界面显示虚拟物体在关键运动点的运动过程。当用户进行地图保存840操作时,关键运动点运动单元数据820将被序列化保存840到服务器或数据库中。

在一些实施例中,虚拟物体运动由运动器控制,一个虚拟物体可以设置k个运动器,一个运动器拥有n个运动单元,每个运动单元可以设置为不同的运动单元模式。其中,运动单元模式包括:路点运动模式、全量运动模式、直线运动模式、旋转运动模式、缩放运动模式和空间运动模式中的至少一个,k和n均为正整数。

示例性的,虚拟物体a有一个运动器b,该运动器b有3个运动单元b1、b2、b3,其中,运动单元b1被设置为路点运动模式,运动单元b2被设置为缩放运动模式,运动单元b3被设置为空间运动模式。

下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。

请参考图24,其示出了本申请一个示例性实施例提供的游戏程序中的UGC生成装置的结构框图。该装置具有实现上述游戏程序中的UGC生成方法示例的功能,功能可以由硬件实现,也可以由硬件执行相应的软件实现。如图24所示,该装置600可以包括:第一显示模块610,设置模块620和控制模块630。

第一显示模块610,用于在UGC编辑器的编辑器界面中显示位于虚拟环境中的虚拟物体;

设置模块620,用于响应于针对虚拟物体的关键运动点编辑操作,在虚拟环境中为虚拟物体设置至少两个关键运动点,每个关键运动点用于指示虚拟物体在虚拟环境的运动路径上的一个空间点对应的运动参数;

控制模块630,用于基于至少两个关键运动点,控制虚拟物体在虚拟环境中运动。

在一些实施例中,设置模块620包括:添加子模块和编辑子模块。

添加子模块,用于响应于针对虚拟物体的添加关键运动点操作,在虚拟环境中为虚拟物体添加至少一个关键运动点;

编辑子模块,用于响应于对至少两个关键运动点中的第i个关键运动点的编辑操作,设置虚拟物体在第i个关键运动点对应的运动参数。

在一些实施例中,添加子模块包括关键运动点新建单元。

关键运动点新建单元,用于在虚拟物体已具有n个关键运动点的情况下,响应于针对虚拟物体的新建关键运动点操作,在虚拟环境中为虚拟物体增加第n+1个关键运动点,第n+1个关键运动点是第n个关键运动点的下一个关键运动点。

在一些实施例中,添加子模块包括关键运动点复制单元。

关键运动点复制单元,用于在虚拟物体已具有n个关键运动点的情况下,响应于针对虚拟物体的第i个关键运动点的复制关键运动点操作,在n个关键运动点中的第i个关键运动点和第i+1个关键运动点之间插入一个关键运动点,得到虚拟物体的n+1个关键运动点。

在一些实施例中,编辑子模块包括:第一显示单元、第一设置单元、第二显示单元和第一改变单元。

第一显示单元,用于在编辑器界面显示移动控件,以及位于第i个关键运动点的虚拟物体副本;

第二显示单元,用于在第i个关键运动点处于选中态的情况下,响应于针对移动控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴移动线;

第一改变单元,用于响应于将虚拟物体副本沿三个坐标轴移动线上的任一坐标轴移动线进行移动的操作,改变虚拟物体副本在虚拟环境中的三维坐标;以及将改变后的三维坐标确定为虚拟物体在第i个关键运动点对应的坐标参数。

在一些实施例中,编辑子模块包括:第三显示单元、第四显示单元和第二改变单元。

第三显示单元,用于在编辑器界面显示旋转控件,以及位于第i个关键运动点的虚拟物体副本;

第四显示单元,用于在第i个关键运动点处于选中态的情况下,响应于针对旋转控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴旋转线;

第二改变单元,用于响应于将虚拟物体副本沿三个坐标轴旋转线上的任一坐标轴旋转线进行旋转的操作,改变虚拟物体副本在虚拟环境中的旋转姿态;以及将改变后的旋转姿态确定为虚拟物体在第i个关键运动点对应的旋转参数。

在一些实施例中,编辑子模块包括:第五显示单元、第六显示单元和第三改变单元。

第五显示单元,用于在编辑器界面显示缩放控件,以及位于第i个关键运动点的虚拟物体副本;

第六显示单元,用于在第i个关键运动点处于选中态的情况下,响应于针对缩放控件的触发操作,以虚拟物体副本上的参考点为中心显示三个坐标轴缩放线;

第三改变单元,用于响应于沿三个坐标轴缩放线上的任一坐标轴缩放线进行拖拽的操作,改变虚拟物体副本在坐标轴缩放线对应的坐标轴维度的缩放比例;以及将改变后的缩放比例确定为虚拟物体在第i个关键运动点对应的缩放参数。

在一些实施例中,设置模块620还包括时间设置子模块。

时间设置子模块,用于响应于时间设置操作,设置虚拟物体从第i个关键运动点运动至第i+1个关键运动点的运动时间。

在一些实施例中,时间设置子模块包括:第七显示单元和第一设置单元。

第七显示单元,用于在编辑器界面上显示第i个关键运动点对应的关键运动点控件,第i个关键运动点对应的关键运动点控件上显示有时间输入框;

第一设置单元,用于响应于在时间输入框内输入时间的操作,将被输入的时间设置为虚拟物体从第i个关键运动点运动至第i+1个关键运动点的时间。

在一些实施例中,设置模块620还包括模式设置子模块。

模式设置子模块,用于响应于运动循环模式设置操作,设置虚拟物体的运动循环模式。

在一些实施例中,设置模块620还包括自动旋转子模块。

自动旋转子模块,用于响应于针对第i个关键运动点的自动旋转操作,设置虚拟物体在第i个关键运动点的旋转参数为朝向第i+1个关键运动点的旋转参数。

在一些实施例中,设置模块620还包括速度平滑子模块。

速度平滑子模块,用于响应于针对中间关键运动点的速度平滑操作,设置虚拟物体在中间关键运动点前后的两段运动路径之间切换时的速度变化过程为平滑变化。

在一些实施例中,设置模块620还包括路径平滑子模块。

路径平滑子模块,用于响应于针对中间关键运动点的路径平滑操作,设置虚拟物体在中间关键运动点前后的两段运动路径之间切换时的路径变化过程为平滑变化。

在一些实施例中,设置模块620还包括显示子模块和速度曲线子模块。

显示子模块,用于显示第i个关键运动点至第i+1个关键运动点的速度曲线设置控件;

速度曲线子模块,用于响应于针对速度曲线设置控件的设置操作,设置虚拟物体从第i个关键运动点运动至第i+1个关键运动点过程中的速度曲线。

在一些实施例中,设置模块620还包括运动预览子模块。

运动预览子模块,用于响应于针对第i个关键运动点至第i+1个关键运动点的运动预览操作,显示第i个关键运动点至第n个关键运动点的运动预览动画。

在一些实施例中,运动预览子模块包括第八显示单元和第九显示单元。

第八显示单元,用于在编辑器界面上显示至少两个关键运动点的运动预览控件,至少两个关键运动点包括n个关键运动点;

第九显示单元,用于响应于针对第i个关键运动点的运动预览控件的触发操作,显示第i个关键运动点至第n个关键运动点的运动预览动画。

在一些实施例中,装置600还包括第二显示模块。

第二显示模块,用于响应于针对虚拟物体的关键运动点编辑操作,在编辑器界面中显示辅助信息。

需要说明的是:上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图25示出了本申请一个示例性实施例提供的计算机设备的结构框图。

该计算机设备700可以是便携式移动终端,本实施例也称为移动终端。比如:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器。计算机设备700还可能被称为用户设备、便携式终端等其他名称。

通常,计算机设备700包括有:处理器701和存储器702。

处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(FieldProgrammable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。

存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器701所执行以实现本申请实施例中提供的游戏程序中的UGC生成方法。

在一些实施例中,计算机设备700还可选包括有:外围设备接口703和至少一个外围设备。具体地,外围设备包括:射频电路704、触摸显示屏705、摄像头706、音频电路707和电源708中的至少一种。

外围设备接口703可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。

触摸显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。触摸显示屏705还具有采集在触摸显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。触摸显示屏705用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,触摸显示屏705可以为一个,设置计算机设备700的前面板;在另一些实施例中,触摸显示屏705可以为至少两个,分别设置在计算机设备700的不同表面或呈折叠设计;在一些实施例中,触摸显示屏705可以是柔性显示屏,设置在计算机设备700的弯曲表面上或折叠面上。甚至,触摸显示屏705还可以设置成非矩形的不规则图形,也即异形屏。触摸显示屏705可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-EmittingDiode,有机发光二极管)等材质制备。

摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头用于实现视频通话或自拍,后置摄像头用于实现照片或视频的拍摄。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能,主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路707用于提供用户和计算机设备700之间的音频接口。音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在计算机设备700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。

电源708用于为计算机设备700中的各个组件进行供电。电源708可以是交流电、直流电、一次性电池或可充电电池。当电源708包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。

在一些实施例中,计算机设备700还包括有一个或多个传感器709。该一个或多个传感器709包括但不限于:加速度传感器710、陀螺仪传感器711、压力传感器712、光学传感器713以及接近传感器714。

加速度传感器710可以检测以计算机设备700建立的坐标系的三个坐标轴上的加速度大小。比如:加速度传感器710可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器710采集的重力加速度信号,控制触摸显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器710还可以用于游戏或用户的运动数据的采集。

陀螺仪传感器711可以检测计算机设备700的机体方向及转动角度,陀螺仪传感器711可以与加速度传感器710协同采集用户对计算机设备700的3D动作。处理器701根据陀螺仪传感器711采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器712可以设置在计算机设备700的侧边框和/或触摸显示屏705的下层。当压力传感器712设置在计算机设备700的侧边框时,可以检测用户对计算机设备700的握持信号,根据该握持信号进行左右手识别或快捷操作。当压力传感器712设置在触摸显示屏705的下层时,可以根据用户对触摸显示屏705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

光学传感器713用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器713采集的环境光强度,控制触摸显示屏705的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏705的显示亮度;当环境光强度较低时,调低触摸显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器713采集的环境光强度,动态调整摄像头组件706的拍摄参数。

接近传感器714,也称距离传感器,通常设置在计算机设备700的正面。接近传感器714用于采集用户与计算机设备700的正面之间的距离。在一个实施例中,当接近传感器714检测到用户与计算机设备700的正面之间的距离逐渐变小时,由处理器701控制触摸显示屏705从亮屏状态切换为息屏状态;当接近传感器714检测到用户与计算机设备700的正面之间的距离逐渐变大时,由处理器701控制触摸显示屏705从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图25中示出的结构并不构成对计算机设备700的限定,可以包括比图示更多或更少的组件,或组合某些组件,或采用不同的组件布置。

在示例性实施例中,本申请提供了一种芯片,所述芯片包括可编程逻辑电路和/或程序指令,当芯片在计算机设备上运行时,用于实现上述方法实施例提供的游戏程序中的UGC生成方法。

本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序由处理器加载并执行以实现上述方法实施例提供的游戏程序中的UGC生成方法。

本申请提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备的处理器加载并执行以实现上述方法实施例提供的游戏程序中的UGC生成方法。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的计算机可读存储介质可以是只读存储器,磁盘或光盘等。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。

以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 样本存储路径生成方法、装置、计算机设备及存储介质
  • 词表生成方法、文本分类方法、装置、设备及存储介质
  • 游戏应用程序的显示方法、装置、终端及存储介质
  • 一种小程序预览码生成方法、设备及存储介质
  • 类文件生成方法、装置、电子设备及存储介质
  • 游戏场景中的组件生成方法、装置、存储介质与电子设备
  • 游戏场景中的组件生成方法、装置、存储介质与电子设备
技术分类

06120116503065