In the previous post I have introduced the concept of a Pose. A Pose is a new type defined in DigitalRune Geometry. It defines the position and orientation of an object in 3D space.
In this post I will describe how a Pose can be used to define a World or View transformation matrix…
The task of positioning an object in space is so important in a game that we have introduced a type called Pose in DigitalRune Geometry. A Pose describes a position (a Vector3F) and an orientation (a Matrix33F or a QuaternionF) in 3D space. It is very similar to a transformation matrix…
Here is another Windows Phone 7 physics example: It shows a few bodies and a 3d ragdoll. Tilt or shake the phone to move the bodies.
…
Windows Phone 7 is awesome! – This blog post shows DigitalRune Physics on a real Windows Phone 7 in action. The full sample source code can be downloaded at the end of the posting.
Following video shows the sample running on a Samsung Omnia 7 (a great WP7 device!):
Besides DigitalRune Physics we have been working on DigitalRune Graphics for several month now. I thought it would be nice to use a few graphics effects of DigitalRune Graphics to make our physics demos more interesting. – And here is the result: A short video testing screen space ambient occlusion, an atmospheric scattering skydome and god rays in a simple XNA physics demo. (Implementation details follow after the video.)
Fine, we have found a way to implement Continuous Collision Detection (CCD), but how do we integrate this into our game physics library?
This article explains how to use CCD in game physics; especially a technique called motion clamping that is used in DigitalRune Physics and possible pitfalls you could come across when you use game physics with CCD.
Have you ever heard of Speed Reading? Forget speed reading – let me introduce you to Speed Watching!
But, first a little background information: What is speed reading? From Wikipedia:
Speed reading is a collection of reading methods which attempt to increase rates of reading without greatly reducing comprehension or retention…
The last posts (Continuous Collision Detection – The Problem and Continuous Collision Detection – Solutions) covered Continuous Collision Detection (CCD). Here are a few more notes related to CCD.
In the last post we talked about the shortcomings of discrete collision detection and why we need continuous collision detection (CCD). Now it is time to discuss ways to implement CCD to avoid tunneling of objects (missed collisions) and find the time of impact.
Collision detection in 3d games detects whether objects are intersecting. The normal discrete collision detection does so by checking the objects at their current position. Then the game moves the objects and the collision detection checks the objects at their new positions.
This method works for slow moving objects, but for fast moving objects critical collisions can be missed. To detect all collisions we need “Continuous Collision Detection” (CCD), which we will discuss in this and the next blog posts.
A collection of the most useful blog articles can be found here:
Article Collection (on Documentation page)
DigitalRune is a trademark of Garstenauer Information Technology OG.
Garstenauer Information Technology OG Weingartenstrasse 35, 4452 Ternberg Austria (EUROPE) office@digitalrune.com