Patent US4905147A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4905147A Expired / Lapsed US ⏱️ 0.0 years remaining

Collision detection system for video system

Assignee: Midway Games West Inc
•
Filing: 1986-10-15
•
Granted: 1990-02-27
•
Expires: 2006-10-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system for rapid processing of the data records of many moving and nonmoving objects on a playfield only part of which is displayed and for determining collisions between objects, machine searching a linked list of the records organized by approximate position on the playfield implements the search function, is provided to continue searching for the next object which is to be visible while the graphic data from a previously found object is being loaded into a line buffer. Slips pointing to the first objects on the list for the current scan line speed up the search process. The collision detect process is speeded up by only checking the nearest neighbors on the playfield in the path of movement and by organizing all the moving and nonmoving objects on the playfield in a two dimensional array mapped to the approximate position of display of the object on the playfield.

Inventors

  • 👤 George E. Logg

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 21:29
CPC Classifications
A; A63; A63F; A63F13/00; A63F13/55; A63F13/57; A63F13/577; A63F13/10; A63F13/45; G; G09; G09G; G09G5/00; G09G5/42; H; H04; H04N; H04N9/00; H04N9/12; H04N9/16; H04N9/22; A63F2300/00; A63F2300/60; A63F2300/64; A63F2300/643

Claims Analysis

Total Claims: 14
Claim 1
Independent Claim 183 words
An apparatus for collision detection between objects on a video display comprising: means for storing moving and nonmoving object data records containing position information as to the location of the associated objects on said display in terms of the x and y coordinates of a reference point on each object relative to a predetermined reference point, said storing of data records being in memory as a two-dimensional array where each array element is mapped to a corresponding area on said video display; means for detecting a collision between objects on said display by detecting the desired movement of an object on said video display and comparing the position information in the data record of said object being moved with the position information of the data records of objects, if any, stored in, at most, the nearest array locations in the direction of movement and for determining that a collision has occurred if predetermined criteria are met regarding the degree of proximity of said reference points of said object being moved and the objects whose data records are stored in said adjacent array locations.
Claim 2
Independent Claim 183 words
An apparatus for collision detection between objects on a video display comprising: means for storing moving and nonmoving object data records containing position information as to the location of the associated objects on said display in terms of the x and y coordinates of a reference point on each object relative to a predetermined reference point, said storing of data records being in memory as a two-dimensional array where each array element is mapped to a corresponding area on said video display; means for detecting a collision between objects on said display by detecting the desired movement of an object on said video display and comparing the position information in the data record of said object being moved with the position information of the data records of objects, if any, stored in, at most, the nearest array locations in the direction of movement and for determining that a collision has occurred if predetermined criteria are met regarding the degree of proximity of said reference points of said object being moved and the objects whose data records are stored in said adjacent array locations.
Claim 3
Dependent Claim 100 words
The apparatus of claim 1 wherein said means for detecting also compares the position information of the objects, if any, in a predetermined number and pattern of array locations nearest to the array location storing the data record for said object for which movement is desired and which pattern of array locations map to an area on said display which is a right angle which intersects the desired path of movement and which intersects both orthogonal axes having components of said movement thereon and which have an origin at the current position of the object for which movement is desired.
Claim 4
Dependent Claim 70 words
The apparatus of claim 1 wherein said means for detecting compares the position information for objects, if any, in at most the three closest array locations that map to an area on said display through which the path of movement on said display for the object being moved passes for movements along any of the principal, two-dimensional, orthogonal axes, such as the vertical and horizontal axes of said video display.
Claim 5
Dependent Claim 76 words
The apparatus of claim 3 wherein, for movements in any direction not on one of the principal orthogonal axes of two-dimensional movement on said video display, said means for detecting compares the position information for objects, if any, in, at most, the closest array locations which would be checked if the movement was solely along each of the axes for which there is a movement component for the direction of movement the object is actually following.
Claim 6
Independent Claim 350 words
An apparatus for collision detection between objects on a video display comprising: means for storing moving and nonmoving object data records containing position information as to the location of the associated objects on said display in terms of the x and y coordinates of a reference point on each object relative to a predetermined reference point, said storing of data records being in memory as a two-dimensional array where each array element is mapped to a corresponding area on said video display; means for detecting a collision between objects on said display be detecting the desired movement of an object on said video display and comparing the position information in the data record of said object being moved with the position information of the data records of objects, if any, stored in, at most, the nearest array locations in the direction of movement and for determining that a collision has occurred if predetermined criteria are met regarding the degree of proximity of said reference points of said object being moved and the objects whose data records are stored in adjacent array locations; and wherein said means for detecting further comprises means for comparing the position information for objects, if any, in at most the three closest array locations that map to an area on said display through which the path of movement on said display for the object being moved passes for movements along any of the principal, two-dimensional, orthogonal axes, such as the vertical and horizontal axes of said video display; and wherein for movements in any direction not on one of the principal orthogonal axes of two-dimensional movement on said video display, said means for detecting compared the position information for objects, if any, in, at most, the closest array locations which would be checked if the movement was solely along each of the axes for which there is a movement component for the direction of movement the object is actually following; and wherein said means for detecting stops comparing position information as soon as a collision or impending collision is detected and takes predetermined collision detect action.
Claim 7
Independent Claim 350 words
An apparatus for collision detection between objects on a video display comprising: means for storing moving and nonmoving object data records containing position information as to the location of the associated objects on said display in terms of the x and y coordinates of a reference point on each object relative to a predetermined reference point, said storing of data records being in memory as a two-dimensional array where each array element is mapped to a corresponding area on said video display; means for detecting a collision between objects on said display be detecting the desired movement of an object on said video display and comparing the position information in the data record of said object being moved with the position information of the data records of objects, if any, stored in, at most, the nearest array locations in the direction of movement and for determining that a collision has occurred if predetermined criteria are met regarding the degree of proximity of said reference points of said object being moved and the objects whose data records are stored in adjacent array locations; and wherein said means for detecting further comprises means for comparing the position information for objects, if any, in at most the three closest array locations that map to an area on said display through which the path of movement on said display for the object being moved passes for movements along any of the principal, two-dimensional, orthogonal axes, such as the vertical and horizontal axes of said video display; and wherein for movements in any direction not on one of the principal orthogonal axes of two-dimensional movement on said video display, said means for detecting compared the position information for objects, if any, in, at most, the closest array locations which would be checked if the movement was solely along each of the axes for which there is a movement component for the direction of movement the object is actually following; and wherein said means for detecting stops comparing position information as soon as a collision or impending collision is detected and takes predetermined collision detect action.
Claim 8
Independent Claim 289 words
An apparatus for collision detection between objects on a video displayed portion of a larger playfield comprising: means for storing moving and nonmoving object data records having positional information expressed as offsets of a reference point for each object from a reference point on said playfield, said data records being stored in a memory as a two-dimensional array where each array location maps to an area on said video display and where contiguous locations of said array map to contiguous areas on said video display; means for detecting a collision by detecting the desired direction of movement of an object on said video display and determining the principal orthogonal axes on said display along which said direction of movement has movement components in the vector addition sense, and for comparing the position information in the data record of the object to be moved with the position information of the data records of objects, if any, having data records stored in at most a predetermined number of the closest array locations which map to an area on said display that is orthogonal to all principal orthogonal axis along which there is a movement component for the current direction of movement of the object and for determining that a collision has occurred if predetermined criteria are met regarding the degree of proximity of said reference points of said object being moved and the objects whose data records are stored in said adjacent array locations being checked; and means for stopping the comparison process when the first collision is detected thereby preventing the comparison of any further data records from the array locations that would otherwise be checked if no collision occurred, and for taking predetermined action in response to the collision.
Claim 9
Independent Claim 289 words
An apparatus for collision detection between objects on a video displayed portion of a larger playfield comprising: means for storing moving and nonmoving object data records having positional information expressed as offsets of a reference point for each object from a reference point on said playfield, said data records being stored in a memory as a two-dimensional array where each array location maps to an area on said video display and where contiguous locations of said array map to contiguous areas on said video display; means for detecting a collision by detecting the desired direction of movement of an object on said video display and determining the principal orthogonal axes on said display along which said direction of movement has movement components in the vector addition sense, and for comparing the position information in the data record of the object to be moved with the position information of the data records of objects, if any, having data records stored in at most a predetermined number of the closest array locations which map to an area on said display that is orthogonal to all principal orthogonal axis along which there is a movement component for the current direction of movement of the object and for determining that a collision has occurred if predetermined criteria are met regarding the degree of proximity of said reference points of said object being moved and the objects whose data records are stored in said adjacent array locations being checked; and means for stopping the comparison process when the first collision is detected thereby preventing the comparison of any further data records from the array locations that would otherwise be checked if no collision occurred, and for taking predetermined action in response to the collision.
Claim 10
Independent Claim 157 words
A method of collision detection between objects on a video display comprising the steps of: storing data records describing at least the positions of the objects visible on said video display in a two-dimensional array in memory where each array location maps to a corresponding area on said video display; and detecting an impending collision by comparing the position information of any object to be moved to the position information of at least one object having a data record stored in an array location adjacent to the array location storing the data record for the object to be moved which array location maps to an area of said display which intersects the intended path of movement and determining that a collision has occurred if a predetermined criteria is met regarding the proximity of the reference points of the object to be moved and said object having a data record stored in the adjacent array location being checked.
Claim 11
Independent Claim 157 words
A method of collision detection between objects on a video display comprising the steps of: storing data records describing at least the positions of the objects visible on said video display in a two-dimensional array in memory where each array location maps to a corresponding area on said video display; and detecting an impending collision by comparing the position information of any object to be moved to the position information of at least one object having a data record stored in an array location adjacent to the array location storing the data record for the object to be moved which array location maps to an area of said display which intersects the intended path of movement and determining that a collision has occurred if a predetermined criteria is met regarding the proximity of the reference points of the object to be moved and said object having a data record stored in the adjacent array location being checked.
Claim 12
Dependent Claim 78 words
A method of collision detection as described in claim 7 wherein said comparing step includes the steps of comparing the position information of an object to be moved with the position information in data records for objects, if any, in a predetermined pattern of the nearest array locations which are orthogonal to a principal, orthogonal axis of movement on said display upon which there is a movement component for the intended direction of movement desired for said object.
Claim 13
Independent Claim 238 words
A method of collision detection between moving objects and other moving or nonmoving objects on a video display comprising the steps of: storing data records for both moving and nonmoving objects containing position information as to the location of the associated objects on said display in terms of the x and y coordinates of a reference point on each object relative to a predetermined reference point, said storing of data records being in a two-dimensional array where each array location maps to a corresponding, area on said display; detecting the desired movement of an object; comparing the position data for each object for which movement is desired to the position data for objects, if any, whose associated data records are stored in said array in a pattern of array locations which map to a corresponding pattern of areas on the display where said path of desired movement of said object to be moved intersects said pattern of areas mapping to the array locations storing data records being checked and determining that a collision has occurred when predetermined criteria are met regarding the proximity between reference points for the object being moved and any of the objects associated with the data records being checked; stopping the comparison process for each object to be moved as soon as a data record in the pattern of array locations being checked is found which causes said predetermined collision criteria to be met.
Claim 14
Independent Claim 238 words
A method of collision detection between moving objects and other moving or nonmoving objects on a video display comprising the steps of: storing data records for both moving and nonmoving objects containing position information as to the location of the associated objects on said display in terms of the x and y coordinates of a reference point on each object relative to a predetermined reference point, said storing of data records being in a two-dimensional array where each array location maps to a corresponding, area on said display; detecting the desired movement of an object; comparing the position data for each object for which movement is desired to the position data for objects, if any, whose associated data records are stored in said array in a pattern of array locations which map to a corresponding pattern of areas on the display where said path of desired movement of said object to be moved intersects said pattern of areas mapping to the array locations storing data records being checked and determining that a collision has occurred when predetermined criteria are met regarding the proximity between reference points for the object being moved and any of the objects associated with the data records being checked; stopping the comparison process for each object to be moved as soon as a data record in the pattern of array locations being checked is found which causes said predetermined collision criteria to be met.

References Cited (Backward Citations)

US4053740A Cited
US4116444A Cited
US4119955A Cited
US4471465A Cited
US4324401A Cited
US4445114A Cited
US4445114B1 Cited
US4423870A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-02-26 1993-08-28 1994-02-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-02-26 1997-08-28 1998-02-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-02-26 2001-08-28 2002-02-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag