Commit Graph

75 Commits

Author SHA1 Message Date
Bruno Dilly 59cc6c6f2f ephysics: support forces (and torques) on 3 axes
SVN revision: 77782
2012-10-10 19:17:49 +00:00
Bruno Dilly bdd5ba2115 ephysics: expose z-axis gravity
SVN revision: 77781
2012-10-10 19:17:44 +00:00
Bruno Dilly a1897ddf57 ephysics: impulses support the 3 planes
SVN revision: 77780
2012-10-10 19:17:36 +00:00
Bruno Dilly 71583d30e3 ephysics: support angular and linear velocity on 3
axes




SVN revision: 77779
2012-10-10 19:17:29 +00:00
Bruno Dilly f7c2009910 ephysics: collision detection inform z coordinate
SVN revision: 77778
2012-10-10 19:17:13 +00:00
Bruno Dilly 8b9c28f003 ephysics: support 3 axes on body geometry related
functions

geometry set / get, move, resize



SVN revision: 77777
2012-10-10 19:17:01 +00:00
Bruno Dilly 32f03f55a4 ephysics: body rotation getter / setter changed to
support 3 axes




SVN revision: 77776
2012-10-10 19:16:55 +00:00
Bruno Dilly 290a7d8821 ephysics: allow to enable angular movement on all the
planes




SVN revision: 77775
2012-10-10 19:16:48 +00:00
Bruno Dilly 4ef1a74d4c ephysics: support enabling moves on z axis
SVN revision: 77774
2012-10-10 19:16:43 +00:00
Bruno Dilly 6f1b2ce82d ephysics: fix default rate on docs
SVN revision: 77678
2012-10-09 20:00:15 +00:00
Ricardo de Almeida Gonzaga b36c0c9d62 ephysics: fix a reference on doc
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>



SVN revision: 77675
2012-10-09 19:59:43 +00:00
Bruno Dilly d6d51d86f8 ephysics: fix typos on docs
SVN revision: 77469
2012-10-04 22:40:35 +00:00
Leandro Dorileo 252643a33b EPhysics: add cloth support
This patch introduces the cloth support. Auxiliary API's for setting
full anchors, cloth nodes anchors and so on is also introduced. Few
other issues concerning soft body and cloth transform, has been worked
to fit the cloth support needs.


Patch by: Leandro Dorileo <dorileo@profusion.mobi>



SVN revision: 77467
2012-10-04 22:40:16 +00:00
Leandro Dorileo 1cb8f6fc0c EPhysics: multi point deformation
This patch introduces support for multi point deformation mapping,
it's wrapped with an evas smart object to handle multiple slices.


Patch by: Leandro Dorileo <dorileo@profusion.mobi>



SVN revision: 77466
2012-10-04 22:40:07 +00:00
Bruno Dilly 0bdec67255 ephysics: support body material
Using material_set it will be easier to set density, friction
and restitution to a body, simulating properties of the selected
material.



SVN revision: 77462
2012-10-04 22:39:42 +00:00
Bruno Dilly f0b85f701d ephysics: add some material constants
Pre-defined values of some properties, as density, friction and
restitution.

Ricardo researched these values on the following sources:

http://www.matbase.com/
http://www.matweb.com/
http://physics.info/density/
http://www.bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=616
http://www.woodweb.com/knowledge_base/Wood_Handbook.html
http://www.engineershandbook.com/Tables/frictioncoefficients.htm
http://www.engineeringtoolbox.com/friction-coefficients-d_778.html
http://hypertextbook.com/facts/2006/restitution.shtml

Since they diverge a lot, he calculated an average value.



SVN revision: 77461
2012-10-04 22:39:35 +00:00
Bruno Dilly 748cfbe2f4 ephysics: support density
SVN revision: 77460
2012-10-04 22:39:29 +00:00
Bruno Dilly b52d2ed85e ephysics: add define to infinite mass
Also check for invalid values on mass set.



SVN revision: 77459
2012-10-04 22:39:10 +00:00
Bruno Dilly 9668304291 ephysics: use multiple threads
Use a mainloop thread and one thread per world dedicated to simulation.

It's using ecore threads, out of the pool.

For now there are still some locks when trying to change physics
elements properties while a simulation is going on, but soon it will
have a queue of properties to be applied after a simulation step, so
it won't lock.



SVN revision: 77455
2012-10-04 22:38:06 +00:00
Ricardo de Almeida Gonzaga 62f7b42c3b ephysics: updated authors.
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>



SVN revision: 77453
2012-10-04 22:37:54 +00:00
Ricardo de Almeida Gonzaga 45c3c60ea3 ephysics: add some references to technical terms.
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>



SVN revision: 77452
2012-10-04 22:37:47 +00:00
Bruno Dilly 005be7be8c ephysics: improve doc description and remove redundant
links




SVN revision: 76701
2012-09-14 22:06:09 +00:00
Bruno Dilly ff792ee8e8 ephysics: improve diagram displayed on docs
SVN revision: 76700
2012-09-14 22:05:54 +00:00
Bruno Dilly 70c3dd925b ephysics: small fixes on docs
Spotted by gastal



SVN revision: 76698
2012-09-14 22:05:29 +00:00
Leandro Dorileo 3ecddb724a ephysics: softbody
** linear/angular joints:
We don't need the linear and angular joints for soft bodies.

Actually these joint's are pulling the soft body towards (0, 0, 0).
The soft body is anchored with the rigid one, so limiting the rigid body
angular and linear movements seems to be enough.

** soft body configs:
Some soft body configurations were tweaked to fix issues of instability
of soft bodies.

** soft body hardness API:
Soft body hardness API was introduced as well.

** points of deformation:
The points of deformation were inverted;

** soft body mass:
Fixed issues with soft body mass changing, now it doesn't "explode" after
changing its mass.


Patch by: Leandro Dorileo <dorileo@profusion.mobi>



SVN revision: 76560
2012-09-12 21:49:14 +00:00
Bruno Dilly 06d88ea834 ephysics: pass evas object associated to body on del
event




SVN revision: 76153
2012-09-04 22:42:20 +00:00
Bruno Dilly 9b56c8b27a EPhysics: expose bodies center of mass.
SVN revision: 75574
2012-08-22 20:05:35 +00:00
Bruno Dilly eae54a26ee EPhysics: improve convex shapes
Center of these shapes were wrong, now it's much better.
But collision still seems a bit inaccurate.



SVN revision: 75572
2012-08-22 20:05:25 +00:00
Bruno Dilly e2534363a6 EPhysics: update docs regarding soft bodies
SVN revision: 75570
2012-08-22 20:05:14 +00:00
Leandro Dorileo 18743b72ad EPhysics: soft body implementation
Introduces soft body dynamics and calls to create soft circles and boxes.


Patch by: Leandro Dorileo <dorileo@profusion.mobi>



SVN revision: 75564
2012-08-22 20:04:39 +00:00
Bruno Dilly dde0746fcb EPhysics: improve bodies group description documentation
SVN revision: 75509
2012-08-21 17:47:24 +00:00
Bruno Dilly 80f7e6307c EPhysics: consider gravity on forces getter
SVN revision: 75479
2012-08-20 22:17:34 +00:00
Bruno Dilly 218004c9e3 EPhysics: add forces API
Implement functions to make it possible to control forces acting
over a body.



SVN revision: 75476
2012-08-20 22:15:52 +00:00
Bruno Dilly 4bccde902a EPhysics: rotation set implemented
SVN revision: 75475
2012-08-20 22:14:43 +00:00
Bruno Dilly d3e74fce50 EPhysics: implement generic apply impulse for bodies
It results in central and torque impulses.



SVN revision: 75474
2012-08-20 22:14:25 +00:00
Bruno Dilly 1ef5ae1a2d EPhysics: fix torque impulse
SVN revision: 75473
2012-08-20 22:13:38 +00:00
Bruno Dilly 5c32157f04 EPhysics: fix ephysics central impulse unit and
improve docs

It should use a unit based on pixels, not meters.
This way is more compatible with the rest of API and easier
to see the result.



SVN revision: 75472
2012-08-20 22:12:14 +00:00
Bruno Dilly df457b4645 EPhysics: implement body move(), resize()
It was already possible to move and resize using geometry get / set,
but if just one of the actions is wanted, this new API is easier for the user
and save a few operations.



SVN revision: 75471
2012-08-20 22:10:52 +00:00
Bruno Dilly 1328120089 EPhysics: small fix on body docs
SVN revision: 75331
2012-08-16 21:34:59 +00:00
Bruno Dilly 50413abfc9 EPhysics: drop camera zoom
Reasons:
 - we don't have previewed cases for that (would be code to be implemented
         and maintained without use)
 - can be done on user side changing world rate, camera position, objects size



SVN revision: 75329
2012-08-16 21:34:49 +00:00
Bruno Dilly 405c5affa1 EPhysics: fix constraint angular limit type
SVN revision: 75327
2012-08-16 21:34:39 +00:00
Bruno Dilly ab877d4d23 EPhysics: small fixes on sleeping threshold docs
SVN revision: 75326
2012-08-16 21:34:34 +00:00
Bruno Dilly 1de398ce60 EPhysics: add camera move event
SVN revision: 75228
2012-08-13 22:24:28 +00:00
Bruno Dilly 031d47d1a9 EPhysics: support bodies with generic shapes
Using EPhysics Shape.



SVN revision: 75152
2012-08-10 21:05:19 +00:00
Bruno Dilly 6c53875522 EPhysics: add EPhysics Shape
It will be used to create bodies with collision shapes other
than boxes or circles.

For now, only convex shapes.



SVN revision: 75151
2012-08-10 21:05:13 +00:00
Bruno Dilly 73e77dff26 EPhysics: fix sleeping threshold getter
SVN revision: 75143
2012-08-10 21:03:57 +00:00
Bruno Dilly 4d800075e7 EPhysics: use inlist for world's bodies list
SVN revision: 75139
2012-08-10 21:03:06 +00:00
Bruno Dilly bb43446421 EPhysics: small fixes related to slider constraint
SVN revision: 74700
2012-07-31 22:24:51 +00:00
Leandro Dorileo 701ed6b8fd EPhysics: slider constraint
This patch introduces the slider constraint, adds an slider constraint
test, move p2p constraint from ephysics_constraint_add to
ephysics_constraint_p2p_add migrates its usage.

Further work will migrate the btConstraint of p2p for Generic6Dof constraint
since it's flexible enough to implement most of constraints.


Patch by: Leandro Dorileo <dorileo@profusion.mobi>



SVN revision: 74699
2012-07-31 22:24:20 +00:00
Bruno Dilly ca3e40782a EPhysics: allow user to configure simulation
Required to fine tunning performance or avoid objects going throught
others.



SVN revision: 74659
2012-07-31 19:55:52 +00:00