Collision Detection
Collision detection is the process by which the Unreal Engine determines whether actors are touching or not, and whether one actor can pass through another.
- Technical overview: OCD.
- Collision Cylinder
- Actor/Collision, Actor (UT)/Collision: collision properties
- Karma
General Introduction
One of the most important requirements for 3D game realism and excitement is fast and accurate collision detection, and the need to do so with the maximum efficiency. In a simple simulation, a collision detection check has to be carried out for every time step,...an operation whose computational cost increases almost exponentially with scene complexity. |
There has been a great deal of research interest in collision detection and distance computation for 3D interactive graphics and no universally popular algorithm has emerged. A 3D game engine computes interactions between the geometries of the objects in the environment, and, their moving parts and physical properties to simulate physical behaviors. Moving entities and players need to behave like real ones in the physical world, in order to enhance the degree of game realism. However, real time dynamic simulation has been unattainable till recently, due to the absence of efficient, practical collision detection algorithms and fast, accurate dynamics computations.
BSP Tree Based Collision Detection
One of the most critical problems when creating a BSP-tree based 3D-engine is collision detection. It is not difficult to solve the collision problem, but, it is difficult to perform with great speed. In the vast majority of FPS games most of the processor time is consumed by performing the necessary collision detection algorithms. Consider an object or player that is moving through the 3D world. It has to be checked against the static Constructive Solid Geometry and against all other objects in the world to see that it does not pass through or interact unrealistically with them. For one player or object this can be done with a slow algorithm at an acceptable frame rate. The problem becomes much more complex when several objects and players interact during the time interval for each real time rendering of the frame. The rendering of the Potential Visible Set (PVS) of the scene has to be done only once for each frame, while collision detection might need to be done an order of magnitude (ten or a hundred times) more often for each frame, depending on the number of objects currently moving in the world. So the collision detection algorithm is required to operate at great speed and accuracy. |
That's extremely interesting stuff. Where is it from? —Mychaeel
I sort of re-wrote it from an introductory section on BSP Trees that I found at flipcode. Interesting review paper (it was a Thesis Paper) The address is: [Binary Space Partioning Trees and Polygon Removal in Real Time 3D Rendering]. NFG