Bruno Dilly
7b7bef6087
ephysics: delete all worlds on exit
...
sure, it won't work until externals init / shutdown mess is fixed.
SVN revision: 77458
2012-10-04 22:38:58 +00:00
Bruno Dilly
6181303ab5
ephysics: no need to delete all the bodies on test
...
data del
It's already done when deleting the world.
SVN revision: 77457
2012-10-04 22:38:17 +00:00
Bruno Dilly
a3eda42485
ephysics: add a log domain usage counter
...
This way we assure eina log will be working until the last
thread ends.
SVN revision: 77456
2012-10-04 22:38:11 +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
Leandro Dorileo
cfdd39c2d7
ephysics: free overlap filter callback
...
This patch makes sure the overlap filter callback instance is removed
on world removal.
Patch by: Leandro Dorileo <dorileo@profusion.mobi>
SVN revision: 77454
2012-10-04 22:38:00 +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
Ricardo de Almeida Gonzaga
fcea4e820a
ephysics: add a new example doc: EPhysics Logo -
...
ephysics_logo.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 77451
2012-10-04 22:37:40 +00:00
Ricardo de Almeida Gonzaga
bd9c06c5f5
ephysics: add a new example doc: Rotating Forever -
...
test_rotating_forever.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 77450
2012-10-04 22:37:25 +00:00
Bruno Dilly
b497625f3f
ephysics: ignore spec file
...
SVN revision: 77214
2012-09-28 22:24:30 +00:00
Carsten Haitzler
1049bac905
and make a single efl.spec file.
...
SVN revision: 77108
2012-09-27 03:09:17 +00:00
Rui Seabra
58f5ec5047
Add rpm support
...
SVN revision: 77023
2012-09-23 13:39:53 +00:00
Bruno Dilly
c62e06f738
ephysics: doc clean up
...
remove wrong reference
SVN revision: 76979
2012-09-21 17:02:39 +00:00
Bruno Dilly
b5944e9679
ephysics: add more images for examples
...
SVN revision: 76978
2012-09-21 17:02:28 +00:00
Ricardo de Almeida Gonzaga
38395758ab
ephysics: add a new example doc: Camera Track -
...
test_camera_track.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76977
2012-09-21 17:02:07 +00:00
Ricardo de Almeida Gonzaga
8ac96ab8e7
ephysics: add a new example doc: Growing Balls -
...
test_growing_balls.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76976
2012-09-21 17:01:59 +00:00
Ricardo de Almeida Gonzaga
85b32d701e
ephysics: add a new example doc: Camera -
...
test_camera.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76975
2012-09-21 17:01:49 +00:00
Ricardo de Almeida Gonzaga
9f61d9be2b
ephysics: add a new example doc: Slider -
...
test_slider.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76974
2012-09-21 17:01:40 +00:00
Ricardo de Almeida Gonzaga
ca41ab29ed
ephysics: add a new example doc: Forces -
...
test_forces.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76973
2012-09-21 17:01:27 +00:00
Ricardo de Almeida Gonzaga
0055318b51
ephysics: add a new example doc: Shapes -
...
test_shapes.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76972
2012-09-21 17:01:17 +00:00
Bruno Dilly
dfc0331373
ephysics: add some images to documented examples
...
SVN revision: 76702
2012-09-14 22:06:43 +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
e7cbd4818a
ephysics: add link to modules page in docs header
...
SVN revision: 76699
2012-09-14 22:05:41 +00:00
Bruno Dilly
70c3dd925b
ephysics: small fixes on docs
...
Spotted by gastal
SVN revision: 76698
2012-09-14 22:05:29 +00:00
Ricardo de Almeida Gonzaga
e3822da595
ephysics: add a new example doc: Sleeping Threshold -
...
test_sleeping_threshold.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76697
2012-09-14 22:05:18 +00:00
Ricardo de Almeida Gonzaga
4be55425e7
ephysics: add a new example doc: Gravity -
...
test_no_gravity.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76696
2012-09-14 22:05:06 +00:00
Ricardo de Almeida Gonzaga
134d52aa9d
ephysics: add a new example doc: Velocity -
...
test_velocity.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76695
2012-09-14 22:04:56 +00:00
Ricardo de Almeida Gonzaga
e302c3d27e
ephysics: add a new example doc: Collision Filter -
...
test_collision_filter.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76694
2012-09-14 22:04:44 +00:00
Ricardo de Almeida Gonzaga
7ae00ec501
ephysics: add a new example doc: Collision Detection -
...
test_collision_detection.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76693
2012-09-14 22:04:31 +00:00
Ricardo de Almeida Gonzaga
ead58d536e
ephysics: add a new example doc: Bouncing Text -
...
test_bouncing_text.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76692
2012-09-14 22:02:12 +00:00
Ricardo de Almeida Gonzaga
886d35fc6d
ephysics: add a new example doc: Constraint -
...
test_constrant.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76691
2012-09-14 22:01:43 +00:00
Ricardo de Almeida Gonzaga
49366a7a84
ephysics: add a new example doc: Delete Body -
...
test_delete.c
Patch by: Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
SVN revision: 76690
2012-09-14 22:01:28 +00:00
Bruno Dilly
b3ee2a8313
ephysics: increase doc pages title size
...
SVN revision: 76689
2012-09-14 22:01:16 +00:00
Leandro Dorileo
cb63d40a90
EPhysics: conditinal doc building
...
This patch introduces a --enable-build-docs-only and in that case
will not check for dependencies and will have just the make doc
target.
Patch by: Leandro Dorileo <dorileo@profusion.mobi>
SVN revision: 76680
2012-09-14 15:51:30 +00:00
Bruno Dilly
3f27034dc7
ephysics: shrink convex shapes to avoid margin gap
...
SVN revision: 76563
2012-09-12 21:50:01 +00:00
Leandro Dorileo
81786a748a
ephysics: fix issues with world destructor
...
Makes sure the body is removed from the world before deleting it
so it will not mess with overlapping pair caches, proxies and so on.
Patch by: Leandro Dorileo <dorileo@profusion.mobi>
SVN revision: 76562
2012-09-12 21:49:47 +00:00
Leandro Dorileo
075029bdfe
ephysics: soft body memory usage/leak
...
Added a call for sparsesdf garbage collector after every simulation
avoiding bullet's soft dynamics leaks.
Patch by: Leandro Dorileo <dorileo@profusion.mobi>
SVN revision: 76561
2012-09-12 21:49: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
Gustavo Sverzut Barbieri
9eb7f9bf35
ephysics: bump bullet requirement to 2.80
...
seems that before that it crashes in its own memory management.
SVN revision: 76482
2012-09-11 23:27:07 +00:00
Bruno Dilly
a59bbcf758
ephysics: update TODO
...
SVN revision: 76255
2012-09-06 17:18:28 +00:00
Bruno Dilly
35780ad7cf
ephysics: activate all bodies when one is deleted
...
Otherwise it can lead to scenarios when a body 1, below body 2 is deleted
and body 2 will stay freezed in the air. Gravity won't start to
act over it until it's activated again.
SVN revision: 76155
2012-09-04 22:42:35 +00:00
Bruno Dilly
d42b1c51c2
ephysics: fix unused vars and parameters
...
SVN revision: 76154
2012-09-04 22:42:28 +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
11891001f2
ephysics: fix camera move callback call
...
it should be called after moved flag was set to false
otherwise callback functions moving camera won't work correctly
SVN revision: 76152
2012-09-04 22:42:10 +00:00
Bruno Dilly
468d3cf25b
ephysics: Warn about bullet build issues
...
SVN revision: 76151
2012-09-04 22:42:02 +00:00
Jerome Pinot
62f2c5c1aa
ephysics: missing include in dist
...
SVN revision: 75735
2012-08-27 09:38:07 +00:00
Bruno Dilly
9b56c8b27a
EPhysics: expose bodies center of mass.
...
SVN revision: 75574
2012-08-22 20:05:35 +00:00
Bruno Dilly
aa76c79c86
EPhysics: fix tests using vertical impulse
...
SVN revision: 75573
2012-08-22 20:05:30 +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
3627234fb8
EPhysics: use vertex reduction utility
...
Convex meshes often have too many vertices.
This slows down collision detection a lot, and there is no benefit in the
unnecessary details.
SVN revision: 75571
2012-08-22 20:05:19 +00:00
Bruno Dilly
e2534363a6
EPhysics: update docs regarding soft bodies
...
SVN revision: 75570
2012-08-22 20:05:14 +00:00
Bruno Dilly
f5891500b0
EPhysics: fix indenting and remove useless lines
...
No need to set to 0 zeroed memory.
SVN revision: 75569
2012-08-22 20:05:07 +00:00
Bruno Dilly
5044cf3501
EPhysics: remove a rigid ball and weird amount of mass
...
Let's see what was it masking and focus on making it works with
defaults.
SVN revision: 75568
2012-08-22 20:05:02 +00:00
Bruno Dilly
eec20918d0
EPhysics: don't show input msg if won't handle it
...
Also, respect 80 col
SVN revision: 75567
2012-08-22 20:04:57 +00:00
Bruno Dilly
ef82a631a9
EPhysics: keep tests in alphabetical order
...
SVN revision: 75566
2012-08-22 20:04:51 +00:00
Bruno Dilly
f484b5a683
EPhysics: add space between words on msg
...
SVN revision: 75565
2012-08-22 20:04:45 +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
89eaea1c65
EPhysics: fix bug when changing head of worlds list
...
Animator callback was working with a not updated list pointer.
SVN revision: 75510
2012-08-21 17:47:29 +00:00
Bruno Dilly
dde0746fcb
EPhysics: improve bodies group description documentation
...
SVN revision: 75509
2012-08-21 17:47:24 +00:00
Bruno Dilly
a10277b529
EPhysics: don't activate body if not going to apply
...
forces
Otherwise it won't stop, sleeping thresholds won't work...
SVN revision: 75508
2012-08-21 17:47:18 +00:00
Bruno Dilly
335912df94
EPhysics: fix y component convertion on forces and
...
impulses
SVN revision: 75480
2012-08-20 22:18:14 +00:00
Bruno Dilly
80f7e6307c
EPhysics: consider gravity on forces getter
...
SVN revision: 75479
2012-08-20 22:17:34 +00:00
Bruno Dilly
335dcc1165
EPhysics: add test for forces API
...
SVN revision: 75478
2012-08-20 22:17:11 +00:00
Bruno Dilly
b66f460e84
EPhysics: test torque forces
...
SVN revision: 75477
2012-08-20 22:16:02 +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
b5221d0705
EPhysics: fix old bug on velocity setter
...
It should invert y component since evas y coords increase
going down.
SVN revision: 75337
2012-08-16 21:35:31 +00:00
Bruno Dilly
b007921b94
EPhysics: add test for windows resize
...
It listen for windows resize and changes objects size,
world render geometry and world rate.
SVN revision: 75336
2012-08-16 21:35:25 +00:00
Bruno Dilly
a3f12a0ae0
EPhysics: fix rate set implementation
...
Update everything that depends on rate:
- worlds
- bodies
- constraints
SVN revision: 75335
2012-08-16 21:35:20 +00:00
Bruno Dilly
8b5737d2df
EPhysics: make it possible to recalculate gravity
...
SVN revision: 75334
2012-08-16 21:35:14 +00:00
Bruno Dilly
3fe6e1dc40
EPhysics: constraint recalc
...
Just making it possible to fix world rate set.
This code will be modified when all constraints are added as generic
and modified later.
SVN revision: 75333
2012-08-16 21:35:09 +00:00
Bruno Dilly
44aeda07ae
EPhysics: implement body recalc
...
SVN revision: 75332
2012-08-16 21:35:04 +00:00
Bruno Dilly
1328120089
EPhysics: small fix on body docs
...
SVN revision: 75331
2012-08-16 21:34:59 +00:00
Bruno Dilly
eff2ac3302
EPhysics: add test displaying body acceleration
...
Linear and angular.
It has to be done on user side, since it requires to keep previous
velocity to calculate it.
I'll expose forces later but I don't think it would be enough
because impulses just modifies the ammount of velocity directly,
it doesn't create a force for a tick or something like that.
So velocity changes caused by impulse wouldn't be get as acceleration.
SVN revision: 75330
2012-08-16 21:34:54 +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
ebf3a282fb
EPhysics: delete constraints if world is deleted
...
SVN revision: 75328
2012-08-16 21:34:44 +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
7a759f05b6
EPhysics: support running only specified test
...
SVN revision: 75325
2012-08-16 21:34:29 +00:00
Bruno Dilly
ae28b7a504
EPhysics: listen for associated evas object resize event
...
So physics body will resize together.
SVN revision: 75230
2012-08-13 22:24:47 +00:00
Bruno Dilly
3c27a0288d
EPhysics: fix updating bodies with evas object without
...
geometry
If a evas object associated to a body don't have w or h, don't
try to apply map / rotation on it.
SVN revision: 75229
2012-08-13 22:24:36 +00:00
Bruno Dilly
1de398ce60
EPhysics: add camera move event
...
SVN revision: 75228
2012-08-13 22:24:28 +00:00
Bruno Dilly
5088b6bb93
EPhysics: add test using different shapes
...
Position / size looks buggy.
Need to be fixed.
SVN revision: 75153
2012-08-10 21:05: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
2497491440
EPhysics: move code duplication to _ephysics_body_add
...
Also, add missing checks.
SVN revision: 75150
2012-08-10 21:05:05 +00:00
Bruno Dilly
fd6a61ed22
EPhysics: update images
...
Remove unused and add new images
SVN revision: 75149
2012-08-10 21:04:51 +00:00
Bruno Dilly
33613b8f09
EPhysics: Avoid garbagge in cb objects.
...
SVN revision: 75148
2012-08-10 21:04:42 +00:00
Bruno Dilly
9eb298827c
EPhysics: optimization and fixes for camera
...
Avoid calling update of inactive bodies if camera didn't really
moved.
And update them if camera_position_set is called.
SVN revision: 75147
2012-08-10 21:04:35 +00:00
Bruno Dilly
1de4a67ca0
EPhysics: fix world event callbacks management
...
SVN revision: 75146
2012-08-10 21:04:22 +00:00
Bruno Dilly
fb7528829b
EPhysics: avoid invalid read / writes on world free
...
Looks like we'll need to fix discrete dynamics world destructor
on bullet, but current revision is kind of messed.
I'll see what I can do later.
And yes, it will leak the ddw until it's fixed.
SVN revision: 75145
2012-08-10 21:04:16 +00:00
Bruno Dilly
cf6678bbd4
EPhysics: improving body's event callbacks management
...
SVN revision: 75144
2012-08-10 21:04:08 +00:00
Bruno Dilly
73e77dff26
EPhysics: fix sleeping threshold getter
...
SVN revision: 75143
2012-08-10 21:03:57 +00:00
Bruno Dilly
e1036529b3
EPhysics: re-write sleeping threshold test
...
It was buggy.
SVN revision: 75142
2012-08-10 21:03:47 +00:00
Bruno Dilly
2d2844d05e
EPhysics: properly handle body delete
...
SVN revision: 75141
2012-08-10 21:03:39 +00:00