Commit graph

304 commits

Author SHA1 Message Date
dotquixote fc47f8cd5d ConeTwistJoint: Initialize 'm_angularOnly'.
(cherry picked from commit 23f10c31de)
2017-07-14 21:44:56 +02:00
Pedro J. Estébanez a30dd8494c Fix initial collision pairs being cleared
This affected both 2D & 3D physics and was a regression introduced by my
physics mega-fix (#8999).
2017-07-05 19:38:11 +02:00
Poommetee Ketson 4a0dc529ce BuildSystem: generated files have .gen.ext 2017-06-25 20:31:56 +07:00
Rémi Verschelde 5e7fb570e8 Merge pull request #8714 from RandomShaper/fix-owc-2.1
Fix one-way collision detection (2.1)
2017-06-25 11:14:31 +02:00
Rémi Verschelde 148a9e384b Merge pull request #8999 from RandomShaper/fix-physics-2.1
Fix multiple 2D & 3D physics issues (2.1)
2017-06-25 11:12:37 +02:00
Thomas Herzog 2bd3792d6a Merge pull request #8434 from hikari-no-yume/Sprite3D_double_sided_flag
Add double-sided flag to SpriteBase3D (fixes #8007)
2017-06-19 23:47:33 +02:00
Pedro J. Estébanez 3e5e8b6c9e Fix multiple issues with 2D & 3D physics
- Use `NOTIFICATION_ENTER`/`EXIT_WORLD` for `Area` (intead of `*_TREE`).
- Now both bodies' and areas' constraints are cleaned up.
- And now also that happens as soon as the space is set to null (i.e., when exiting the tree) instead of only at freeing time.
- When clearing constraints, the loop goes on to the next if the current is already released, instead of breaking.
- When one has been already released, no error is shown from now on, as it's something expected, since a pair (our kind of constraint of interest) can be freed by any of its involved collision objects and the other will try again.
- Implement index shifting (or marking as -1) for shapes indices in collision pairs shapes are removed.
- Standarize behavior of bodies and areas so that anything that invalidates a given pair gives the same result (collision mask, actual collision, etc); for instance, triggering area enter/exit signals.
- Add missing member initializations.
- Extend the new-space-equals-area/body-current-space test to every case.
- Fix 3D ray-casts early accepting Areas (skipping the mask check).
- Fix unpairing of large elements (2D's `BroadPhase2DHashGrid`).

Some of these prevent random crashes caused by constraints with dangling pointers to involved objects.
Fixes #8856.
Fixes #7589.
Fixes #6676.
And maybe others.
2017-06-19 12:02:50 +02:00
Pedro J. Estébanez 184ef18420 Add optimizing AT_LIGHT_PASS builtin to canvas shaders
This one allows for complex shaders paired with a simple lighting shader to skip code that would otherwise be pointlessly (and wastefully) run during the light pass.
You can use `if (AT_LIGHT_PASS) , negated or not, and that will be converted to a preprocessed #if when the shader is compiled.
Depending on your game (number of items and lights), this can be a *significant* performance gain, or at least avoids relying on the driver's optimizing abilities.
2017-06-15 02:03:25 +02:00
Rémi Verschelde d432ad1e17 Improve documentation of thirdparty code snippets
(cherry picked from commit c8aea60324)
2017-05-26 23:53:14 +02:00
Pedro J. Estébanez 40e7f1c3d5 Fix priority in sample players 2017-05-15 20:24:38 +02:00
Pedro J. Estébanez 5e4216fd49 Fix one-way-collision detection
Also, change the explanation of the one-way collision direction in the docs to reflect how it is actually used by the engine and clear up the usage of the "max depth" property.
2017-05-11 02:45:48 +02:00
Fabio Alessandrelli 33cb061fe3 Fix SpatialSound2DServer error when camera distance is 0
SpatialSound2DServer now correctly uses a minimum distance of 0.1
when calculating pitch_scale for spatial sounds.
2017-05-05 19:01:19 +02:00
Andrea Faulds aa66530010 Add double-sided flag to SpriteBase3D (fixes #8007) 2017-05-02 15:48:16 +01:00
Rémi Verschelde 2491754de7 Style: Fix some badly formatted files 2017-04-08 01:42:41 +02:00
Rémi Verschelde e9b045d9e5 Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
Pedro J. Estébanez 9f8f8efa67 Add priority to samples in a library 2017-04-06 23:59:49 +02:00
Pedro J. Estébanez 0501f3a901 Make spatial AudioServers prefer inactive voices
instead of unconditionally playing on the next voice slot; that will be the fallback if no inactive voice is found
2017-04-06 20:11:26 +02:00
Rémi Verschelde f8db8a3faa Bring that Whole New World to the Old Continent too
Applies the clang-format style to the 2.1 branch as done for master in
5dbf1809c6.
2017-03-19 00:36:26 +01:00
Rémi Verschelde 16b78da941 Style: Various fixes to play nice with clang-format
(cherry picked from commit 2a0ddc1e89)
2017-03-18 23:13:47 +01:00
Rémi Verschelde dbf0137576 Style: Fix statements ending with ';;'
(cherry picked from commit f44ee891be)
2017-03-18 21:14:33 +01:00
m4nu3lf ca2277f3f1 Fixed property setter in G6DOF joint
(cherry picked from commit 0d9b53ce5e)
2017-03-18 19:58:23 +01:00
Rémi Verschelde e869a8a279 Merge pull request #7969 from RandomShaper/pr-7565-polish
PR 7565 + polish
2017-03-13 11:00:20 +01:00
Pedro J. Estébanez 1e79f80b90 Finish fix for POSITION in 2D shaders 2017-03-06 18:31:29 +01:00
Pedro J. Estébanez 95a5d9e617 Fix KinematicBody2D wrong motion origin
Got part of the fix from 5fc084c28e
Added an engine setting to enable the fix (physics_2d/motion_fix_enabled) which is false by default so the default behavior is the same as always
Added motion methods with a from parameter, the same as 3.0 does
2017-03-06 05:10:15 +01:00
Rémi Verschelde d8223ffa75 Welcome in 2017, dear changelog reader!
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!

(cherry picked from commit c7bc44d5ad)
2017-01-12 19:15:30 +01:00
Patrick Reh ff3891f88e small improvement to y_sort: make clear which item has to be drawn first when two have the same y-coordinate
(cherry picked from commit 4118b21e43)
2017-01-12 19:15:27 +01:00
Rémi Verschelde eaf803f71e style: Various other PEP8 fixes in Python files
Done with `autopep8 --select=E7`, fixes:

- E701 - Put colon-separated compound statement on separate lines.
- E702 - Put semicolon-separated compound statement on separate lines.
- E703 - Put semicolon-separated compound statement on separate lines.
- E711 - Fix comparison with None.
- E712 - Fix (trivial case of) comparison with boolean.
- E713 - Fix (trivial case of) non-membership check.
- E721 - Fix various deprecated code (via lib2to3).
2016-11-02 22:30:34 +01:00
Rémi Verschelde e259bf8bbb style: Fix PEP8 whitespace issues in Python files
Done with `autopep8 --select=E2,W2`, fixes:

- E201 - Remove extraneous whitespace.
- E202 - Remove extraneous whitespace.
- E203 - Remove extraneous whitespace.
- E211 - Remove extraneous whitespace.
- E221 - Fix extraneous whitespace around keywords.
- E222 - Fix extraneous whitespace around keywords.
- E223 - Fix extraneous whitespace around keywords.
- E224 - Remove extraneous whitespace around operator.
- E225 - Fix missing whitespace around operator.
- E226 - Fix missing whitespace around operator.
- E227 - Fix missing whitespace around operator.
- E228 - Fix missing whitespace around operator.
- E231 - Add missing whitespace.
- E231 - Fix various deprecated code (via lib2to3).
- E241 - Fix extraneous whitespace around keywords.
- E242 - Remove extraneous whitespace around operator.
- E251 - Remove whitespace around parameter '=' sign.
- E261 - Fix spacing after comment hash.
- E262 - Fix spacing after comment hash.
- E265 - Format block comments.
- E271 - Fix extraneous whitespace around keywords.
- E272 - Fix extraneous whitespace around keywords.
- E273 - Fix extraneous whitespace around keywords.
- E274 - Fix extraneous whitespace around keywords.
- W291 - Remove trailing whitespace.
- W293 - Remove trailing whitespace.
2016-11-02 22:28:28 +01:00
Rémi Verschelde 1185da656f Merge pull request #6988 from RandomShaper/2.1
Fix shader tokenizer/compiler reporting wrong error location (2.1)
2016-11-02 22:10:00 +01:00
Pedro J. Estébanez 887b1de1db Add/expose VisualServer::get_default_clear_color()
(cherry picked from commit 753ba67d65)
2016-10-31 00:00:55 +01:00
Pedro J. Estébanez a130520a7c Fix shader tokenizer/compiler reporting wrong error location
Raname shader tokenizer methods for clarity
2016-10-30 22:09:23 +01:00
Rémi Verschelde 5a49e45d21 SCsub: Add python shebang as a hint for syntax highlighting
Also switch existing shebangs to "better" /usr/bin/env python.

(cherry picked from commit fc8ccd5b8c)
2016-10-30 14:51:34 +01:00
Ignacio Etcheverry 55a5631986 Bindings: Fix missing default value
(cherry picked from commit 068b58b3ce)
2016-10-17 20:43:25 +02:00
Ariel Manzur cf427eeb7a bind method canvas_item_set_sort_children_by_y
(cherry picked from commit 1f9e16119f)
2016-10-09 17:39:17 +02:00
Fabio Alessandrelli 359b5f3b25 Expose more 2D/3D physics options in project settings
(cherry picked from commit 1d09c27ba4)
2016-10-09 17:33:47 +02:00
Victor Seiji Hariki a3c58999e2 Now ignoring remaining collision shapes.
(cherry picked from commit e5edd50d62)
2016-10-09 17:22:48 +02:00
anneomcl 12edde80f2 Fix for #6158. Converting Vector2 to Size2 for scaling functions.
(cherry picked from commit aa5ade834c)
2016-10-09 17:18:54 +02:00
Ovnuniarchos 5653ac41f9 Mouse hotspot is not honored.
(cherry picked from commit 8fcd92c38a)
2016-09-18 23:15:32 +02:00
Pedro J. Estébanez c44757c2b7 Expose light shadow color to canvas item shaders
(cherry picked from commit 0960887625)
2016-09-18 23:11:08 +02:00
Johan Manuel a2b8ef6d51 Fix some warnings 2016-07-25 16:46:26 +02:00
Alex Piola ffdd9f16dd Fix for incorrect velocity report due to a typo.
Closes #5854
2016-07-24 12:53:07 +02:00
Rémi Verschelde 3725114a16 Merge pull request #5383 from Ovnuniarchos/OptimizeOneWay
Optimized one-way collision loops.
2016-07-18 16:37:50 +02:00
Juan Linietsky 0e6e0ed0e5 Merge pull request #5533 from Hinsbart/cursor_atex
Can use AtlasTextures as custom mouse cursor.
2016-07-10 12:41:57 -03:00
Rémi Verschelde f40f360a2c Remove unused variables (fourth pass) + dead code
Also fix a potential regression from 3fcb9b1ec1.
2016-07-08 16:47:55 +02:00
Andreas Haas 91add16300 Can use AtlasTextures as custom mouse cursor.
fixes #3957
2016-07-03 19:36:12 +02:00
Ovnuniarchos b09b449615 Optimized one way collision loops. 2016-06-24 08:43:23 +02:00
Juan Linietsky d6225b1e00 Improved binding system (ObjectTypeDB::bind_method) to be friendlier to statically typed languages, should help in the Mono integration.
Disabled by default.
2016-06-22 23:13:41 -03:00
Juan Linietsky 4b05181397 Fixed a stupid bug with segment-segment collision in SAT physics, closes #4801 , closes #4984 2016-06-18 18:32:10 -03:00
Juan Linietsky b4b80625d1 Change hash grid in 2D physics to contemplate large objects as separate cases, to avoid huge memory and performance penalty. Fixes #4662 2016-06-18 17:21:53 -03:00
Rémi Verschelde c3bf11d4d4 Drop fully commented-out files
Part of #5272
2016-06-18 20:23:49 +02:00