summaryrefslogtreecommitdiff
path: root/servers/physics_2d/space_2d_sw.cpp
AgeCommit message (Collapse)Author
2018-11-14Ensure that even at slow speed, you will always get collision using ↵Juan Linietsky
kinematic motion. Fixes #16250
2018-11-10Make sure rotated shapes with one way direction collisions work, fixes #12791Juan Linietsky
2018-11-07Merge pull request #21386 from RandomShaper/fix-picking-in-canvas-layersJuan Linietsky
Fix picking in CanvasLayer
2018-11-03<fales> end of the week ;-)Juan Linietsky
2018-11-03Fix condition testJuan Linietsky
2018-11-02Simple workaround to make one way moving platforms work, fixes #9399Juan Linietsky
2018-11-02-Fix problem in OWC logic closes #11357Juan Linietsky
-Fix problem with kinematic move and disabled shapes, in both 2D and 3D
2018-10-24Add some limits on the Editor SettingsSuperwaitsum
2018-09-13Merge pull request #21982 from luzpaz/misc-typosRémi Verschelde
Misc. typos
2018-09-12Misc. typosluz.paz
Found via `codespell -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"`
2018-09-12Make core/ includes absolute, remove subfolders from include pathRémi Verschelde
This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
2018-08-25Fix picking in CanvasLayerPedro J. Estébanez
New APIs in 2D physics allow intersection queries filtered by CanvasLayer object instance id. Viewport keep an inventory of its descendant CanvasLayers and takes advantage of all that to test picking with the mouse/touch position correctly transformed for each CanvasLayer.
2018-08-24Make some debug prints verbose-only, remove othersRémi Verschelde
2018-08-21Changes to ClippedCamera, RayCast,Raycast2D and 2D physics API to add ↵Juan Linietsky
ability to choose between bodies and areas when colliding.
2018-07-16-Added support for raycast in KinematicBody2DJuan Linietsky
-Added support for snapping in KinematicBody2D
2018-05-26Merge pull request #18349 from Gorgexpress/masterMax Hilbrunner
Fixed 2D intersect_shape limiting broadphase results
2018-04-22Fixed 2D intersect_shape limiting broadphase resultsMichael
Physics2DDirectSpaceStateSW was applying the result limit to broadphase collision detection instead of narrow. This is inconsistent with its 3D variant, as well as the rest of the 2D direct space state functions. Broadphase is now limited by INTERSECTION_QUERY_MAX like everything else, and narrow phase is exited early when the result limit has been reached.
2018-04-12Resolves crash on shape2D culling for empty Concave shapesCrazy-P
Fixes https://github.com/godotengine/godot/issues/17789
2018-02-20Improved kinematic body 2D and 3D, Now can move rigid bodyAndrea Catania
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-11-21Removed type_mask and fixed some variable nameAndreaCatania
2017-11-10Remove node from list before calling queries, fixes #10886Juan Linietsky
2017-11-08Fixing bad index used in Space2DSWMateusMP
Fix wrong col_obj access using wrong index variable. Related with issue #11695
2017-10-21Rename RayCasts collision_layer to collision_maskPedro J. Estébanez
The point is that `RayCast`s are checked against objects' `collision_layer`(s), but they themselves are considered no to _belong_ to any layer. Therefore, the correct name for their property is `collision_mask`, rather than `collision_layer`. Only renaming is needed since the behavior was already the right one, only that it wasn't matching what users would expect from the name and description of the property. Fixes #7589, where it's also discussed.
2017-09-17correction to one way collision codeJuan Linietsky
2017-09-17fixes to one way collision, closes #10971Juan Linietsky
2017-08-31Fix special case where KinematicBody fails one way collisions by adding ↵Juan Linietsky
exclusion lists, closes #9729
2017-08-27Dead code tells no talesRémi Verschelde
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde
2017-08-21Removed unnecessary assignmentsWilson E. Alvarez
2017-08-16Remove needless check in motion testPedro J. Estébanez
Since now one-way collision is at shapes, the removed if was unneeded.
2017-07-25Fix crash in Space2DSW::test_body_motion()Pedro J. Estébanez
Fixes #9692.
2017-07-15Lots of work on Audio & Physics engine:Juan Linietsky
-Added new 3D stream player node -Added ability for Area to capture sound from streams -Added small features in physics to be able to properly guess distance to areas for sound -Fixed 3D CollisionObject so shapes are added the same as in 2D, directly from children -Fixed KinematicBody API to make it the same as 2D.
2017-07-15Some more typo fixes for "threshold"Rémi Verschelde
Looks like @reduz really does not like that word.
2017-07-08Refactor 'treshold' to 'threshold'Poommetee Ketson
2017-06-24Simplified 2D Kinematicbody.. 3D will wait a bit.Juan Linietsky
2017-06-23-Trigger shapes removed in 2D, they became obsolete long ago when areas ↵Juan Linietsky
could detect their own overlap -Added ability to disable individual collisionshape/polygon -Moved One Way Collision to shape, allowing more flexibility -Changed internals of CollisionObject, shapes are generated from child nodes on the fly, not stored inside any longer. -Modifying a CollisionPolygon2D on the fly now works, it can even be animated. Will port this to 3D once well tested. Have fun!
2017-06-14Refactor layer_mask to collision_layerPoommetee Ketson
2017-06-04renamed all Rect2.pos to Rect2.positionalexholly
2017-04-08Add "Godot Engine contributors" copyright lineRémi Verschelde
2017-03-06Complement KinematicBody2D fixPedro J. Estébanez
>> which was done at 5fc084c28e912c54bf64645df3e6cf2cd2c30be6
2017-03-05A Whole New World (clang-format edition)Rémi Verschelde
I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
2017-02-26Merge pull request #7802 from tagcup/physics_64bitRémi Verschelde
Use real_t as floating point type in physics code.
2017-02-15Many fixes to make exported scenes work better, still buggy.Juan Linietsky
2017-02-13Use real_t as floating point type in physics code.Ferenc Arn
This is a continuation of an on-going work for 64-bit floating point builds, started in PR #7528. Covers physics, physics/joints and physics_2d code. Also removed matrixToEulerXYZ function in favor of Basis::get_euler.
2017-01-15fixed to 2D physics, makes it work againJuan Linietsky
2017-01-14Style: Fix whole-line commented codeRémi Verschelde
They do not play well with clang-format which aligns the `//` part with the rest of the code block, thus producing badly indented commented code.
2017-01-11Type renames:Juan Linietsky
Matrix32 -> Transform2D Matrix3 -> Basis AABB -> Rect3 RawArray -> PoolByteArray IntArray -> PoolIntArray FloatArray -> PoolFloatArray Vector2Array -> PoolVector2Array Vector3Array -> PoolVector3Array ColorArray -> PoolColorArray
2017-01-10Various corrections in 2D math.Ferenc Arn
This is the follow up for the 2D changes mentioned in PR #6865. It fixes various mistakes regarding the order of matrix indices, order of transformation operations, usage of atan2 function and ensures that the sense of rotation is compatible with a left-handed coordinate system with Y-axis pointing down (which flips the sense of rotations along the z-axis). Also replaced float with real_t, and tried to make use of Matrix32 methods rather than accessing its elements directly. Affected code in the Godot code base is also fixed in this commit. The user code using functions involving angles such as atan2, angle_to, get_rotation, set_rotation will need to be updated to conform with the new behavior. Furthermore, the sign of the rotation angles in existing 2D scene files need to be flipped as well.