CN109445868A - 一种游戏场景中路段模型的生成方法和装置 - Google Patents
一种游戏场景中路段模型的生成方法和装置 Download PDFInfo
- Publication number
- CN109445868A CN109445868A CN201811065539.XA CN201811065539A CN109445868A CN 109445868 A CN109445868 A CN 109445868A CN 201811065539 A CN201811065539 A CN 201811065539A CN 109445868 A CN109445868 A CN 109445868A
- Authority
- CN
- China
- Prior art keywords
- deformation
- model
- parameter
- code
- control
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例公开了一种游戏场景中路段模型的生成方法和装置。其中一种游戏场景中路段模型的生成方法,包括:获取第一路段模型的形变参数,所述形变参数用于指示所述第一路段模型需要进行的形状和/或状态的改变;确定所述形变参数在所属的模型控制环境中对应的形变控件,根据所述形变参数和所述形变控件确定所述第一路段模型的形变代码;通过所述形变代码调用所述形变控件生成第二路段模型,所述第二路段模型用于游戏场景中实时道路显示。本申请有利于解决相似模型造成的内存、空间大小浪费和模型无法支持代码动态改变的问题。
Description
技术领域
本发明涉及计算机领域,主要涉及一种跑酷游戏中路段模型的优化生成方法和装置。
背景技术
目前在需要道路拼接游戏(例如为,与三维立体(3Dimensions,3D)赛车等类似的赛车游戏,神庙逃亡等类似的跑酷游戏)的开发中,经常会出现很多相似路段的模型,比如有不同弯曲度,不同旋转角度,不同缩放比例等部分变化的路段,美术会分别制作出不同形变的3D模型,在需要不同程度形变的3D模型时,可以在3D软件(如3dsmax或maya)中一一输出,例如:需要左弯曲90度道路,直路,右弯曲90度道路模型时,游戏中会出现三个相似模型。形变模型可以在3D软件中基于第一道路模型,调节形变参数,输出一个3D模型,然后基于第一道路模型再次调节形变参数,输出另一个不同的3D模型。在需要多少种不同程度的形变时,需要相应的输出多少个不同的模型。所以通常一个游戏制作完成后,会有很大的内存空间会被这些必要的大量相似模型所占据,造成大量的内存和空间的浪费,而且这些大量的相似模型无法支持实时的各种形变,即无法支持在游戏中跑道在玩家面前突然起伏弯曲,制造紧张感。因此如何减少大量相似模型在不需要实时变化时造成的内存、空间大小浪费和如何控制模型支持实时动态改变是目前要解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种游戏场景中路段模型的生成方法和装置。
第一方面,本发明实施例提供了一种游戏场景中路段模型的生成方法,可包括:
获取第一路段模型的形变参数,形变参数用于指示第一路段模型需要进行的形状和/或状态的改变,形变参数包括参数值,参数值用于指示第一路段模型需要进行的形状和/或状态改变的程度;确定形变参数在所属的模型控制环境中对应的形变控件,根据形变参数和形变控件生成第一路段模型的形变代码;通过形变代码调用形变控件生成第二路段模型,第二路段模型用于游戏场景中实时道路显示。
通过第一方面提供的一种游戏场景中路段模型的生成方法,可以通过代码灵活动态的调用形变参数对应的形变控件,动态的改变模型的形状和/或状态。因此,在游戏场景中需要输出多个相似路段模型的情况下,本发明实施例只需要通过少量的用于改变模型的形状和/或状态的代码,即可以完成多个相似形变的模型输出,减少相似模型造成的内存、空间大小的浪费。其中模型控制环境可以是3D模型在3D软件中模型的控制方法。
在一种可能的实现方式中,控制环境可包括以下至少一种:骨骼动画模拟,形变动画模拟或用着色器Shader实现的动画模拟等。
在一种可能的实现的方式中,形变参数是指示形状和/或状态改变的参数,包括以下至少一种:位移,旋转,缩放,是否显示,弯曲,扭曲,松弛,融化,法线,其他顶点变化或纹理等。形变参数还可以包含参数值,参数值用来表示形状和/或状态改变的程度大小。
在一种可能的实现方式中,形变参数包括第一形变参数和第二形变参数,第一形变参数属于第一模型控制环境,第二形变参数属于第二模型控制环境;确定形变参数在所属的模型控制环境中对应的形变控件,根据形变参数和形变控件生成第一路段模型的形变代码,包括:确定第一形变参数在所属的第一模型控制环境中对应的第一形变控件,根据第一形变参数和第一形变控件生成第一路段模型的第一形变代码;确定第二形变参数在所属的第二模型控制环境中对应的第二形变控件,根据第二形变参数和第二形变控件生成第一路段模型的第二形变代码;通过形变代码调用形变控件生成第二路段模型,包括:根据第一形变代码调用第一形变参数所对应的形变控件,根据第二形变代码调用第二形变参数所对应的形变控件生成第二路段模型。
通过本发明实施例,游戏引擎可以对第一路段模型进行至少两种形状和/或状态改变生成第二路段模型,利用不同的形变参数在所属不同的的模型控制环境中对应的形变控件,通过代码动态同时改变至少一种模型的形状和/或状态,完成相似形变的模型输出。其中模型控制环境可以是3D模型在3D软件中模型的控制方法。
在一种可能的实现方式中,形变参数包括第三形变参数的不同参数值,不同参数值包括第一参数值和第二参数值,参数值用于指示第一路段模型需要进行的形状和/或状态改变的程度,可以用于匹配形变参数的变量参数的值;
确定第三形变参数在所属的模型控制环境中对应的形变控件,根据第三形变参数和形变控件生成第一路段模型的形变代码;
通过形变代码调用形变控件生成第二路段模型,包括:通过形变代码调用形变控件生成第一参数值对应的第二路段模型和通过形变代码调用形变控件生成第二参数值对应的第二路段模型。
通过本发明实施例,游戏引擎可以利用相同的形变参数在所属的模型控制环境中对应的形变控件,通过代码动态同时改变至少两个形变值的模型的形状和/或状态,生成至少两个相似形变的模型输出。其中模型控制环境可以是3D模型在3D软件中模型的控制方法。
在一种可能的实现方式中,获取第一路段模型的形变参数之前,所述方法还包括:接收第一路段模型的形变命令,形变命令包括形变参数;或者,根据预设置的路段模型与形变参数的匹配关系,确定第一路段模型的形变参数。
在一种可能的实现方式中,第一模型的形变代码,包括调用第一模型控制环境的形变控件的代码、获取第一模型控制环境的变量参数的代码和根据形变参数设置的变量参数的数值的代码。
在一种可能的实现方式中,设置的变量参数的数值满足变量参数的预设阈值范围。
在一种可能实现的方式中,获取第一路段模型的形变参数之前,所述方法还包括:获取第一路段模型;第一路段模型可以是在3D软件中支持至少一种控制环境修改的,设置形变参数的变量参数的数值全为0的路段模型。
第二方面,本发明实施例提供了一种游戏场景中路段模型的生成装置,可包括:获取单元,确定单元和生成单元;
其中,获取单元,用于获取第一路段模型的形变参数,形变参数用于指示第一路段模型需要进行的形状和/或状态的改变;
确定单元,用于确定形变参数在所属的模型控制环境中对应的形变控件,根据形变参数和形变控件确定第一路段模型的形变代码;
生成单元,用于通过形变代码调用形变控件生成第二路段模型,第二路段模型用于游戏场景中实时道路显示。
通过第二方面提供的一种游戏场景中路段模型的生成装置,可以利用形变参数在所属的模型控制环境中对应的形变控件,通过代码动态的改变模型的形状和/或状态,完成相似形变的模型输出。其中模型控制环境可以是3D模型在3D软件中模型的控制方法。
在一种可能的实现装置中,控制环境可包括以下至少一种:骨骼动画模拟,形变动画模拟或用着色器Shader实现的动画模拟等。
在一种可能的实现装置中,获取单元中形变参数包括第一形变参数和第二形变参数,第一形变参数属于第一模型控制环境,第二形变参数属于第二模型控制环境;
确定单元,具体用于:确定第一形变参数在所属的第一模型控制环境中对应的第一形变控件,根据第一形变参数和第一形变控件生成第一路段模型的第一形变代码;确定第二形变参数在所属的第二模型控制环境中对应的第二形变控件,根据第二形变参数和第二形变控件生成第一路段模型的第二形变代码;
生成单元,具体用于:根据第一形变代码调用第一形变参数所对应的形变控件,根据第二形变代码调用第二形变参数所对应的形变控件生成第二路段模型。
通过本发明实施例,游戏引擎可以对第一路段模型进行至少两种形状和/或状态改变生成第二路段模型,利用不同的形变参数在所属不同的的模型控制环境中对应的形变控件,通过代码动态同时改变至少一种模型的形状和/或状态,完成相似形变的模型输出。其中模型控制环境可以是3D模型在3D软件中模型的控制方法。
在一种可能的实现装置中,形变参数包括第三形变参数的不同参数值,不同参数值包括第一参数值和第二参数值;
确定单元,具体用于确定第三形变参数在所属的模型控制环境中对应的形变控件,根据第三形变参数和形变控件生成第一路段模型的形变代码;
生成单元用于通过形变代码调用形变控件生成第二路段模型,具体为:通过形变代码调用形变控件生成第一参数值对应的第二路段模型和通过形变代码调用形变控件生成第二参数值对应的第二路段模型;
通过本发明实施例,游戏引擎可以利用相同的形变参数在所属的模型控制环境中对应的形变控件,通过代码动态同时改变至少两个参数值的模型的形状和/或状态,生成至少两个相似形变的模型输出。其中模型控制环境可以是3D模型在3D软件中模型的控制方法。
在一种可能的实现装置中,获取单元之前,还包括:
接收单元,用于接收第一路段模型的形变命令,形变命令包括形变参数;或者,
匹配单元,用于根据预设置的路段模型与形变参数的匹配关系,确定第一路段模型的形变参数。
在一种可能的实现装置中,第一模型的形变代码,包括:
获取调用第一模型控制环境的形变控件的代码、获取第一模型控制环境的变量参数的代码和根据形变参数设置的变量参数的数值的代码。
在一种可能的实现装置中,设置的变量参数的数值满足变量参数的预设阈值范围。
在一种可能实现的装置中,所述装置还包括:路段单元,用于获取第一路段模型;第一路段模型是在3D软件中支持至少一种控制环境修改的,设置形变参数的变量参数的数值全为0的路段模型。
第三方面,本发明实施例提供了一种计算机可读存储介质,该计算机存储介质存储有程序指令,该程序指令当被处理器运行时,该处理器执行上述第一方面的方法。
实施本发明实施例,当需要生成一条完整的跑酷游戏道路时,游戏引擎可以通过获取用于指示形状和/或状态(例如:位移,旋转或缩放等)改变的形变参数(形变参数也包含参数值,参数值用于指示需要进行的形状和/或状态改变的程度,举例来说,可以根据参数值匹配形变参数的变量参数的数值),调取形变参数所对应的形变控件,根据形变参数和形变控件确定形变代码(形变代码里包含获取变量参数的代码和设置变量参数数值的代码,变量参数数值可以用来匹配形变参数的参数值);通过形变代码调用形变控件生成第二路段模型。原因在于,一条完整的跑酷游戏道路需要构建大量的路段模型用来进行实时拼接,这些路段模型都是很多相似的模型,例如:需要左弯曲90度,直路,右弯曲90度道路模型时,游戏中会出现三个相似模型。这些大量不同弯曲度的相似的3D模型带来的问题就是大量的内存和空间大小的浪费,而且这些大量的相似模型无法支持实时的各种形变,即无法支持在游戏中跑道在玩家面前突然起伏弯曲,制造紧张感。因此,本发明实施例中,第二路段模型因为可以利用第一路段模型针对某些形变参数利用代码调用控件动态生成,可以解决相似模型造成的内存、空间大小浪费和模型无法支持实时改变的问题。
附图说明
为了更清楚地说明本发明实施例或背景技术中的技术方案,下面将对本发明实施例或背景技术中所需要使用的附图进行说明。显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种游戏场景中路段模型的生成方法流程示意图;
图2是本发明实施例提供的另一种游戏场景中路段模型的生成方法流程示意图;
图3是本发明实施例提供的又一种游戏场景中路段模型的生成方法流程示意图;
图4是本发明实施例提供的一种简化的路段模型示意图;
图5是本发明实施例提供的一种游戏场景中路段模型的生成装置示意图;
图6是本发明实施例提供的另一种游戏场景中路段模型的生成装置示意图;
图7是本发明实施例提供的一种简化的实体装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例进行描述。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
首先,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)控制环境,也可以叫做控制方法,是在3D软件中使用的一种构建3D动画模型的方法,可包括以下至少一种:骨骼动画模拟,形变动画模拟或用着色器Shader实现的动画模拟等
(2)游戏引擎是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计者能容易和快速地做出游戏程式而不用由零开始。大部分都支持多种操作平台,如Linux、Mac OSX、微软Windows。游戏引擎包含以下系统:渲染引擎(即“渲染器”,含二维图像引擎和三维图像引擎)、物理引擎、碰撞检测系统、音效、脚本引擎、电脑动画、人工智能、网络引擎以及场景管理。
(3)跑酷游戏,跑酷即为Parkour。Parkour运动把整个城市当作一个大训练场,一切围墙、屋顶都成为可以攀爬、穿越的对象,特别是废弃的房屋。这里所说的跑酷游戏可以是在终端设备上进行一种以道路为基础的电子竞技类跑酷游戏。
其次,提出本申请需要解决的技术问题及应用场景。目前在和3D赛车,神庙逃亡等类似的跑酷游戏开发中,经常会出现很多相似路段的模型,比如有不同弯曲度,不同旋转角度,不同缩放比例等部分变化的路段,美术会分别制作出不同形变的3D模型,在需要不同形变的3D模型时可以在3D软件(如3Dsmax或maya)中基于第一道路模型,简单的调节形变参数,然后输出一个具有不同形变的3D模型。所以通常一个游戏制作完成后,会有很大的内存空间会被这些必要的大量相似模型所占据,造成大量的内存和空间的浪费,而且这些大量的相似模型无法支持实时的各种形变,即无法支持在游戏中跑道在玩家面前突然起伏弯曲,制造紧张感。因此如何减少大量相似模型在不需要实时变化时造成的内存、空间大小浪费和如何控制模型支持实时动态改变是目前要解决的问题。
例如在一些应用场景中,一条完整的跑酷游戏道路需要构建大量的路段模型用来进行实时拼接,这些路段模型都是很多相似的模型,例如需要左弯曲90°,直路,右弯曲90°道路模型时,游戏中会出现三个相似模型。这些大量不同弯曲度的相似的3D模型带来的问题就是大量的内存和空间大小的浪费,而且这些大量的相似模型无法支持实时的各种形变,即无法支持在游戏中跑道在玩家面前突然起伏弯曲,制造紧张感。但大量的相似的模型又是必要的模型并不能删除。所以下面结合本申请中提供的一种游戏场景中路段模型的生成方法示意图,以及一种游戏场景中路段模型的生成装置示意图,对本申请中提出的技术问题进行具体分析和解决。
参考图1,图1是本发明实施例提供的一种游戏场景中路段模型的生成方法流程示意图;以游戏Unity引擎为例,其中,Unity引擎是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎,本发明实施例可以包括以下步骤S101-步骤S103。
步骤S101:Unity引擎获取第一路段模型的形变参数,形变参数用于指示第一路段模型需要进行的形状和/或状态的改变。
具体地,第一路段模型是设置形变参数的变量参数的数值全为0的路段模型。第一路段模型是生成第二路段模型的引擎可以利用控件进行形变操作的基本模型,没有发生形状和/或状态的改变。形变参数是指示形状和/或状态改变的参数,包括以下至少一种:位移,旋转,缩放,是否显示,弯曲,扭曲,松弛,融化,法线,其他顶点变化或纹理等。
可选的,获取第一路段模型的形变参数之前,还包括:接收第一路段模型的形变命令,形变命令包括形变参数。
可选的,获取第一路段模型的形变参数之前,还包括:根据预设置的路段模型与形变参数的匹配关系,确定第一路段模型的形变参数。
步骤S102:确定形变参数在所属的模型控制环境中对应的形变控件,根据形变参数和形变控件确定第一路段模型的形变代码。
具体地,不同的形变参数会对应不同的模型控制环境,同一控制环境里会包含许多形变参数,在同一控制环境中的不同形变参数需要不同的形变控件控制形变,不同的形变控件对应不同的形变代码,所以要确定形变参数在所属的模型控制环境中对应的形变控件,根据形变参数和形变控件确定第一路段模型的形变代码。
可选的,第一模型的形变代码,包括调用第一模型控制环境的形变控件的代码、获取第一模型控制环境的变量参数的代码和根据形变参数设置的变量参数的数值的代码。
步骤S103:通过形变代码调用形变控件生成第二路段模型,第二路段模型用于游戏场景中实时道路显示。
具体地,可以通过形变代码主要是调用形变控件,获得形变控件里影响形变参数的变量,修改形变控件里影响形变参数的变量的值,然后生成第二路段模型。
可选的,设置的变量参数的数值,设置的变量参数的数值满足所述变量参数的预设阈值范围。其中,变量参数阈值范围可以设置为0-100。模型的第一形态即没有发生过形变参数对应形变的模型,设置模型的第一形态的形变参数的变量参数的数值为0;模型的第二形态即在形变参数对应的形态中能发生最大形变的模型,设置模型的第二形态的形变参数的变量参数的数值为100。以弯曲形变为例,弯曲形变参数有两个变量参数,为left和right,直线路段模型的两个变量参数left和right数值均为0,向左弯曲90°的路段模型的两个变量参数left和right数值分别为100和0,所以变量参数的阈值范围0-100是用来描述形变参数改变形状和/或状态程度的范围,不是具体地表示大小范围。第二路段模型在形变参数下的形变介于同一形变参数的第一形态和第二形态之间。
下面结合图1提供的一种游戏场景中路段模型的生成方法流程,对本申请中提出的技术问题进行具体分析和解决。当在同时发生两种或两种以上形变,而且这些形变不属于同一个控制环境的情况下,我们采用以下一种游戏场景中路段模型的生成方法,请一并参考图2和图4,图2是本发明实施例提供的另一种游戏场景中路段模型的生成方法流程示意图,图4中A、B两部分是本发明实施例基于图2的另一种游戏场景中路段模型的生成方法提供的一种发生扭曲和旋转形变的简化模型对比示意图。以游戏Unity引擎为例,本发明实施例可以包括以下步骤S201-步骤S204。
步骤S201:Unity引擎接收第一路段模型的形变命令。
具体地,游戏引擎会接收第一路段模型的形变命令,这个命令用来指示第一路段模型需要进行的形变类型,形变命令包括形变参数。
可选的,在没有接收到第一路段模型的形变命令时,游戏引擎根据预设置的路段模型与形变参数的匹配关系,确定第一路段模型的形变参数。预设置的路段模型与形变参数的匹配关系,可以是根据策划预先设置好的模型形变,把模型形变与第一路段模型一一对应起来,获得第一路段模型的形变参数。
步骤S202:获取第一路段模型的第一形变参数(以扭曲为例)和第二形变参数(以旋转为例)。
具体地,形变命令里包含形变参数,接收形变命令后,可以获取形变参数。当在同时发生两种或两种以上形变时,会出现两种或两种以上的形变参数。多种形变参数可以属于同一个控制环境,也可以属于不同的控制环境,如下表1所示,是部分形变参数和控制环境的对应关系的表格。
表1部分形变参数和控制环境的对应关系
结合上述表1,本实施例中形变参数属于不同的控制环境,第一形变参数(以扭曲为例)属于第一模型控制环境(形变动画模拟),第二形变参数(以旋转为例)属于第二模型控制环境(骨骼动画模拟)。
可选的,形变参数属于相同的控制环境时,形变参数可包括第一形变参数(以旋转为例)和第二形变参数(以缩放为例),第一形变参数和第二形变参数都属于第一模型控制环境(骨骼动画模拟)。
步骤S203:确定形变参数在所属的模型控制环境中对应的形变控件,根据形变参数和形变控件确定第一路段模型的形变代码。
具体地,本实施例中形变参数属于不同的控制环境,可以确定第一形变参数在所属的所述第一模型控制环境中对应的第一形变控件,根据第一形变参数和第一形变控件确定第一路段模型的第一形变代码;确定第二形变参数在所属的第二模型控制环境中对应的第二形变控件,根据第二形变参数和第二形变控件确定第一路段模型的第二形变代码。其中,形变代码主要是调用形变控件,获得形变控件里影响形变参数的变量,修改形变控件里影响形变参数的变量的值。本实施例中形变代码可以是获取调用第一模型控制环境中对应的第一形变控件的代码、获取调用第二模型控制环境中对应的第二形变控件的代码、获取第一模型控制环境的第一形变参数对应的第一变量参数的代码、获取第二模型控制环境的第二形变参数对应的第二变量参数的代码、根据第一形变参数设置的第一变量参数的数值的代码和根据第二形变参数设置的第二变量参数的数值的代码。
在一种可能的实现方式中,形变参数属于相同的控制环境时,确定第一形变参数在所属的第一模型控制环境中对应的第一形变控件,根据第一形变参数和第一形变控件确定第一路段模型的第一形变代码;确定第二形变参数在所属的第一模型控制环境中对应的第二形变控件,根据第二形变参数和第二形变控件确定第一路段模型的第二形变代码。
步骤S204:通过形变代码调用形变控件生成第二路段模型。
具体地,根据第一形变代码调用第一形变参数所对应的形变控件,根据第二形变代码调用第二形变参数所对应的形变控件,生成第二路段模型。
可选的,不同的形变参数对应不同的形变控件,在不同的形变控件中,对应不同的形变参数也有不同的变量参数,形变代码直接调用不同的形变控件,获取不同的变量参数,在游戏引擎中直接控制模型形变。可以保证两种或两种以上的形变能够同时进行。
可选的,设置的变量参数的数值,设置的变量参数的数值满足变量参数的预设阈值范围。其中,变量参数阈值范围可以设置为0-100。模型的第一形态即没有发生过形变参数对应形变的模型,设置模型的第一形态的形变参数的变量参数的数值为0;模型的第二形态即在形变参数对应的形态中能发生最大形变的模型,设置模型的第二形态的形变参数的变量参数的数值为100。以弯曲形变为例,弯曲形变参数有两个变量参数,为left和right,直线路段模型的两个变量参数left和right数值均为0,向左弯曲90°的路段模型的两个变量参数left和right数值分别为100和0,所以变量参数的阈值范围0-100是用来描述形变参数改变形状和/或状态程度的范围,不是具体地表示大小范围。第二路段模型在形变参数下的形变介于同一形变参数的第一形态和第二形态之间。
下面结合图1提供的一种游戏场景中路段模型的生成方法流程,提供又一种游戏场景中路段模型的生成方法流程,当只在需要一种形变的情况下,但是需要输出不同程度的形变模型时,即需要同种形变的形变参数的变量参数值不同的多个模型时,我们采用以下又一种游戏场景中路段模型的生成方法,请一并参考图3和图4,图3是本发明实施例提供的又一种游戏场景中路段模型的生成方法流程示意图,图4中A、C两部分是本发明实施例基于图3的另一种游戏场景中路段模型的生成方法提供的一种发生多种弯曲形变的简化模型对比示意图。以游戏Unity引擎为例,本发明实施例可以包括以下步骤S301-步骤S304。
步骤S301:Unity引擎接收第一路段模型的形变命令。
具体地,游戏引擎会接收第一路段模型的形变命令,这个命令用来指示第一路段模型需要进行的形变类型,形变命令包括形变参数。
可选的,在没有接收到第一路段模型的形变命令时,游戏引擎根据预设置的路段模型与形变参数的匹配关系,确定第一路段模型的形变参数。预设置的路段模型与形变参数的匹配关系,可以是根据策划预先设置好的模型形变,把模型形变与第一路段模型一一对应起来,获得第一路段模型的形变参数。
步骤S302:获取第一路段模型的第三形变参数(以弯曲为例)。
具体地,形变命令里包含第三形变参数和第三形变参数的不同参数值,形变参数包括第三形变参数的不同参数值,不同参数值包括第一参数值(以向右弯曲90°为例)和第二参数值(以向左弯曲90°为例)。可以认为形变命令中包含同种形变参数的不同参数值,参数值用于指示第一路段模型需要进行的形状和/或状态改变的程度,可以根据参数值可以匹配变量参数的数值,变量参数的数值满足阈值范围。
步骤S203:确定第三形变参数在所属的模型控制环境中对应的形变控件,根据第三形变参数和形变控件确定第一路段模型的形变代码。
具体地,形变代码主要是调用形变控件,获得形变控件里影响形变参数的变量,修改形变控件里影响形变参数的变量的值。
其中,形变代码可以是获取调用第一模型控制环境的形变控件的代码、获取第一模型控制环境的变量参数的代码、根据第三形变参数的第一参数值设置的变量参数的第一数值的代码和根据第三形变参数的第二参数值设置的变量参数的第二数值的代码。
步骤S204:通过形变代码调用形变控件生成第二路段模型。
具体地,通过形变代码调用形变控件生成第三形变参数的第一参数值对应的第二路段模型和通过所述形变代码调用形变控件生成第三形变参数的第二参数值对应的第二路段模型。
可选的,不同的形变参数值对应同一的形变控件,不同的形变代码中,对应的相同的变量参数不同的变量参数的数值,形变代码直接调用形变控件,获取变量参数,设置不同参数值对应的不同变量参数的数值,输出多个相同形变不同形变程度的相似模型。
可选的,参数值用于指示第一路段模型需要进行的形状和/或状态改变的程度,可以根据参数值可以匹配变量参数的数值,变量参数的数值满足预设阈值范围。其中,变量参数阈值范围可以设置为0-100。模型的第一形态即没有发生过形变参数对应形变的模型,设置模型的第一形态的形变参数的变量参数的数值为0;模型的第二形态即在形变参数对应的形态中能发生最大形变的模型,设置模型的第二形态的形变参数的变量参数的数值为100。以弯曲形变为例,弯曲形变参数有两个变量参数,为left和right,直线路段模型的两个变量参数left和right数值均为0,向左弯曲90°的路段模型的两个变量参数left和right数值分别为100和0,所以变量参数的阈值范围0-100是用来描述形变参数改变形状和/或状态程度的范围,不是具体地表示大小范围。第二路段模型在形变参数下的形变介于同一形变参数的第一形态和第二形态之间。
图4是本发明实施例基于图2另一种游戏场景中路段模型的生成方法和图3又一种游戏场景中路段模型的生成方法,提供的一种简化的路段模型示意图,如图所示,图4包括A:一种第一路段模型的示意图;B:基于第一路段模型发生扭曲和旋转形变的第二路段简化模型示意图和基于第一路段模型发生旋转和缩放的第二路段简化模型示意图;C:基于第一路段模型发生向右弯曲90°和向左弯曲90°形变的第二路段简化模型示意图。图4是根据图2和图3所述方法得到的简化的模型示意图,在此不再赘述。
上述详细阐述了本发明实施例的方法,下面提供了与本发明实施例的相关装置,请参见图5,图5装置50是本发明实施例提供的一种游戏场景中路段模型的生成装置示意图。可以包括获取单元501,确定单元502,生成单元503。
获取单元501,用于获取第一路段模型的形变参数,所述形变参数用于指示所述第一路段模型需要进行的形状和/或状态的改变;
确定单元502,用于确定所述形变参数在所属的模型控制环境中对应的形变控件,根据所述形变参数和所述形变控件确定所述第一路段模型的形变代码;
生成单元503,用于通过所述形变代码调用所述形变控件生成第二路段模型,所述第二路段模型用于游戏场景中实时道路显示。
需要说明的是,本发明实施例中图5所描述的装置中各功能单元的功能可参见上述图1中所述的方法实施例中步骤S101-步骤S103的相关描述,此处不再赘述。
请参见图6,图6装置60是本发明实施例提供的另一种游戏场景中路段模型的生成装置示意图,可以包括接收单元601,匹配单元602,获取单元603,确定单元604和生成单元605。
接收单元601,用于接收所述第一路段模型的形变命令,所述形变命令包括所述形变参数;
匹配单元602,用于根据预设置的路段模型与形变参数的匹配关系,确定所述第一路段模型的形变参数;
获取单元603,用于获取第一路段模型的形变参数,所述形变参数用于指示所述第一路段模型需要进行的形状和/或状态的改变;
确定单元604,用于确定所述形变参数在所属的模型控制环境中对应的形变控件,根据所述形变参数和所述形变控件确定所述第一路段模型的形变代码;
生成单元605,用于通过所述形变代码调用所述形变控件生成第二路段模型,所述第二路段模型用于游戏场景中实时道路显示。
需要说明的是,本发明实施例中图6所描述的装置中各功能单元的功能可参见上述图2所述的方法实施例中步骤S201-步骤S204的相关描述和图3中所述的方法实施例中步骤S301-步骤S304的相关描述,此处不再赘述。
根据以上两种装置图,请参考图7,图7是本发明实施例提供的一种简化的实体装置结构示意图。便于理解和图示方便,图7装置70中,可以包括以下一个或多个组件:存储组件701,电源组件702,处理组件703,通信组件704,输入/输出接口组件705,。
存储组件701可以包括一个或多个存储单元,每个单元可以包括一个或多个存储器,存储组件可用于存储程序和各种数据,并能在装置70运行过程中高速、自动地完成程序或数据的存取。可以采用具有两种稳定状态的物理器件来存储信息,所述两种稳定状态分别表示为“0”和“1”。当图7所示的装置70,为图5所述装置50时,存储组件可以用来存储形变参数,形变控件,形变代码,第一路段模型以及其他相关数据等。
电源组件702,可以为装置70的各个组件提供电力,保证其正常运行。电源组件702可以包括电源管理系统,一个或多个电源,以其他与为装置70生成、管理和分配电力相关联的组件。
处理组件703,处理组件也可以称为处理器,处理单元,处理单板,处理模块、处理装置等。处理组件可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。当图7所示的装置70,为图5所述装置50时,所述处理组件703用于调用所述存储组件701的数据执行上述方法中的步骤S101-步骤S103的相关描述,此处不再赘述。
通信组件704,也可以称为收发机,或收发器等,其中可以包括用来进行无线、有线或其他通信方式的单元。可选的,可以将704部分中用于实现接收功能的器件视为接收单元,将用于实现发送功能的器件视为发送单元,即704部分包括接收单元和匹配单元。当图7所示的装置70,为图6所述装置60时,所述处理组件704用于调用所述存储组件701的数据执行上述方法中的步骤S201,步骤S204的相关描述,此处不再赘述。
输入/输出接口组件705,可以为装置03外围部件接口之间提供接口,上述外围部件可以为键盘,鼠标,显示器,按钮,相似装置等。这些按钮可包括但不限于:启动/关闭按钮,锁定按钮和重置按钮等。
在本申请中,所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。尽管在此结合各实施例对本申请进行了描述,然而,在实施例所要求保护的本申请过程中,本领域技术人员可理解并实现公开实施例的其他变化。
Claims (12)
1.一种游戏场景中路段模型的生成方法,其特征在于,包括:
获取第一路段模型的形变参数,所述形变参数用于指示所述第一路段模型需要进行的形状和/或状态的改变;
确定所述形变参数在所属的模型控制环境中对应的形变控件,根据所述形变参数和所述形变控件确定所述第一路段模型的形变代码;
通过所述形变代码调用所述形变控件生成第二路段模型,所述第二路段模型用于游戏场景中实时道路显示。
2.根据权利要求1所述方法,其特征在于,所述形变参数包括第一形变参数和第二形变参数,所述第一形变参数属于第一模型控制环境,所述第二形变参数属于第二模型控制环境;
所述确定所述形变参数在所属的模型控制环境中对应的形变控件,根据所述形变参数和所述形变控件确定所述第一路段模型的形变代码,包括:确定所述第一形变参数在所属的所述第一模型控制环境中对应的第一形变控件,根据所述第一形变参数和所述第一形变控件确定所述第一路段模型的第一形变代码;确定所述第二形变参数在所属的所述第二模型控制环境中对应的第二形变控件,根据所述第二形变参数和所述第二形变控件确定所述第一路段模型的第二形变代码;
所述通过所述形变代码调用所述形变控件生成第二路段模型,包括:根据所述第一形变代码调用所述第一形变参数所对应的所述形变控件,根据所述第二形变代码调用所述第二形变参数所对应的所述形变控件生成所述第二路段模型。
3.根据权利要求1所述方法,其特征在于,所述形变参数包括第三形变参数的不同参数值,所述不同参数值包括第一参数值和第二参数值;
确定所述第三形变参数在所属的模型控制环境中对应的形变控件,根据所述第三形变参数和所述形变控件确定所述第一路段模型的形变代码;
所述通过所述形变代码调用所述形变控件生成第二路段模型,包括:通过所述形变代码调用所述形变控件生成第一参数值对应的第二路段模型和通过所述形变代码调用所述形变控件生成第二参数值对应的第二路段模型。
4.根据权利要求1所述方法,其特征在于,所述获取第一路段模型的形变参数之前,还包括:
接收所述第一路段模型的形变命令,所述形变命令包括所述形变参数;或者,
根据预设置的路段模型与形变参数的匹配关系,确定所述第一路段模型的形变参数。
5.根据权利要求1所述方法,其特征在于,所述第一模型的形变代码,包括:调用所述第一模型控制环境的形变控件的代码、获取所述第一模型控制环境的变量参数的代码和根据所述形变参数设置的所述变量参数的数值的代码。
6.根据权利要求5所述方法,其特征在于,所述设置的所述变量参数的数值满足所述变量参数的预设阈值范围。
7.一种游戏场景中路段模型的生成装置,其特征在于,包括:
获取单元,用于获取第一路段模型的形变参数,所述形变参数用于指示所述第一路段模型需要进行的形状和/或状态的改变;
确定单元,用于确定所述形变参数在所属的模型控制环境中对应的形变控件,根据所述形变参数和所述形变控件确定所述第一路段模型的形变代码;
生成单元,用于通过所述形变代码调用所述形变控件生成第二路段模型,所述第二路段模型用于游戏场景中实时道路显示。
8.根据权利要求7所述装置,其特征在于,所述形变参数包括第一形变参数和第二形变参数,所述第一形变参数属于第一模型控制环境,所述第二形变参数属于第二模型控制环境;
所述确定单元,具体用于:确定所述第一形变参数在所属的所述第一模型控制环境中对应的第一形变控件,根据所述第一形变参数和所述第一形变控件确定所述第一路段模型的第一形变代码;确定所述第二形变参数在所属的所述第二模型控制环境中对应的第二形变控件,根据所述第二形变参数和所述第二形变控件确定所述第一路段模型的第二形变代码;
所述生成单元,具体用于:根据所述第一形变代码调用所述第一形变参数所对应的所述形变控件,根据所述第二形变代码调用所述第二形变参数所对应的所述形变控件生成所述第二路段模型。
9.根据权利要求7所述装置,其特征在于,所述形变参数包括第三形变参数的不同参数值,所述不同参数值包括第一参数值和第二参数值;
所述确定单元,具体用于:确定所述第三形变参数在所属的模型控制环境中对应的形变控件,根据所述第三形变参数和所述形变控件确定所述第一路段模型的形变代码;
所述生成单元,具体用于:通过所述形变代码调用所述形变控件生成第一参数值对应的第二路段模型和通过所述形变代码调用所述形变控件生成第二参数值对应的第二路段模型。
10.根据权利要求7所述装置,其特征在于,所述装置,还包括:
接收单元,用于在所述获取单元获取第一路段模型的形变参数之前,接收所述第一路段模型的形变命令,所述形变命令包括所述形变参数;或者,
匹配单元,用于在所述获取单元获取第一路段模型的形变参数之前,根据预设置的路段模型与形变参数的匹配关系,确定所述第一路段模型的形变参数。
11.根据权利要求7所述装置,其特征在于,所述第一模型的形变代码,包括:
获取调用所述第一模型控制环境的形变控件的代码、获取所述第一模型控制环境的变量参数的代码和根据所述形变参数设置的所述变量参数的数值的代码。
12.根据权利要求11所述装置,其特征在于,所述设置的所述变量参数的数值满足所述变量参数的预设阈值范围。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811065539.XA CN109445868A (zh) | 2018-09-12 | 2018-09-12 | 一种游戏场景中路段模型的生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811065539.XA CN109445868A (zh) | 2018-09-12 | 2018-09-12 | 一种游戏场景中路段模型的生成方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109445868A true CN109445868A (zh) | 2019-03-08 |
Family
ID=65530555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811065539.XA Pending CN109445868A (zh) | 2018-09-12 | 2018-09-12 | 一种游戏场景中路段模型的生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109445868A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112076477A (zh) * | 2020-08-24 | 2020-12-15 | 网易(杭州)网络有限公司 | 虚拟道路的生成方法和装置 |
CN112884883A (zh) * | 2021-01-25 | 2021-06-01 | 深圳市其乐游戏科技有限公司 | 游戏赛道的自动生成方法、终端及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914869A (zh) * | 2014-02-26 | 2014-07-09 | 浙江工业大学 | 支持骨架个性化编辑的轻量化三维树木模型构建方法 |
CN104408771A (zh) * | 2014-11-12 | 2015-03-11 | 东北大学 | 一种基于三维模型的地下矿山斜坡道构建方法 |
US9024938B2 (en) * | 2011-07-29 | 2015-05-05 | Adobe Systems Incorporated | Methods and apparatus for sweep-based freeform deformation of 3-D models |
CN105825542A (zh) * | 2016-03-15 | 2016-08-03 | 北京图安世纪科技股份有限公司 | 一种三维道路快速建模及其动态仿真渲染方法和系统 |
CN107103638A (zh) * | 2017-05-27 | 2017-08-29 | 杭州万维镜像科技有限公司 | 一种虚拟场景与模型的快速渲染方法 |
CN108108027A (zh) * | 2018-02-01 | 2018-06-01 | 福建蓝帽子互动娱乐科技股份有限公司 | 基于过山车的虚拟现实方法及系统 |
CN108364341A (zh) * | 2018-03-05 | 2018-08-03 | 四川易利数字城市科技有限公司 | 基于可重用模板模型的三维场景加载渲染效率提高方法 |
-
2018
- 2018-09-12 CN CN201811065539.XA patent/CN109445868A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9024938B2 (en) * | 2011-07-29 | 2015-05-05 | Adobe Systems Incorporated | Methods and apparatus for sweep-based freeform deformation of 3-D models |
CN103914869A (zh) * | 2014-02-26 | 2014-07-09 | 浙江工业大学 | 支持骨架个性化编辑的轻量化三维树木模型构建方法 |
CN104408771A (zh) * | 2014-11-12 | 2015-03-11 | 东北大学 | 一种基于三维模型的地下矿山斜坡道构建方法 |
CN105825542A (zh) * | 2016-03-15 | 2016-08-03 | 北京图安世纪科技股份有限公司 | 一种三维道路快速建模及其动态仿真渲染方法和系统 |
CN107103638A (zh) * | 2017-05-27 | 2017-08-29 | 杭州万维镜像科技有限公司 | 一种虚拟场景与模型的快速渲染方法 |
CN108108027A (zh) * | 2018-02-01 | 2018-06-01 | 福建蓝帽子互动娱乐科技股份有限公司 | 基于过山车的虚拟现实方法及系统 |
CN108364341A (zh) * | 2018-03-05 | 2018-08-03 | 四川易利数字城市科技有限公司 | 基于可重用模板模型的三维场景加载渲染效率提高方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112076477A (zh) * | 2020-08-24 | 2020-12-15 | 网易(杭州)网络有限公司 | 虚拟道路的生成方法和装置 |
CN112076477B (zh) * | 2020-08-24 | 2024-05-28 | 网易(杭州)网络有限公司 | 虚拟道路的生成方法和装置 |
CN112884883A (zh) * | 2021-01-25 | 2021-06-01 | 深圳市其乐游戏科技有限公司 | 游戏赛道的自动生成方法、终端及存储介质 |
CN112884883B (zh) * | 2021-01-25 | 2024-05-10 | 深圳市其乐游戏科技有限公司 | 游戏赛道的自动生成方法、终端及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108010112B (zh) | 动画处理方法、装置及存储介质 | |
US6937240B2 (en) | Methods and apparatus for transforming three-dimensional objects in video games | |
CN105069219A (zh) | 一种基于云设计的家居设计系统 | |
CN110838162A (zh) | 植被渲染方法及装置、存储介质及电子设备 | |
CN110766776A (zh) | 生成表情动画的方法及装置 | |
CN111402381B (zh) | 模型渲染方法与装置、可读存储介质 | |
CN108335343A (zh) | 喷泉预演仿真方法、系统及服务器 | |
CN112288665A (zh) | 图像融合的方法、装置、存储介质及电子设备 | |
CN109102560A (zh) | 三维模型渲染方法及装置 | |
CN110120087B (zh) | 三维虚拟沙盘的标签标注方法、装置及终端设备 | |
CN107180445B (zh) | 一种动画模型的表情控制方法和装置 | |
CN107578467A (zh) | 一种医疗器械三维建模方法及装置 | |
CN106952340A (zh) | 三维虚拟建模的方法及装置 | |
CN109445868A (zh) | 一种游戏场景中路段模型的生成方法和装置 | |
US11995771B2 (en) | Automated weighting generation for three-dimensional models | |
CN109712226A (zh) | 虚拟现实的透明模型渲染方法及装置 | |
CN106504306A (zh) | 一种动画片段拼接方法、信息发送方法及装置 | |
CN114612602A (zh) | 确定透明度的方法、装置、电子设备及存储介质 | |
WO2023197911A1 (zh) | 三维虚拟对象生成方法、装置、设备、介质和程序产品 | |
EP4231243A1 (en) | Data storage management method, object rendering method, and device | |
CN114820968A (zh) | 三维可视化方法和装置、机器人、电子设备和存储介质 | |
CN114816457A (zh) | 克隆虚拟模型的方法、装置、存储介质及电子装置 | |
CN114820895A (zh) | 动画数据处理方法、装置、设备及系统 | |
CN112734391A (zh) | 变电站施工的推演方法、装置、计算机设备和存储介质 | |
CN117115805B (zh) | 一种Unreal Engine平台下的任意不规则物体标识方法和标识装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190308 |
|
RJ01 | Rejection of invention patent application after publication |