This image was rendered with the
fantastic freeware ray-tracing program POV-Ray.
Welcome to Delphi3DX
- The home of the TCollisionTester3DX
component for the DelphiX library
Visitors at this page since
August the 16th of 1999
TCollisionTester3DX version
1.3b
This component was made for Delphi 4, 5 and 6 and MS DirectX 6.0 or
higher
As to the authors knowledge this component is still the only 3D collision tester available for the DelphiX library.
A 3D collision tester is needed for real 3D gaming.
The DelphiX library for Delphi was developed by Hori
who is also famous for developing the TMPGEnc MPEG 2 encoder.
Unfortunately Hori did not update the DelphiX library to be used with
Delphi 6. However, somebody else did this.
Please use the following link
to down-load DelphiX for Delphi 6.
Download the tutorial 3D-game found on this page to learn how to use the CollisionTester.
Please, do not ask me to make a version for the Delphi3.0. This component
uses plenty of dynamic arrays to minimize
the need for memory, and the dynamic arrays were introduced when Delphi
4.0 appeared.
Screen shot from
the Tutorial 3D-game (with source text)
Use the TCollisionTester3DX component to check for
collisions between 3D-objects
in Direct3D games.
Place your 3D-objects in a world described by : DXDrawUsed
Group the the 3D-objects in series with different material or functional
properties.
The frames for the 3D-objects must be stored in the a two dimensional
dynamic array of the type : TFrames3D
The 3D-object series are named by the property
: Indexof3DSeries
The 3D-objects are named by the property
: Indexof3DObject
A 3D-object consists of one or more 3D-elements named by the property
: Indexof3DElement
Surround each of your 3D-elements by at least one collision object which
must be a member of the following primitives:
box3D - sphere3D - ellipsoid3D - cylinder3D - conus3D
Available orientations of the collision objects are: symmetric_x
- symmetric_y - symmetric_z
Available material properties are : Solid3D - water3D - air3D
Available functional properties are : Pickable - Shootable - Fixed3DObject
Add the collision object by executing the command: AddCollisionObject
Bullets are described by the following properties: BulletRadius - BulletRange
- BulletFrame - LongShots
The actor is described by : FrontDistance - HeadRadius
The actor and the bullets move each time the move command is used in the main program. Execute the following command prior to each move: GetOldEyePos - GetOldBulletPos
Test for collision with the following function call :
If CollisionTester3DX.Collision then ...
If CollisionTester3DX.BulletCollision then ...
On collision read the HitLinkNr and the properties of the collision
object.
Destroy 3D collision objects by specifying: NextDestroyNr - Indexof3DSeries
and by executing the following command : DestroyCollisionObject
| TCollisionTester3DX vs 1.3 for Delphi 4, 5 & 6 | colli3dx.zip (28KB) |
| Tutorial 3D-gaming example vs 1.4 for Delphi 4, 5 & 6 | tutorial.zip (348KB) |
| The game itself vs. 1.4 (only requires >= DirectX 6.0) | game.zip (597KB) |
History
15th of August 1999 : Version 1.0 appeared at this page.
16th of August 1999: Version 1.01 of TCollisionTester3DX. Initialization
error removed by including the ZeroSetIt command.
16th of August 1999: Version 1.1 of the tutorial and of the game.
ZBuffering used and initialisation error removed.
18th of August 1999: Version 1.2 of the tutorial and of the game.
Hanging during the playing of sound avoided.
Removed the possibility to move backwards through the 3D-objects.
11th of March 2000: TCollisionTester3DX and the tutorial updated
to work with the present version od DelphiX
11th of March 2000: Compiled with Delphi 5 and tested with MS
DirectX 7
22nd of June 2002: Compiled with Delphi 6 and
tested with MS DirectX 8
The 3D shoot them up game goes like!
Use a joystick or the arrows to move around
Use button 1 on your joy stick or the SPACE button to fire at
the objects
Use the LongShots checkbox to change between bullets which are
fired at
unlimited speed and at limited speed (visible bullets)
Five animated 3D objects are seen from the beginning.
From time to time a new object appears.
Shoot all the objects to win the game.
The game is lost if the number of objects increases to 10.
Use the panel with the radiobuttons to change the number of shots
required to
remove an object.
Try to move around and see how the program prevents you from moving
through
the solid objects.
Try to shoot close to the egg shaped object and the sphere to
se how well the
collisionobjects fits the real objects.
Notice how the sigle boxshaped coll-object surrounding the chair
gives an
unrealistic impression of the shooting of a chair.
TGameInfo V1.3
This component was made for Delphi 4 and 5. However I believe
it can be used with D3 too
Use this component to obtain System information like :
- Type of OS and path for it (WinDir)
- Type of Processor
- Available Memory
- Version of DirectX installed
- Color depth
- Graphics resolution
10th of Febr. 2000 Windows 3.1, Windows 95, Windows 98 and
Windows NT are detected.
22nd of June 2002 Updated to be used with Delphi 6
| TGameInfo V1.3 for Delphi 4,5 & 6 | GameInfo.zip (3.48KB) |
Please make a link to this page
**************************
To make a link to this page in Netscape composer
please do:
1: Right click on this image and choose 'save
image as delphi3dx.gif'
2: Insert the image on your own page
3: Right click on the image and edit the properties
4: Edit the link to become: http://users.cybercity.dk/~bbl6194/delphi3dx.htm
Links
*************
Delphi Direct3D
DelphiX for Delphi 6 or link 2
The Delphi Graphics Homepage (JEDI)
Delphi OpenGL
Mike Lischkes Delphi OpenGL page
ibrt scientific and engineering solutions
The
Delphi Graphics Homepage (JEDI)
Delphi Animated GIF
Delphi Resources
Direct3D
3D-Canvas TM (3D
x-object modeller)
OpenGL
3D Rendering
henrik_og_bodil@vip.cybercity.dk
This page is a member of
Latest update on June the 22nd 2002