Extremephysics - 2d Physics Engine For Game Maker
#101
Posted 08 January 2010 - 11:21 AM
#102
Posted 08 January 2010 - 11:24 PM
Thanks for testing, I will try to fix this when I have a windows 7 64 bit PC I can usei tested that again(the example on the first page) on my windows 7 64 bit and it doesn't worked O.O, it said failed to initialize...
Anyway, I have finished part of the DLL (world, body, shape) so I was able to do some tests. The results are incredible: With the old version I got 35 fps for 1000 bodies, now I get 40 fps for 1500 bodies! And if I disable debugdraw it's over 60 fps! Looks like my Radix Sweep-And-Prune broad-phase is working
EDIT: GCC was slightly slower but it's almost unnoticeable. I will continue to use VC++. The DLL is 175kb now
Edited by Maarten Baert, 08 January 2010 - 11:36 PM.
#103
Posted 09 January 2010 - 03:53 PM
what specs of computer are you running on?
#104
Posted 09 January 2010 - 06:23 PM
Thanks for testing, I will try to fix this when I have a windows 7 64 bit PC I can usei tested that again(the example on the first page) on my windows 7 64 bit and it doesn't worked O.O, it said failed to initialize...
.
Anyway, I have finished part of the DLL (world, body, shape) so I was able to do some tests. The results are incredible: With the old version I got 35 fps for 1000 bodies, now I get 40 fps for 1500 bodies! And if I disable debugdraw it's over 60 fps! Looks like my Radix Sweep-And-Prune broad-phase is working. It would probably be even higher if I disabled the sleeping system but I'm not going to do that. I will do some more tests with GCC instead of VC++ to see if VC++ is really faster.
EDIT: GCC was slightly slower but it's almost unnoticeable. I will continue to use VC++. The DLL is 175kb now.
I cant wait
#105
Posted 09 January 2010 - 09:38 PM
I have rewritten all the collision detection code and apparently almost all of them (except circle-circle and box-circle - yay) have some bugs now
To do list:
- fix collision code
- more debug draw
- better iterative solver
- hinge joints
- forces
- views
- contacts
- some less important functions (next, previous, nextconnected, uservars, ...) for all types
EDIT:
1500 circles - 40 fps
1000 boxes - 50 fps
1000 polygons (4 vertices) - 48 fps
It's clearly a lot faster than the previous version
Edited by Maarten Baert, 09 January 2010 - 10:50 PM.
#106
Posted 10 January 2010 - 12:02 AM
really looking forward to your next release. Are planning to do multi core in the future? (long term question, sorry...)
#107
Posted 10 January 2010 - 02:37 PM
The collision bugs have been fixed. So far everything seems to work.hi, thats sounds amazing. shame about the collision problems. but problems are expected in all software development right? lol.
really looking forward to your next release. Are planning to do multi core in the future? (long term question, sorry...)
I don't think multithreading is possible. The simulation is almost impossible to parallelize. I could use thread for ExtremePhysics and another one for Game Maker, but I don't think it would make a huge difference because it would require a lot of extra code and lots of locks to avoid race conditions.
Some more test results:
1600 circles - 34 fps, 66 fps without debug drawing.
1600 boxes - 31 fps, 64 fps without debug drawing.
1600 polygons (5 vertices) - 29 fps, 63 fps without debug drawing.
#108
Posted 10 January 2010 - 02:42 PM
#109
Posted 10 January 2010 - 03:25 PM
i LOVE that water simulation btw, but if you make a small pool of water, the water stacks up into a water pile...you think you can fix that? otherwise, this engine is a dream :DD
#110
Posted 10 January 2010 - 05:32 PM
#111
Posted 10 January 2010 - 05:53 PM
Thanksman, your engine is so f*cking awesome that i think i'm going to start a game with it, you will get MUCH MUCH credits if i ever start a game and uses this engine
i LOVE that water simulation btw, but if you make a small pool of water, the water stacks up into a water pile...you think you can fix that? otherwise, this engine is a dream :DD
Water simulation is always very difficult. You can try to make it look more realistic by using smaller objects but it's almost impossible to simulate 'real' water in real-time.
It's a system I use to make debugging easier. It uses the GMaker library to call GML functions like draw_set_color, draw_line and draw_rectangle directly from the DLL. When you call a function like ep_debugdraw_bodies, the DLL will draw all bodies in your world using draw_line. There are also some functions that show contacts and joints. This is very useful when debugging a game that uses ExtremePhysics: sometimes the simulation looks very strange but you have no idea why (for example when you selected the wrong polygon). It is very difficult to find out what's wrong without debug drawing, it would look like a bug in the DLL.what is debug drawing?
Edited by Maarten Baert, 16 January 2010 - 09:14 PM.
#112
Posted 15 January 2010 - 10:08 PM
I have the same laptop as you and your benchmark just mean that your created the most efficient physic système for GameMaker
#113
Posted 18 January 2010 - 10:48 PM
#114
Posted 20 January 2010 - 10:35 AM
#115
Posted 21 January 2010 - 11:09 PM
ExtremePhysics 2.0 beta released! The link is in the first post.
#116
Posted 22 January 2010 - 01:37 AM
Hooray!A bit faster than expected ...
ExtremePhysics 2.0 beta released! The link is in the first post.
Ill be sure to report any bugs
#117
Posted 22 January 2010 - 04:32 PM
error on testbed.gmk when clicking at debug and at release, the default works well, everything works quite well and fast, it's brilliant!!
oh, and you used highspeed resolution timer, it may be this the source of the errors
i can send you any statistics if you wish (screenys)
#118
Posted 22 January 2010 - 04:42 PM
That's because you don't have the debug and release DLL'serror on testbed.gmk when clicking at debug and at release
#119
Posted 22 January 2010 - 05:44 PM
EDIT: oh you hid the rotation set to ep_body_set_position function. Good to know...
Otherwise it seems perfect.
Edited by Tuz, 22 January 2010 - 06:53 PM.
#120
Posted 22 January 2010 - 06:19 PM
With engine_example.gmk and fluid_simulation.gmk - "Cannot find extension package: ExtremePhysics 2.0 beta"
testbed.gmk - "Cannot find extension package: High Resolution Timer"
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users









