CN107961535A - 一种碰撞检测路径计算方法 - Google Patents

一种碰撞检测路径计算方法 Download PDF

Info

Publication number
CN107961535A
CN107961535A CN201711354343.8A CN201711354343A CN107961535A CN 107961535 A CN107961535 A CN 107961535A CN 201711354343 A CN201711354343 A CN 201711354343A CN 107961535 A CN107961535 A CN 107961535A
Authority
CN
China
Prior art keywords
collision
graph
relative
calculation method
reflecting surface
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.)
Granted
Application number
CN201711354343.8A
Other languages
English (en)
Other versions
CN107961535B (zh
Inventor
沈俊杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nine Million Li Network Technology (shanghai) Co Ltd
Original Assignee
Nine Million Li Network Technology (shanghai) Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nine Million Li Network Technology (shanghai) Co Ltd filed Critical Nine Million Li Network Technology (shanghai) Co Ltd
Priority to CN201711354343.8A priority Critical patent/CN107961535B/zh
Publication of CN107961535A publication Critical patent/CN107961535A/zh
Application granted granted Critical
Publication of CN107961535B publication Critical patent/CN107961535B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/822Strategy games; Role-playing games
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/80Features 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/807Role playing or strategy games

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明涉及一种碰撞检测路径计算方法,包括:当第一图形和第二图形发生相对平移运动时,检测第一图形和第二图形是否触发碰撞;若第一图形和第二图形触发碰撞,以第一图形内预先配置的反射面,根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向;第二图形按照计算得到的碰撞后第二图形相对于第一图形的平移运动方向改变运动状态。与现有技术相比,本发明采用在被碰撞体中预配置反射面的方式,可以大大减少碰撞反射的计算量,提高软件的运行效率。

Description

一种碰撞检测路径计算方法
技术领域
本发明涉及一种碰撞计算技术,尤其是涉及一种碰撞检测路径计算方法。
背景技术
现今的虚拟摇杆技术多数都建立在实时运算的基础上,而部分种类的产品更加需要配合上真实物理的运算去实现一些物体弹射,反弹的效果。这样的运算往往在物体被弹射出去之后还要实时运算接下去运动的方向。他的确能给用户带来一些真实的感受体验,但同时也对内存的需求相对较大。这显然是不适合在手机上开发的产品的。所以一个占用内存小,且能得到几乎同样效果的计算方式就很值得去开发。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种碰撞检测路径计算方法。
本发明的目的可以通过以下技术方案来实现:
一种碰撞检测路径计算方法,包括:
当第一图形和第二图形发生相对平移运动时,检测第一图形和第二图形是否触发碰撞;
若第一图形和第二图形触发碰撞,以第一图形内预先配置的反射面,根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向;
第二图形按照计算得到的碰撞后第二图形相对于第一图形的平移运动方向改变运动状态。
所述第二图形为圆形。
所述第一图形为边界或圆形;
所述第一图形为圆形时,第一图形内接有正方形,且所述预配置的反射面为所述正方形的一条边,
所述第一图形为边界时,所述预配置的反射面即为该边界。
所述第一图形为圆形时,
所述若第一图形和第二图形触发碰撞,以第一图形内预先配置的反射面,根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向,包括:
若第一图形和第二图形触发碰撞,沿第二图形相对平移运动方向延长直径;
选择正方形中,直径延长后达到的第一条边作为预配置的反射面;
根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向。
所述第二图形上设有多条与第二图形相对平移方向相同的检测线,
所述检测第一图形和第二图形是否触发碰撞,包括:
所述第二图形边缘上位于中心检测线上的点与第一图形边缘相交时,生成用于记录碰撞的碰撞记录信号,且该碰撞记录信号触发一次碰撞。
在触发一次碰撞后,所述第二图形损失设定比例或值的相对平移速度。
与现有技术相比,本发明具有以下有益效果:
1)采用在被碰撞体中预配置反射面的方式,可以大大减少碰撞反射的计算量,提高软件的运行效率。
2)第一图形为边界或圆形,可以针对实现边界的反弹,提高游戏的可玩性。
3)第二图形上设有多条与第二图形相对平移方向相同的检测线。
4)对于贯穿类的物理规则,将碰撞记录信号的触发局限于中心检测线上的点,而不是两个物体的第一次接触,相对速度变化的设计更合理,增强打击感。
附图说明
图1为本发明方法的主要流程示意图;
图2为碰撞反弹示意图一;
图3为碰撞反弹示意图二。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
一种碰撞检测路径计算方法,如图1所示,包括:
当第一图形和第二图形发生相对平移运动时,检测第一图形和第二图形是否触发碰撞;
若第一图形和第二图形触发碰撞,以第一图形内预先配置的反射面,根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向;
第二图形按照计算得到的碰撞后第二图形相对于第一图形的平移运动方向改变运动状态。
首先,如图2和图3所示,配置碰撞系统,碰撞系统中,将角色A简化为第二图形,将被碰撞体A简化为第一图形,
第二图形为圆形,第一图形为边界或圆形,第一图形为圆形时,第一图形内接有正方形,且预配置的反射面为正方形的一条边,第一图形为边界时,预配置的反射面即为该边界。
第一图形为圆形时,若第一图形和第二图形触发碰撞,以第一图形内预先配置的反射面,根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向,包括:若第一图形和第二图形触发碰撞,沿第二图形相对平移运动方向延长直径;选择正方形中,直径延长后达到的第一条边作为预配置的反射面;根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向。
第二图形上设有多条与第二图形相对平移方向相同的检测线,检测第一图形和第二图形是否触发碰撞,包括:第二图形边缘上位于中心检测线上的点与第一图形边缘相交时,生成用于记录碰撞的碰撞记录信号,且该碰撞记录信号触发一次碰撞。
在触发一次碰撞后,第二图形损失设定比例或值的相对平移速度。
具体的,如图2和图3所示,角色A上带有的与移动方向相同的带箭头线段为检测线,当碰撞体有某根检测线接触到被碰撞体时,就会对被碰撞体产生效果。当然这是针对英雄角色本身的检测线而言,如图2所示,被碰撞体A的圆形代表碰撞用的边界,方形代表候选反射面。
有了以上碰撞反弹的计算方法,便可以实现路径预览,例如可以在游戏内弹射英雄时出现一个虚拟摇杆,其作用其实是用来方便玩家所进行的各种操作,并让玩家了解进展情况和可产生效果的范围,其中第二图形的初始相对平移方向可以是摇杆当前位置指向初始位置的方向,速度与摇杆当前位置和初始位置之间的距离正相关。
另外,当行动的英雄(由第二图形表示)的移动方式为穿透的时候,行经路线就会是一条直线,意为唯一能让穿透类英雄反弹的东西就是场景边缘的隐形墙壁。
一般情况下,行动路径为一条或多条线段依次连接而成,为了有更好的游戏体验,每一段线段的颜色可以不同。当行径路线中有障碍物会大幅影响到英雄的移动力时,移动路线会以越来越淡最后消失。意味如果走这条路线,该英雄的移动距离会非常有限,且无法碰触到场景边缘的隐形墙壁。
当行动的英雄的移动方式为贴身的时候,虚线所示的行径路线会在第一个被碰撞到的敌人前停止,意味当这个英雄撞到敌人的时候就会停在原地这里由于该类型英雄的特殊性,所以不会去计算反弹角度。因为英雄的碰撞体接触到敌人的碰撞体时,英雄就会自动停止移动,这样很大程度上能帮助玩家指定英雄的移动路线。
此外,可以隐藏部分移动路线信息,这让玩家需要依靠自己去判断当前最优的路线进行移动。而不是只注重最后的结果。提高了游戏内的策略性。

Claims (6)

1.一种碰撞检测路径计算方法,其特征在于,包括:
当第一图形和第二图形发生相对平移运动时,检测第一图形和第二图形是否触发碰撞;
若第一图形和第二图形触发碰撞,以第一图形内预先配置的反射面,根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向;
第二图形按照计算得到的碰撞后第二图形相对于第一图形的平移运动方向改变运动状态。
2.根据权利要求1所述的一种碰撞检测路径计算方法,其特征在于,所述第二图形为圆形。
3.根据权利要求1所述的一种碰撞检测路径计算方法,其特征在于,所述第一图形为边界或圆形;
所述第一图形为圆形时,第一图形内接有正方形,且所述预配置的反射面为所述正方形的一条边,
所述第一图形为边界时,所述预配置的反射面即为该边界。
4.根据权利要求3所述的一种碰撞检测路径计算方法,其特征在于,所述第一图形为圆形时,
所述若第一图形和第二图形触发碰撞,以第一图形内预先配置的反射面,根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向,包括:
若第一图形和第二图形触发碰撞,沿第二图形相对平移运动方向延长直径;
选择正方形中,直径延长后达到的第一条边作为预配置的反射面;
根据碰撞前第二图形相对于第一图形的平移运动方向计算碰撞后第二图形相对于第一图形的平移运动方向。
5.根据权利要求1所述的一种碰撞检测路径计算方法,其特征在于,所述第二图形上设有多条与第二图形相对平移方向相同的检测线,
所述检测第一图形和第二图形是否触发碰撞,包括:
所述第二图形边缘上位于中心检测线上的点与第一图形边缘相交时,生成用于记录碰撞的碰撞记录信号,且该碰撞记录信号触发一次碰撞。
6.根据权利要求1~5中任一所述的一种碰撞检测路径计算方法,其特征在于,在触发一次碰撞后,所述第二图形损失设定比例或值的相对平移速度。
CN201711354343.8A 2017-12-15 2017-12-15 一种碰撞检测路径计算方法 Active CN107961535B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711354343.8A CN107961535B (zh) 2017-12-15 2017-12-15 一种碰撞检测路径计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711354343.8A CN107961535B (zh) 2017-12-15 2017-12-15 一种碰撞检测路径计算方法

Publications (2)

Publication Number Publication Date
CN107961535A true CN107961535A (zh) 2018-04-27
CN107961535B CN107961535B (zh) 2020-07-17

Family

ID=61994203

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711354343.8A Active CN107961535B (zh) 2017-12-15 2017-12-15 一种碰撞检测路径计算方法

Country Status (1)

Country Link
CN (1) CN107961535B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109847346A (zh) * 2019-02-28 2019-06-07 玖万里网络科技(上海)有限公司 用于含有触敏显示屏设备的虚拟摇杆弹射控制方法及装置
CN111921195A (zh) * 2020-09-24 2020-11-13 成都完美天智游科技有限公司 三维场景的生成方法和装置、存储介质和电子装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104408774A (zh) * 2014-12-11 2015-03-11 中国科学院合肥物质科学研究院 一种基于gpu加速的实体面片模型间碰撞检测方法
CN105303594A (zh) * 2015-11-05 2016-02-03 浪潮(北京)电子信息产业有限公司 一种碰撞反弹路径的显示方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104408774A (zh) * 2014-12-11 2015-03-11 中国科学院合肥物质科学研究院 一种基于gpu加速的实体面片模型间碰撞检测方法
CN105303594A (zh) * 2015-11-05 2016-02-03 浪潮(北京)电子信息产业有限公司 一种碰撞反弹路径的显示方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
[美]JASON GREGORY 著,叶劲峰 译: "《游戏引擎架构》", 31 March 2014 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109847346A (zh) * 2019-02-28 2019-06-07 玖万里网络科技(上海)有限公司 用于含有触敏显示屏设备的虚拟摇杆弹射控制方法及装置
CN111921195A (zh) * 2020-09-24 2020-11-13 成都完美天智游科技有限公司 三维场景的生成方法和装置、存储介质和电子装置
CN111921195B (zh) * 2020-09-24 2020-12-29 成都完美天智游科技有限公司 三维场景的生成方法和装置、存储介质和电子装置

Also Published As

Publication number Publication date
CN107961535B (zh) 2020-07-17

Similar Documents

Publication Publication Date Title
CN107168611B (zh) 信息处理方法、装置、电子设备及存储介质
CN108404407B (zh) 射击游戏中的辅助瞄准方法、装置、电子设备及存储介质
KR102110811B1 (ko) Hci 시스템 및 방법
TWI659389B (zh) 角色模型的移動控制方法、裝置及資料同步方法、系統
CN107961535A (zh) 一种碰撞检测路径计算方法
Hau et al. Object removal attacks on lidar-based 3d object detectors
US8777746B2 (en) Gestures to encapsulate intent
US9975047B2 (en) Game program, game method, and game system
WO2021082795A1 (zh) 虚拟道具的控制方法和装置、计算机可读存储介质及电子设备
TWI600456B (zh) Battle-type game control methods and programs
WO2020233395A1 (zh) 对象控制方法和装置、存储介质及电子装置
CN108771863B (zh) 射击游戏的控制方法和装置
CN109529317B (zh) 游戏交互方法、装置及移动终端
KR20210113328A (ko) 액션 실행 방법 및 장치, 저장 매체 및 전자 장치
JP6958079B2 (ja) 物標判定装置
CN110201391A (zh) 游戏中虚拟角色的控制方法和装置
CN102693362A (zh) 一种与地形相适应的游戏角色跳跃方法和装置
CN111080751A (zh) 碰撞渲染方法和装置
CN108960098A (zh) 一种台球碰撞关系识别方法及台球比赛计分系统
US11801443B2 (en) Target-based mouse sensitivity recommendations
CN112642152A (zh) 一种游戏中目标虚拟角色的控制方法及装置
CN107930123B (zh) 碰撞系统及其信息处理方法
CN112957729A (zh) 游戏中的射击瞄准方法、装置、设备及存储介质
CN109758760B (zh) 足球游戏中射门控制方法、装置、计算机设备及存储介质
WO2017145684A1 (ja) 画像処理方法、及び画像処理プログラム

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: 1252617

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant