Wednesday, 10 August 2011

Building my own Delphi Physics Engine part VIII

TDPE is almost ready and it will not take long to release the first stable library!. I am eager to continue working on the project trying to sort out different physic scenarios  to make my dynamic engine even more realistic. Do not hesitate to give it a try as you will find the experience quite interesting. I am still working on the n-edge object and the cutting tool and trying to refactor all the code to cope with a layer architecture. Using this concept, I want to structure my system in a way that every component works using a certain level of abstraction. As you see in the next figure, every object is allocated in the screen while there is another layer which is responsible for the collision detection and another one for the forces interaction. You will notice in the video that there are still little issues to tackle regarding the object interaction as sometimes we can experience overlapping.


In the figure above, you can see that now the items are not rigid and they interact with each other as they were real items. Notice that the square item will go through the round shape of the circle.



Enjoy the video!.

Get the latest executable here: ThundaxBallDemo v1.504.
Interaction:
'd' will drop a box with a random color and a constant angular velocity
'f' will drop a circle with a random color and a constant angular velocity
'mouse interaction' mouse is able to grab items

Related links:

6 comments:

  1. I can't believe I've only just heard about this project (courtesy of DelphiFeeds.com)

    I am developing my own game engine for Delphi... and have been playing with 3D game development for a long time now.

    I'm absolutely going to now read through every part of this series, and play with the demo(s).

    You know, you could make use of this physics engine alongside Delphi XE2's FireMonkey platform and create some truly exceptional GUI's and effects!

    You, sir, are now one of my Delphi idols! Seriously impressed!

    ReplyDelete
  2. Thank you for your comments!. It is still far from a truly physics engine but step by step I'll try to deliver something that will be useful for The Delphi community!.

    I really appreciate you comments!

    ReplyDelete
  3. Awsome tool set! Mark Overmars accomplished this type of thing for his GameMaker application written in Delphi, and I have seen some of these applications (not to this extent) on the DelphiForFun website over time (such as the roller coaster simulator: http://delphiforfun.org/Programs/roller_coaster.htm

    Regardless.....your's is a great Job. Congrats!

    ReplyDelete
  4. Thank you very much for your comment!. I'm glad you like it!

    I have seen Mark's work during all this years. DelphiForFun is a great place and I always go there in the lookout of inspiration ;).

    Cheers,
    Jordi

    ReplyDelete