CN110694276B - 物理效果模拟方法、装置、存储介质、处理器及电子装置 - Google Patents
物理效果模拟方法、装置、存储介质、处理器及电子装置 Download PDFInfo
- Publication number
- CN110694276B CN110694276B CN201910974234.9A CN201910974234A CN110694276B CN 110694276 B CN110694276 B CN 110694276B CN 201910974234 A CN201910974234 A CN 201910974234A CN 110694276 B CN110694276 B CN 110694276B
- Authority
- CN
- China
- Prior art keywords
- physical
- virtual game
- game object
- parameter
- acting
- 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
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/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- 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/55—Controlling game characters or game objects based on the game progress
-
- 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/60—Methods for processing data by generating or executing the game program
- A63F2300/6009—Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
-
- 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/60—Methods for processing data by generating or executing the game program
- A63F2300/64—Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种物理效果模拟方法、装置、存储介质、处理器及电子装置。该方法包括:当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数;按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果。本发明解决了相关技术中基于物理引擎的游戏场景设计虽然能够向普通用户(特别是游戏玩家)开放,但是实现物理效果的多个功能之间存在强耦合性,由此导致游戏玩家很难针对单个功能进行独立设计的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种物理效果模拟方法、装置、存储介质、处理器及电子装置。
背景技术
物理引擎通常通过为刚性物体赋予真实的物理属性的方式来计算运动、旋转和碰撞反映。在未加入物理引擎之前,三维游戏场景中为了模拟物理效果,通常只会按照游戏开发人员预先设定的脚本中所规定的动作加以实现。而在游戏中加入物理引擎之后,该物理引擎便可以模拟真实世界中各种物体运动的规律来呈现较为逼真的物理效果。通过物理运算能够在游戏场景中模仿真实物理世界的运动方式,以呈现多样化的动态效果。
在游戏场景中实现物理运算效果实际上存在一定难度,为实现物理运算效果,需要借助对计算性能要求极高的运行环境,以一套独特的物理学算法为依托,同时还需要具备大量同步运算能力。目前,基于物理引擎的游戏场景设计虽然能够向普通用户(特别是游戏玩家)开放,但是实现物理效果的多个功能之间存在强耦合性,由此导致游戏玩家很难针对单个功能进行独立设计。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明至少部分实施例提供了一种物理效果模拟方法、装置、存储介质、处理器及电子装置,以至少解决相关技术中基于物理引擎的游戏场景设计虽然能够向普通用户(特别是游戏玩家)开放,但是实现物理效果的多个功能之间存在强耦合性,由此导致游戏玩家很难针对单个功能进行独立设计的技术问题。
根据本发明其中一实施例,提供了一种物理效果模拟方法,包括:
当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数,其中,第一物理运动参数和第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置;按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果。
可选地,获取第一物理运动参数和第二物理运动参数包括:根据第一虚拟游戏对象与第二虚拟游戏对象在交互事件的物理状态从第一虚拟游戏对象与第二虚拟游戏对象中确定作用对象和被作用对象;获取作用对象的动力参数和被作用对象的阻力参数。
可选地,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果包括:当作用对象处于直线运动状态时,对动力参数和阻力参数进行比较,得到比较结果;按照比较结果模拟作用对象和被作用对象的速度变化。
可选地,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果包括:当作用对象处于轴向转动状态时,对动力参数和阻力参数进行比较,得到比较结果;按照比较结果模拟作用对象和被作用对象的角速度变化。
可选地,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果包括:当作用对象处于往复运动状态时,对动力参数和阻力参数进行比较,得到比较结果;按照比较结果模拟作用对象和被作用对象的位置变化。
根据本发明其中一实施例,还提供了一种物理效果模拟装置,包括:
获取模块,用于当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数,其中,第一物理运动参数和第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置;模拟模块,用于按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果。
可选地,获取模块包括:确定单元,用于根据第一虚拟游戏对象与第二虚拟游戏对象在交互事件的物理状态从第一虚拟游戏对象与第二虚拟游戏对象中确定作用对象和被作用对象;获取单元,用于获取作用对象的动力参数和被作用对象的阻力参数。
可选地,模拟模块包括:第一比较单元,用于当作用对象处于直线运动状态时,对动力参数和阻力参数进行比较,得到比较结果;第一模拟单元,用于按照比较结果模拟作用对象和被作用对象的速度变化。
可选地,模拟模块包括:第二比较单元,用于当作用对象处于轴向转动状态时,对动力参数和阻力参数进行比较,得到比较结果;第二模拟单元,用于按照比较结果模拟作用对象和被作用对象的角速度变化。
可选地,模拟模块包括:第三比较单元,用于当作用对象处于往复运动状态时,对动力参数和阻力参数进行比较,得到比较结果;第三模拟单元,用于按照比较结果模拟作用对象和被作用对象的位置变化。
根据本发明其中一实施例,还提供了一种存储介质,存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行上述任一项中的物理效果模拟方法。
根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序被设置为运行时执行上述任一项中的物理效果模拟方法。
根据本发明其中一实施例,还提供了一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述任一项中的物理效果模拟方法。
在本发明至少部分实施例中,采用当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数,该第一物理运动参数和第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置的方式,通过按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果,达到了解除实现物理效果的多个功能之间存在强耦合性,分别针对每个功能进行独立封装的目的,从而实现了大幅降低普通用户使用精准物理控制的门槛和成本,便于在三维游戏场景中创造出满足用户个性化需求的多元化关卡玩法与交互元素的技术效果,进而解决了相关技术中基于物理引擎的游戏场景设计虽然能够向普通用户(特别是游戏玩家)开放,但是实现物理效果的多个功能之间存在强耦合性,由此导致游戏玩家很难针对单个功能进行独立设计的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明其中一实施例的物理效果模拟方法的流程图;
图2是根据本发明其中一实施例的物理效果模拟装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明其中一实施例,提供了一种物理效果模拟方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
该方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,移动终端可以包括一个或多个处理器(处理器可以包括但不限于中央处理器(CPU)、图形处理器(GPU)、数字信号处理(DSP)芯片、微处理器(MCU)或可编程逻辑器件(FPGA)等的处理装置)和用于存储数据的存储器。可选地,上述移动终端还可以包括用于通信功能的传输设备、输入输出设备以及显示设备。本领域普通技术人员可以理解,上述结构描述仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比上述结构描述更多或者更少的组件,或者具有与上述结构描述不同的配置。
存储器可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的物理效果模拟方法对应的计算机程序,处理器通过运行存储在存储器内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的物理效果模拟方法。存储器可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
显示设备可以例如触摸屏式的液晶显示器(LCD)和触摸显示器(也被称为“触摸屏”或“触摸显示屏”)。该液晶显示器可使得用户能够与移动终端的用户界面进行交互。在一些实施例中,上述移动终端具有图形用户界面(GUI),用户可以通过触摸触敏表面上的手指接触和/或手势来与GUI进行人机交互,此处的人机交互功能可选的包括如下交互:创建网页、绘图、文字处理、制作电子文档、游戏、视频会议、即时通信、收发电子邮件、通话界面、播放数字视频、播放数字音乐和/或网络浏览等、用于执行上述人机交互功能的可执行指令被配置/存储在一个或多个处理器可执行的计算机程序产品或可读存储介质中。
在本实施例中提供了一种运行于上述移动终端的物理效果模拟方法,图1是根据本发明其中一实施例的物理效果模拟方法的流程图,如图1所示,该方法包括如下步骤:
步骤S12,当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数,其中,第一物理运动参数和第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置;
步骤S14,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果。
通过上述步骤,可以采用当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数,该第一物理运动参数和第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置的方式,通过按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果,达到了解除实现物理效果的多个功能之间存在强耦合性,分别针对每个功能进行独立封装的目的,从而实现了大幅降低普通用户使用精准物理控制的门槛和成本,便于在三维游戏场景中创造出满足用户个性化需求的多元化关卡玩法与交互元素的技术效果,进而解决了相关技术中基于物理引擎的游戏场景设计虽然能够向普通用户(特别是游戏玩家)开放,但是实现物理效果的多个功能之间存在强耦合性,由此导致游戏玩家很难针对单个功能进行独立设计的技术问题。
上述虚拟游戏对象可以是三维游戏场景内出现的各种类型游戏资源,其既可以包括动态游戏资源,例如:行驶的车辆、滚动的球、平抛的飞盘,也可以包括静态资源,例如:路障、树木、围墙。上述在三维游戏场景内发生的交互既可以是不同虚拟游戏对象之间发生的碰撞交互,例如:两个虚拟车辆发生碰撞,也可以是不同虚拟游戏对象之间发生的约束交互,例如:在虚拟弹簧下挂接的虚拟物件受到拉伸后,在虚拟弹簧自身的弹性作用下,对虚拟物件产生约束力。上述物理运动参数主要包括:动力参数和阻力参数。每个虚拟游戏对象的动力参数和阻力参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置。上述物理效果可以包括但不限于:虚拟游戏对象的速度发生变化、虚拟游戏对象的角速度发生变化、虚拟游戏对象的位置发送变化。
可选地,在步骤S12中,获取第一物理运动参数和第二物理运动参数可以包括以下执行步骤:
步骤S121,根据第一虚拟游戏对象与第二虚拟游戏对象在交互事件的物理状态从第一虚拟游戏对象与第二虚拟游戏对象中确定作用对象和被作用对象;
步骤S122,获取作用对象的动力参数和被作用对象的阻力参数。
根据物理学最基本原理可知:力的作用是相互的。因此,当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,第一虚拟游戏对象与第二虚拟游戏对象在交互事件的物理状态通常会由于受到力的作用而发生改变。在本发明的一个可选实施例中,将交互事件中施力的虚拟游戏对象设定为作用对象,将交互事件中受力的虚拟游戏对象设定为被作用对象。例如:虚拟车辆A和虚拟车辆B在三维游戏场景内发生碰撞,并且虚拟车辆A主动撞击虚拟车辆B,那么此时虚拟车辆A即为作用对象,虚拟车辆B则为被作用对象。对于作用对象而言,需要获取作用对象的动力参数(例如:促使作用对象运动的牵引力),而对于被作用对象而言,需要获取被作用对象的阻力参数(例如:相对于作用对象,被作用对象产生的阻挡力或抵消力)。
可选地,在步骤S14中,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果可以包括以下执行步骤:
步骤S141,当作用对象处于直线运动状态时,对动力参数和阻力参数进行比较,得到比较结果;
步骤S142,按照比较结果模拟作用对象和被作用对象的速度变化。
当作用对象处于直线运动状态时,与被作用对象发生交互事件。例如:虚拟车辆A按照速度V1在直道上匀速运行,虚拟车辆B按照速度V2(V2>V1)在同一个直道上匀速运行,并且虚拟车辆A行驶在虚拟车辆B的前方。由于虚拟车辆B的行驶速度大于虚拟车辆A的行驶速度,因此,虚拟车辆A与虚拟车辆B之间的相对距离会逐渐缩小,直至虚拟车辆B撞向虚拟车辆A。此时,虚拟车辆B即为作用对象,虚拟车辆A则为被作用对象。在虚拟车辆A与虚拟车辆B之间的交互事件发生后,需要比较虚拟车辆A的阻力参数与虚拟车辆B的动力参数。如果虚拟车辆B的动力参数大于虚拟车辆A的阻力参数,则虚拟车辆B会短暂地撞击虚拟车辆A,并且虚拟车辆B的速度可能会有短暂的下降,而虚拟车辆A的速度则会得到短暂的提升,经过多次接触后虚拟车辆B会推着虚拟车辆A保持V2的速度运动。如果虚拟车辆B的动力参数小于虚拟车辆A的阻力参数,发生撞击后的虚拟车辆A的速度会短暂提升,根据反作用力虚拟车辆B会有短暂的下降,经过短暂地分离后,会再次撞击,直到虚拟车辆B和虚拟车辆A保持V1的速度运动。
可选地,在步骤S14中,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果可以包括以下执行步骤:
步骤S143,当作用对象处于轴向转动状态时,对动力参数和阻力参数进行比较,得到比较结果;
步骤S144,按照比较结果模拟作用对象和被作用对象的角速度变化。
当作用对象处于轴向转动状态时,与被作用对象发生交互事件。例如:虚拟齿轮A沿当前转动轴发生转动,虚拟齿轮B沿相邻转动轴发生转动。虚拟齿轮A与虚拟齿轮B上的部分锯齿交错。如果虚拟齿轮A先于虚拟齿轮B发生转动,则虚拟齿轮A即为作用对象,虚拟齿轮B则为被作用对象。在虚拟齿轮A与虚拟齿轮B之间的交互事件发生后,需要比较虚拟齿轮A的动力参数与虚拟齿轮B的阻力参数。如果虚拟齿轮A的动力参数小于虚拟齿轮B的阻力参数,则虚拟齿轮A的角速度会迅速下降,虚拟齿轮B甚至会对虚拟齿轮A产生反作用力,促使虚拟齿轮A反向旋转,而虚拟齿轮B的角速度则会得到短暂的提升。如果虚拟齿轮A的动力参数等于虚拟齿轮B的阻力参数,则虚拟齿轮A的角速度可以保持速度不变或者角速度下降幅度很小。如果虚拟齿轮A的动力参数大于虚拟齿轮B的阻力参数,则虚拟齿轮A很有可能带动虚拟齿轮B沿相邻转动轴发生转动,此时虚拟齿轮A的角速度可能会有短暂的下降,然后再迅速提升至原有角速度。
可选地,在步骤S14中,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果可以包括以下执行步骤:
步骤S145,当作用对象处于往复运动状态时,对动力参数和阻力参数进行比较,得到比较结果;
步骤S146,按照比较结果模拟作用对象和被作用对象的位置变化。
当作用对象处于往复运动状态时,与被作用对象发生交互事件。例如:虚拟船只采用船锚将该船只固定在海面上的特定位置。此时,虚拟自然力作用A(例如:虚拟风力作用)即为作用对象,而虚拟船只B则为被作用对象。在虚拟自然力作用A与虚拟船只B之间的交互事件发生后,需要比较虚拟自然力作用A的动力参数与虚拟船只B中主要由船锚产生的阻力参数。如果虚拟自然力作用A的动力参数大于虚拟船只B的阻力参数,则虚拟船只B会在虚拟自然力的作用下以特定位置为中心进行往复运动,直至风平浪静,虚拟船只B会恢复至原有特定位置。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种物理效果模拟装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图2是根据本发明其中一实施例的物理效果模拟装置的结构框图,如图2所示,该装置包括:获取模块10,用于当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数,其中,第一物理运动参数和第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置;模拟模块20,用于按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果。
可选地,获取模块10包括:确定单元(图中未示出),用于根据第一虚拟游戏对象与第二虚拟游戏对象在交互事件的物理状态从第一虚拟游戏对象与第二虚拟游戏对象中确定作用对象和被作用对象;获取单元(图中未示出),用于获取作用对象的动力参数和被作用对象的阻力参数。
可选地,模拟模块20包括:第一比较单元(图中未示出),用于当作用对象处于直线运动状态时,对动力参数和阻力参数进行比较,得到比较结果;第一模拟单元(图中未示出),用于按照比较结果模拟作用对象和被作用对象的速度变化。
可选地,模拟模块20包括:第二比较单元(图中未示出),用于当作用对象处于轴向转动状态时,对动力参数和阻力参数进行比较,得到比较结果;第二模拟单元(图中未示出),用于按照比较结果模拟作用对象和被作用对象的角速度变化。
可选地,模拟模块20包括:第三比较单元(图中未示出),用于当作用对象处于往复运动状态时,对动力参数和阻力参数进行比较,得到比较结果;第三模拟单元(图中未示出),用于按照比较结果模拟作用对象和被作用对象的位置变化。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数,其中,第一物理运动参数和第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置;
S2,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取第一虚拟游戏对象的第一物理运动参数和第二虚拟游戏对象的第二物理运动参数,其中,第一物理运动参数和第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能中自定义设置;
S2,按照第一物理运动参数和第二物理运动参数模拟第一虚拟游戏对象的第一物理效果和第二虚拟游戏对象的第二物理效果。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种物理效果模拟方法,其特征在于,包括:
当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取所述第一虚拟游戏对象的第一物理运动参数和所述第二虚拟游戏对象的第二物理运动参数,其中,所述第一物理运动参数和所述第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能自定义设置;
按照所述第一物理运动参数和所述第二物理运动参数模拟所述第一虚拟游戏对象的第一物理效果和所述第二虚拟游戏对象的第二物理效果,其中,物理效果包括:虚拟游戏对象的速度发生变化、虚拟游戏对象的角速度发生变化、虚拟游戏对象的位置发生变化;
获取所述第一物理运动参数和所述第二物理运动参数包括:
根据所述第一虚拟游戏对象与所述第二虚拟游戏对象在交互事件的物理状态从所述第一虚拟游戏对象与所述第二虚拟游戏对象中确定作用对象和被作用对象;
获取所述作用对象的动力参数和所述被作用对象的阻力参数。
2.根据权利要求1所述的方法,其特征在于,按照所述第一物理运动参数和所述第二物理运动参数模拟所述第一虚拟游戏对象的第一物理效果和所述第二虚拟游戏对象的第二物理效果包括:
当所述作用对象处于直线运动状态时,对所述动力参数和所述阻力参数进行比较,得到比较结果;
按照所述比较结果模拟所述作用对象和所述被作用对象的速度变化。
3.根据权利要求1所述的方法,其特征在于,按照所述第一物理运动参数和所述第二物理运动参数模拟所述第一虚拟游戏对象的第一物理效果和所述第二虚拟游戏对象的第二物理效果包括:
当所述作用对象处于轴向转动状态时,对所述动力参数和所述阻力参数进行比较,得到比较结果;
按照所述比较结果模拟所述作用对象和所述被作用对象的角速度变化。
4.根据权利要求1所述的方法,其特征在于,按照所述第一物理运动参数和所述第二物理运动参数模拟所述第一虚拟游戏对象的第一物理效果和所述第二虚拟游戏对象的第二物理效果包括:
当所述作用对象处于往复运动状态时,对所述动力参数和所述阻力参数进行比较,得到比较结果;
按照所述比较结果模拟所述作用对象和所述被作用对象的位置变化。
5.一种物理效果模拟装置,其特征在于,包括:
获取模块,用于当第一虚拟游戏对象与第二虚拟游戏对象在三维游戏场景内发生交互时,获取所述第一虚拟游戏对象的第一物理运动参数和所述第二虚拟游戏对象的第二物理运动参数,其中,所述第一物理运动参数和所述第二物理运动参数的取值由用户通过物理引擎内单独封装的物理控制功能自定义设置;
模拟模块,用于按照所述第一物理运动参数和所述第二物理运动参数模拟所述第一虚拟游戏对象的第一物理效果和所述第二虚拟游戏对象的第二物理效果,其中,物理效果包括:虚拟游戏对象的速度发生变化、虚拟游戏对象的角速度发生变化、虚拟游戏对象的位置发生变化;
所述获取模块包括:确定单元,用于根据所述第一虚拟游戏对象与所述第二虚拟游戏对象在交互事件的物理状态从所述第一虚拟游戏对象与所述第二虚拟游戏对象中确定作用对象和被作用对象;获取单元,用于获取所述作用对象的动力参数和所述被作用对象的阻力参数。
6.根据权利要求5所述的装置,其特征在于,所述模拟模块包括:
第一比较单元,用于当所述作用对象处于直线运动状态时,对所述动力参数和所述阻力参数进行比较,得到比较结果;
第一模拟单元,用于按照所述比较结果模拟所述作用对象和所述被作用对象的速度变化。
7.根据权利要求5所述的装置,其特征在于,所述模拟模块包括:
第二比较单元,用于当所述作用对象处于轴向转动状态时,对所述动力参数和所述阻力参数进行比较,得到比较结果;
第二模拟单元,用于按照所述比较结果模拟所述作用对象和所述被作用对象的角速度变化。
8.根据权利要求5所述的装置,其特征在于,所述模拟模块包括:
第三比较单元,用于当所述作用对象处于往复运动状态时,对所述动力参数和所述阻力参数进行比较,得到比较结果;
第三模拟单元,用于按照所述比较结果模拟所述作用对象和所述被作用对象的位置变化。
9.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至4任一项中所述的物理效果模拟方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至4任一项中所述的物理效果模拟方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910974234.9A CN110694276B (zh) | 2019-10-14 | 2019-10-14 | 物理效果模拟方法、装置、存储介质、处理器及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910974234.9A CN110694276B (zh) | 2019-10-14 | 2019-10-14 | 物理效果模拟方法、装置、存储介质、处理器及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110694276A CN110694276A (zh) | 2020-01-17 |
CN110694276B true CN110694276B (zh) | 2023-08-01 |
Family
ID=69198416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910974234.9A Active CN110694276B (zh) | 2019-10-14 | 2019-10-14 | 物理效果模拟方法、装置、存储介质、处理器及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110694276B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111467795B (zh) * | 2020-04-02 | 2023-06-13 | 北京代码乾坤科技有限公司 | 游戏场景内的物理结算方法和装置 |
CN111475307B (zh) * | 2020-04-02 | 2023-04-28 | 北京代码乾坤科技有限公司 | 物理结算的处理方法和装置 |
CN111714879B (zh) * | 2020-04-30 | 2023-10-03 | 完美世界(北京)软件科技发展有限公司 | 物理状态的更新方法和装置、存储介质、电子装置 |
CN111773719A (zh) * | 2020-06-23 | 2020-10-16 | 完美世界(北京)软件科技发展有限公司 | 虚拟对象的渲染方法和装置、存储介质、电子装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102160086A (zh) * | 2008-07-22 | 2011-08-17 | 索尼在线娱乐有限公司 | 用于仿真中的物理交互的系统和方法 |
CN103729884A (zh) * | 2014-01-10 | 2014-04-16 | 广州市久邦数码科技有限公司 | 一种模拟物理运动的桌面系统及其实现方法 |
CN106215419A (zh) * | 2016-07-28 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 碰撞控制方法及装置 |
US10022628B1 (en) * | 2015-03-31 | 2018-07-17 | Electronic Arts Inc. | System for feature-based motion adaptation |
CN109814848A (zh) * | 2019-02-21 | 2019-05-28 | 广州卓远虚拟现实科技有限公司 | 一种虚拟现实通用动感引擎 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7788071B2 (en) * | 2004-12-03 | 2010-08-31 | Telekinesys Research Limited | Physics simulation apparatus and method |
-
2019
- 2019-10-14 CN CN201910974234.9A patent/CN110694276B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102160086A (zh) * | 2008-07-22 | 2011-08-17 | 索尼在线娱乐有限公司 | 用于仿真中的物理交互的系统和方法 |
CN103729884A (zh) * | 2014-01-10 | 2014-04-16 | 广州市久邦数码科技有限公司 | 一种模拟物理运动的桌面系统及其实现方法 |
US10022628B1 (en) * | 2015-03-31 | 2018-07-17 | Electronic Arts Inc. | System for feature-based motion adaptation |
CN106215419A (zh) * | 2016-07-28 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 碰撞控制方法及装置 |
CN109814848A (zh) * | 2019-02-21 | 2019-05-28 | 广州卓远虚拟现实科技有限公司 | 一种虚拟现实通用动感引擎 |
Also Published As
Publication number | Publication date |
---|---|
CN110694276A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110694276B (zh) | 物理效果模拟方法、装置、存储介质、处理器及电子装置 | |
CN106215419B (zh) | 碰撞控制方法及装置 | |
CN112915542B (zh) | 一种碰撞数据处理方法、装置、计算机设备及存储介质 | |
EP3754946A1 (en) | Location-based platform for multiple 3d engines for delivering location-based 3d content to a user | |
CN109191550B (zh) | 一种粒子渲染方法、装置、电子设备及存储介质 | |
US11771992B2 (en) | Information processing method, apparatus, and device, and storage medium | |
CN108837504B (zh) | 竞速游戏中的信息处理方法、装置、设备及存储介质 | |
CN112270732A (zh) | 粒子动画的生成方法、处理装置、电子设备和存储介质 | |
US10279267B2 (en) | Monitoring game activity to detect a surrogate computer program | |
CN110585711A (zh) | 虚拟飞行器的控制方法、装置、终端及存储介质 | |
WO2010012768A1 (en) | Method and system for adjusting a virtual display device | |
CN110152292B (zh) | 游戏中跳字的显示控制方法及装置、存储介质及电子设备 | |
WO2017074826A1 (en) | Computer-implemented method and system for simulating large structures | |
CN115193051A (zh) | 虚拟载具控制方法、装置、电子设备及存储介质 | |
US9262855B2 (en) | Stateless animation, such as bounce easing | |
KR101400536B1 (ko) | 온라인 게임 서비스에서의 캐릭터간 충격 반응 표시 방법 및 서버, 및 충격 반응 표시 기능을 가지는 온라인 게임 시스템 | |
CN111862345A (zh) | 信息处理方法及装置、电子设备和计算机可读存储介质 | |
CN114288662A (zh) | Npc的行为控制方法、装置及电子设备 | |
CN113440837B (zh) | 游戏中触觉反馈控制方法及装置、存储介质、电子设备 | |
Lopes et al. | PRT simulation in an immersive virtual world | |
CN111282269A (zh) | 游戏运行方法和装置、电子设备及存储介质 | |
US20180311581A1 (en) | Method for using simulated physics to animate slot symbol objects of a slot video game | |
Maggiorini et al. | Unifying rigid and soft bodies representation: the sulfur physics engine | |
Egan | Techniques for real-time rigid body simulation | |
Shankar et al. | Physics engine basics |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |