Commit Graph

901 Commits

Author SHA1 Message Date
Andrea Catania
0010d9c82a Added ray shape and move_and_slide with snapping on 3D.
Added stop_on_slope on 2d part
2018-08-19 13:45:23 +02:00
Natrim
6ad0f4ebe8 Particles2D: fix editing Visibility Rect from inspector
+ renamed generate_aabb to generate_visibility_rect to prevent future confusions
2018-08-17 12:25:48 +02:00
Rémi Verschelde
968886768b Lift 1440 limit in rotation_degrees hint range
Fixes #15947.
2018-08-16 14:36:38 +02:00
Juan Linietsky
4e55835e48
Merge pull request #18096 from aaronfranke/master
[Core] Split up math_2d.h
2018-08-14 18:58:32 -03:00
Rémi Verschelde
2062d6126d
Merge pull request #20587 from groud/fix_2deditor_scrollable_zone
Fixes bugs on the 2D editor scrollable area
2018-08-13 09:03:34 +02:00
Aaron Franke
28fc195339 [Core] Change math_2d includes to vector2 includes where relevant 2018-08-10 14:59:29 -05:00
Juan Linietsky
c02fb271fd apply a threshold for floor angle, fixes #16037, fixes #15632 2018-08-10 13:07:52 -03:00
MAriano Javier Suligoy
ce87a30e45 New TileSet Editor 2018-08-09 20:38:02 -03:00
Juan Linietsky
14fd797c53
Merge pull request #20381 from AndreaCatania/phymat_2
Improved Physics material
2018-08-07 15:31:26 -03:00
Andrea Catania
5e65e28eed Removed physics material combination mode. Added rough and absorbent parameter to material. Fixed 'change' signal connection 2018-08-07 19:38:04 +02:00
groud
eb7f4ddcce Fixes bugs on the 2D editor scrollable area 2018-07-30 01:05:13 +02:00
Rémi Verschelde
12254594ac Fix PhysicsBody build with deprecated=no
Fixes #20483.
2018-07-27 15:34:58 +02:00
Rémi Verschelde
391e46830f doc: Sync classref with current source
Fix various missing arguments in bindings.
2018-07-26 11:56:21 +02:00
Hein-Pieter van Braam
0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
This commit makes operator[] on Vector const and adds a write proxy to it.  From
now on writes to Vectors need to happen through the .write proxy. So for
instance:

Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;

Failing to use the .write proxy will cause a compilation error.

In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.

_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Rémi Verschelde
f778bd8e69
Merge pull request #20404 from TigerCaldwell/master
Ensured consistency between RigidBody, PhysicsDirectBodyState, PhysicsServers and their 2D counterparts
2018-07-25 08:25:34 +02:00
Rémi Verschelde
62f2a8aadb
Merge pull request #20252 from RandomShaper/fix-canvas-search
Fix CanvasItem's search for a CanvasLayer
2018-07-24 22:45:24 +02:00
Tiger Caldwell
40c7716586 Modified RigidBody, PhysicsDirectBodyState, PhysicsServer, and their respective 2D counterparts to be more consistent and to include more useful methods.
RigidBody:
- Added add_central_force
- Added add_force
- Added add_torque
- Added apply_central_impulse

RigidBody2D:
- Added add_central_force
- Added add_torque
- Added apply_central_impulse
- Added apply_torque_impulse

PhysicsDirectBodyState:
- Added apply_central_impulse

Physics2DDirectBodyState:
- Added add_central_force
- Added add_force
- Added add_torque
- Added apply_central_impulse
- Added apply_impulse
- Added apply_torque_impulse

PhysicsServer:
- Added body_add_force
- Added body_add_torque
- Added body_add_central_force
- Added body_apply_central_impulse

Physics2DServer:
- Added body_add_torque
- Added body_add_central_force
- Added body_apply_central_impulse
- Added body_apply_torque_impulse

Also fixed some small bugs along the way
2018-07-24 05:00:56 -04:00
Wilson E. Alvarez
a22e746bc3 Removed unnecessary assignments 2018-07-24 09:51:03 +02:00
Juan Linietsky
1ad20dc2f1
Merge pull request #12403 from AndreaCatania/phymat
Physics material
2018-07-23 07:37:03 -03:00
Pieter-Jan Briers
b2c797c584 Defer TileMap::update_dirty_quadrants once again.
This fixes #20323.

#11077 is now technically re-broken,
but you can now call update_dirty_quadrants as workaround.
2018-07-22 15:26:14 +02:00
Pedro J. Estébanez
49d0af3c8e Fix CanvasItem search for a CanvasLayer
This fixes the situation where a `CanvasItem` descendant of a `Viewport` which in turn is a descendant of a `CanvasLayer` prefers the more outer `CanvasLayer` rather than the `Vierport`'s.

Because of that, `CanvasItem`s inside a `Viewport` inside a `CanvasLayer` were being rendered to the main `Viewport` instead of the render target of the innermost one.
2018-07-18 20:34:21 +02:00
Max Hilbrunner
b64bf118f1
Merge pull request #19087 from danvalho/master
SpriteFrames: expose method to get array containing animation names
2018-07-17 14:54:06 +02:00
Juan Linietsky
13a801430b Further fixes to KinematicBody2D API, support for sync motion in moving objects 2018-07-17 08:58:04 -03:00
Max Hilbrunner
1f1b45c7ec
Merge pull request #20191 from jvdnbus/line2d-stretch
Line2D texture stretch mode
2018-07-17 12:12:29 +02:00
Juan Linietsky
e1f2feec2e Changes to how snap works (I think this makes more sense now) 2018-07-16 21:30:44 -03:00
Juan Linietsky
063a22851a -Added support for raycast in KinematicBody2D
-Added support for snapping in KinematicBody2D
2018-07-16 20:04:07 -03:00
Jorn Van denbussche
d7aa3e33c8 Line2D texture stretch mode
Prototype for stretching the texture across the whole line.
Fixed end cap tile mode.
2018-07-16 23:16:58 +02:00
Jorn Van denbussche
28aa9a1d6d More accurate UV round begin cap 2018-07-16 14:30:30 +02:00
Marcelo Fernandez
0c78a58b64 Fix possible bug with AudioStreamPlayer2D audio position 2018-07-10 22:57:50 -03:00
Marcelo Fernandez
087329074d Improved stream paused fade code 2018-07-09 21:58:33 -03:00
Max Hilbrunner
ed61bdd2ae
Merge pull request #19646 from chanon/fix-audiostream-cant-set-null-stream
Fix can't set AudioStreamPlayer stream to null
2018-07-05 04:16:47 +02:00
Max Hilbrunner
b21c1f64cd
Merge pull request #18634 from groud/fix_control_child_of_node2d
Fixes the bad calculation of margin & anchors when child of Node2D
2018-07-03 18:06:15 +02:00
Max Hilbrunner
6d0ade54c0
Merge pull request #19205 from marcelofg55/audio_stream_pause
Pause AudioStreamPlayer when SceneTree pauses
2018-07-03 17:23:53 +02:00
Juan Linietsky
eeab3502d5 Changes to how node paths are selected from property, allowing setting a hint. 2018-06-27 20:50:25 -03:00
Rémi Verschelde
f036353b93
Merge pull request #19164 from marcelofg55/tilemap_undo2
Improve TileMap undo operations, second try
2018-06-26 20:57:39 +02:00
Marcelo Fernandez
67a78e020a Optimize _recreate_quadrants 2018-06-26 00:07:48 -03:00
chanon
2bdac0a5d9 fix can't set AudioStreamPlayer stream to null 2018-06-22 15:00:57 +07:00
Rémi Verschelde
3aed396a30
Merge pull request #19343 from bojidar-bg/x-fix-tilemap-shape-rotation
Fix bugs related to bad handling of rotated/translated shapes in tilemap
2018-06-08 18:15:51 +02:00
Rémi Verschelde
f35115309b
Merge pull request #19314 from Jellonator/master
Added autotile override
2018-06-08 09:11:49 +02:00
groud
4d78e16bc1 Fixes the bad calculation of margin & anchors when child of Node2D 2018-06-07 21:25:15 +02:00
danvalho
296af5276f SpriteFrames: expose method to get array containing animation names 2018-06-05 13:07:30 +02:00
Rémi Verschelde
2935cd8a58
Revert "Prevent visibility notification from being called twice in object creation" 2018-06-05 12:05:02 +02:00
Marcelo Fernandez
c409fe0597 Pause AudioStreamPlayers when SceneTree pauses 2018-06-03 14:01:47 -03:00
Bojidar Marinov
d73cdeb248
Fix bugs related to bad handling of rotated/translated shapes in tilemap
Fixup #18529 and #12870
2018-06-03 16:32:23 +03:00
James Beedie
6cbafdea16 Added autotile override 2018-06-02 21:25:09 -04:00
Rémi Verschelde
44b0146953 Revert "Revert "Prevent visibility notification been called twice in object creation""
This reverts commit 4d277b96ad.

Woops, this wasn't meant to be committed. I just reverted it locally
to test something, nothing wrong with the original commit :)
2018-05-31 15:50:02 +02:00
Rémi Verschelde
4d277b96ad Revert "Prevent visibility notification been called twice in object creation"
This reverts commit d42b17607e.
2018-05-31 12:03:40 +02:00
Rémi Verschelde
43b7ebf0a0 Style: Apply clang-format (5.0) to some missed files 2018-05-31 09:00:37 +02:00
Marcelo Fernandez
cadd72793b Improve TileMap undo operations, second try 2018-05-29 19:35:30 -03:00
Mariano Javier Suligoy
7eddb80b27
Merge pull request #18960 from isaacremnant/autotile_3x3_minimal
Restore support for minimal 3x3 autotile sets
2018-05-17 19:57:55 -03:00
isaacremnant
e4f0ac558d Restore support for minimal 3x3 autotile sets 2018-05-17 09:49:14 -04:00
Marcelo Fernandez
b9023715e2 Fix missing return on Navigation2D::get_closest_point_owner 2018-05-17 09:07:25 -03:00
Mariano Javier Suligoy
ba134d44b8
Merge pull request #15909 from authenticate/tilemap_fix
TileMap Navigation Fixes
2018-05-16 20:22:19 -03:00
Guilherme Felipe
35024d4e7b Add missing copyright headers 2018-05-16 14:50:44 -03:00
Juan Linietsky
dfd1331690 Allow editing of some unbound properties when hinted (or no range hinted) 2018-05-16 09:13:41 -03:00
James
69ee7945d7 Fixing a bug where tilemap navigation would not be accurate after a tilemap exits and then re-enters the tree. Fixing a bug where deleting a tile and then querying navigation would result in an incorrect path if both happened within the same frame. 2018-05-15 20:14:37 -04:00
Anthony Rey
c8a42f98cc Fix Camera2D drag margin property is affected by zoom property #18912 2018-05-16 01:53:38 +02:00
Juan Linietsky
005b69cf6e -New inspector.
-Changed UI resizing code, gained huge amount of speed.
-Reorganized timer sync to clean up behavior (sorry forgot commit this before)

-
2018-05-15 17:14:31 -03:00
Rémi Verschelde
aba499965c
Merge pull request #18851 from groud/fix_animatedsprite
Updates frame timeout when changing speed scale
2018-05-14 08:30:22 +02:00
Michael Alexsander Silva Dias
7f72d6476b Fixed some warnings found with Cppcheck. 2018-05-14 02:14:56 -03:00
groud
d7f25f7adb Updates frame timeout when changing speed scale 2018-05-13 23:29:06 +02:00
Hein-Pieter van Braam
3cfb9df325
Revert "Use fake audio playing property in editor" 2018-05-13 21:37:08 +02:00
Hein-Pieter van Braam
24dbe5e310
Merge pull request #17367 from ShyRed/audio_playing_
Use fake audio playing property in editor
2018-05-13 21:35:44 +02:00
AndreaCatania
5f66734d2d Implemented physics material
Hidden a function

Fixed travis static check
2018-05-11 03:23:09 +02:00
Rémi Verschelde
d7d20b70af
Merge pull request #18619 from mateusak/master
Add more flexibility to 3X3 autotiles
2018-05-08 08:57:44 +02:00
Max Hilbrunner
bdad359d99
Merge pull request #18453 from groud/add_speed_factor
Adds a speed factor to AnimatedSprite
2018-05-08 07:13:37 +02:00
Juan Linietsky
9b1fdad035
Merge pull request #16122 from ibrahn/sprite-region-with-frames
Allow use of frames in sprites with texture region enabled.
2018-05-07 20:38:12 -03:00
groud
89fe7e2f92 Adds a speed factor to AnimatedSprite 2018-05-07 18:53:06 +02:00
Bastiaan Olij
6103c8d7a3 Add no-blend canvas item render_mode 2018-05-07 22:41:12 +10:00
mateusak
ab0220affb
Allow uncommon bitmask for autotile - Fixes #16511
Removes some conditions that were there to create compatibility from 2X2 to 3X3.
Further dissociates 2X2 and 3X3 but adds more flexibility to 3X3.
2018-05-04 19:58:21 -03:00
Juan Linietsky
bf561c4946 Made bone handling for actual Bone2D a special case. Make custom bones appear like a custom (less important) option now. 2018-05-04 16:46:32 -03:00
Juan Linietsky
b3e4bc562c Skeleton for 2D WIP 2018-05-03 17:29:56 -03:00
Rémi Verschelde
b774156729
Merge pull request #18514 from neikeq/api-hash-fixes
API hash fixes
2018-05-03 14:36:32 +02:00
Juan Linietsky
4c3c510a80 WIP Polygon2D weight editing 2018-05-02 11:01:12 -03:00
Pieter-Jan Briers
20dd2204db Adds z-index properties to TileSets. 2018-05-01 17:24:57 +02:00
Rémi Verschelde
8852ca1455 Fix Node2D::global_scale's PropertyInfo type
Was missed in #18391.
2018-05-01 10:46:08 +02:00
Ignacio Etcheverry
7034d48032 Fix binding some core API methods only in tools builds 2018-04-29 19:49:26 +02:00
Ruslan Mustakov
8619b0d280 Fix Node2D::global_position to have Vector2 type 2018-04-24 10:50:05 +07:00
Rémi Verschelde
3b1ea51e40
Merge pull request #18172 from Chaosus/fix_notification
Prevent visibility notification from being called twice in object creation
2018-04-18 16:35:38 +02:00
Rémi Verschelde
a6a0495829
Merge pull request #18230 from volzhs/fix-image-error
Fix index out of size error on Image
2018-04-18 13:26:03 +02:00
volzhs
d77ffa3e97 Ability to change path color with self modulate
Fix #18164
2018-04-17 15:06:15 +09:00
volzhs
3ecf8eef37 Fix error spam with Sprite has compressed texture
Fix #18177
2018-04-16 21:53:54 +09:00
volzhs
af0d547c02 Fix index out of size error on Image
Fix #18229
2018-04-16 21:15:31 +09:00
Juan Linietsky
1d15c5d726
Merge pull request #17502 from groud/2Deditor_rect
Remove the rect surrounding 2D nodes in 2D editor when it's not pertinent
2018-04-13 10:21:44 -03:00
Chaosus
d42b17607e Prevent visibility notification been called twice in object creation 2018-04-13 15:28:38 +03:00
Rémi Verschelde
fbc61374ca Use internal physics processing for Nodes' internal logic 2018-04-11 09:28:14 +02:00
Ibrahn Sahir
9db767d076 Allow use of frames in sprites with texture region enabled.
If texture region is enabled on a sprite, Hframes and Vframes will now
divide the selected region into frames.
2018-04-08 19:56:58 +01:00
Juan Linietsky
9e7cee2ceb Removed strange custom world2d in CanvasLayer, been there since always and not sure why.
Fixes #17524, fixes #17523.
2018-04-07 19:43:09 -03:00
Juan Linietsky
61d70fe47c Document condition to avoid mistakes (like #17690) 2018-04-07 17:04:12 -03:00
Gilles Roudiere
72ed1e4244 Remove the selection rect for nodes that do not require it 2018-04-03 22:04:19 +02:00
Benedikt Bär
84d60b0829 Implement missing navgiation polygon debugging in tilemap 2018-03-30 17:28:53 +02:00
ShyRed
bc1522e268 Use fake audio playing property in editor
It appears that some time ago users were supposed to be able to include the playback of sound effects in their animations by placing keys on the "playing" property. Back then the key frame editor took the value of the checkbox in the property_editor.

Somewhere / Sometime this behaviour changed and the key frame editor is now reading the actual value from the object instead of relying on the property editor.

This commit introduces a fake active field that is returned when reading the playing property in the editor. While the actual active flag is changed when playback is finished the fake one will stay the same thus allowing the user to take their time with setting the key in the animation editor.
2018-03-16 15:26:23 +01:00
Rémi Verschelde
c81356153e
Merge pull request #16971 from Noshyaar/tilemap
TileMap: add fix_invalid_tiles
2018-03-13 13:57:58 +01:00
Rémi Verschelde
931f669b30
Merge pull request #17114 from poke1024/fix15719
Fix line thickness for CollisionPolygon2D.
2018-03-13 13:34:32 +01:00
ShyRed
67f4944a21 Update TileMap when its TileSet changes
Make TileMap monitor its TileSet for changes and emit a signal when the TileSet changes. This makes the editor update and show the updated version of the TileSet.
2018-03-11 12:24:50 +01:00
ShyRed
a23c0877f1 Update Sprite when Texture changes
Make Sprite monitor its Texture for changes and trigger an update when the sprite changes.
2018-03-10 17:23:29 +01:00
Rémi Verschelde
079b919b41
Merge pull request #17341 from poke1024/fix16461
Fix unselectable flipped sprites (fixes 16461)
2018-03-08 08:40:49 +01:00
Rémi Verschelde
0b600fde3f
Merge pull request #17189 from CodeAndWeb/master
Fixes Selection of Sprites using AtlasTexture
2018-03-08 08:37:22 +01:00
poke1024
bd2e1df216 Fix unselectable flipped sprites (fixes 16461) 2018-03-07 18:58:45 +01:00
Bernhard Liebl
5f917139ab Fix uninitialized data in Sprite::_get_rects() 2018-03-04 21:19:32 +01:00
Andreas Loew
a01ba4523b Fix selection of Sprites using AtlasTexture in the editor.
Fixes #16261.
2018-03-02 19:17:47 +01:00
poke1024
a36f6e5386 Fix line thickness for CollisionPolygon2D. 2018-03-01 07:30:30 +01:00
Juan Linietsky
125fc8cc44 Add a split editor to polygon 2D UV editor, moving an inch closer to adding support for in the future 2018-02-25 12:07:13 -03:00
Marc Gilleron
d2fae5c9a6 Fix Line2D tile mode for non-square textures 2018-02-25 01:49:10 +01:00
Poommetee Ketson
7effe46461 TileMap: add fix_invalid_tiles 2018-02-24 19:34:41 +07:00
Rémi Verschelde
e349cedb6e Skeleton2D: Fix missing return value in comparator 2018-02-22 08:18:25 +01:00
Juan Linietsky
7cd867c3fe 2D Skeletons WORK IN PROGRESS 2018-02-21 17:24:00 -03:00
luz.paz
612ab4bbc6 Fix typos with codespell
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt`
Whitelist consists of:
```
ang
doubleclick
lod
nd
que
te
unselect
```
2018-02-21 19:46:06 +01:00
Juan Linietsky
9e3a1e5401 Add base support for 2D meshes in Godot, including Sprite -> Mesh2D conversion. 2018-02-21 09:39:09 -03:00
Rémi Verschelde
222516a815
Merge pull request #16756 from willnationsdev/shifted-rect-sprite
Simplify detection of Sprite clicks
2018-02-21 10:42:47 +01:00
Rémi Verschelde
c291fc39ad
Merge pull request #16772 from damarindra/tileset_editor_improvement
Tileset Editor Improvement
2018-02-21 10:40:43 +01:00
Andrea Catania
39fb83630d
Added forgotten infinite_inertia to bindings
Related to this comment: https://github.com/godotengine/godot/pull/16757#discussion_r169470394
2018-02-21 08:42:36 +01:00
Damar Indra
e69dd47501 Tileset Editor Improvement 2018-02-20 22:33:59 +07:00
Rémi Verschelde
497a4e9e25
Merge pull request #16757 from AndreaCatania/kinpush
Improved kinematic body, Now can move rigid body
2018-02-20 15:41:10 +01:00
Andrea Catania
6ed392f47a Improved kinematic body 2D and 3D, Now can move rigid body 2018-02-20 12:43:47 +01:00
Will Nations
b0bdb4456b Expose Sprite._edit_get_rect for click rect access 2018-02-19 16:45:11 -06:00
Chris Bradfield
a5688ccd90 Improve CollisionObject/CollisionObject2D warning message 2018-02-19 21:48:31 +01:00
Rémi Verschelde
b93d6a001b
Merge pull request #16566 from groud/gui_input_rework
2D Editor GUI input rework
2018-02-19 20:05:35 +01:00
Artem Varaksa
d35e486228 Clean up some bad words from code comments 2018-02-17 16:00:39 +03:00
Gilles Roudiere
8dad41e395 2D editor GUI input rework. Changes are:
- The input handling is done into several distinct functions, and the
  code is more consistent.
- The actions' history is more precise ("Edited CanvasItem"
  is now "Rotated CanvasItem","Moved CanvasItem",etc...)
- Fixed a little bug about input key events not forwarded correctly to plugins
- IK is followed by default when you move a bone node, the alt-key allow
  you to move it normally
2018-02-16 10:14:52 +01:00
Rémi Verschelde
eefb58a892
Merge pull request #16424 from AndreaCatania/phyj
Added physics API in order to enable/disable collisions between rigidbody attached to a joint with bullet physics bullet
2018-02-13 15:26:04 +01:00
ronroniv
5e8f7c9782
Update an outdated method name in error message
set_enable_monitoring -> set_monitoring
2018-02-07 12:32:05 +09:00
Andrea Catania
a42765dada Added physics API in order to enable/disable collisions between rigidbody attached to a joint with bullet physics bullet
Fixes #16424
2018-02-05 18:54:07 +01:00
Rémi Verschelde
ff287d8341
Merge pull request #15254 from mrcdk/pitch_scale
Added pitch scale property to AudioStreamPlayer, AudioStreamPlayer2D and AudioStreamPlayer3D
2018-02-01 14:26:27 +01:00
robfram
3cf2d6524b Fix inverted RIGHT/LEFT TOP/BOTTOM Camera2D drag margin in runtime (editor works fine). Fix #16095. 2018-01-27 19:37:04 +01:00
Todd Ross
fd6a98b753 defend Path2D against a null curve 2018-01-22 22:45:38 -06:00
Bernhard Liebl
e9237d83c7 Fix crash on deleted rigidbodies without contact monitor (issue 15904) 2018-01-21 12:46:13 +01:00
Yuri Chornoivan
17614f79ea
Fix minor typo: it's -> its 2018-01-20 20:18:43 +02:00
Rémi Verschelde
9f479f096c Fix typos in code and docs with codespell
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
Juan Linietsky
cc8dfcc9c0 Before I forget, add warnings on areas without children (should not break anything).
Seen too many users misunderstanding the edit rect is the shape.
2018-01-18 14:31:07 -03:00
Rémi Verschelde
bab9759645
Merge pull request #15606 from RandomShaper/fix-inherited-coll-shapes
Update collision shapes data on tree entered
2018-01-12 13:48:17 +01:00
Juan Linietsky
a26e6c8215 Renamed tree_exited to tree_exiting. tree_exited is now used for actual out of tree notification.
Updated doc accordingly.
2018-01-12 08:29:24 -03:00
Bojidar Marinov
9b8e8b2220
Bind many more properties to scripts
Notable potentially breaking changes:
- PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL
- Some properties were renamed, and sometimes even shadowed by new ones
- New getter methods (some virtual) were added
2018-01-12 00:58:14 +02:00
Pedro J. Estébanez
aefedb73fc Update collision shapes data on tree entered
This is needed because the final startup values for shapes may change between parenting and entering the scene tree. For instance, if the collision shape belongs to a inherited scene.

Fixes #13835.
2018-01-11 21:08:58 +01:00
Bernhard Liebl
d4adcf3fa2 Update Camera2D scroll using NOTIFICATION_INTERNAL_PROCESS 2018-01-08 18:29:22 +01:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
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-05 01:22:23 +01:00
Rémi Verschelde
f9f6f250e6
Merge pull request #15191 from Jerome67000/z_renaming
renames "z" Node2D property to "z_index"
2018-01-04 00:41:45 +01:00
Jerome67000
42ae3525a3 #15078 renamed "z" -> "z_index" property in Node2D 2018-01-03 13:02:26 +01:00
Rémi Verschelde
459ee51338
Merge pull request #15093 from poke1024/canvas-editor-select
More exact picking for canvas editor
2018-01-03 11:15:28 +01:00
MrCdK
5bc010e8ee Added pitch scale property to AudioStreamPlayer, AudioStreamPlayer2D and AudioStreamPlayer3D 2018-01-01 22:23:16 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Bernhard Liebl
8505871a87 More exact picking for canvas editor 2017-12-27 20:24:58 +01:00
Noshyaar
5c636875e4
Merge pull request #14971 from mrcdk/particles_emitting
Set particles emitting to false when particles finish emitting with one-shot enabled
2017-12-27 10:45:36 +07:00
Poommetee Ketson
6c897707ca Add missing parameter names 2017-12-25 21:19:56 +07:00
MrCdK
1f609b7a82 Set particles emitting to false when particles finish emitting with one-shot enabled 2017-12-23 05:23:41 +01:00
Rémi Verschelde
caf3a405ab
Merge pull request #13991 from CyanBlob/master
TileMap: Add update_bitmask_region(2), expose update_bitmask_area(1) …
2017-12-16 16:38:59 +01:00
Andrew Thomas
d8c4324cfb TileMap: Add update_bitmask_region(2), expose update_bitmask_area(1) and update_bitmask_region(2) to GDscript 2017-12-16 08:18:54 -06:00
Nathan Warden
38caa4126f Renamed navmesh/poly_create to navmesh/poly_add since no navmesh is created. 2017-12-15 15:09:06 -05:00
Poommetee Ketson
24df9f3707 Enhance undoredo action name, TTR, cleanup 2017-12-12 23:04:37 +07:00
Rémi Verschelde
48cefc9c96 TileMap: Drop unused center_x/center_y booleans
Two years later they are still unused and we do not know
their intend use case, so tschüss.
Closes #2513.
2017-12-10 16:40:31 +01:00
Rémi Verschelde
09fe926ab3
Merge pull request #14454 from CyanBlob/TileMap
Convert tilemap format in get_tile_data()
2017-12-09 19:05:07 +01:00
Juan Linietsky
65fb961b8b -Ability to and unwrap lightmap coordinates on import
-Added unwrap functionality to Mesh
-Ability to display and debug mesh UVs
-Added multiline draw, so it's easier and faster to draw UVs
-Many fixes to SurfaceTool
-Fixes to Thekla Unwrap, but it's a piece of ass and it keeps crashing. Will have to go away
2017-12-09 14:18:14 -03:00
Andrew Thomas
c3a005011b Convert tilemap format in get_tile_data() 2017-12-09 10:44:26 -06:00
Rémi Verschelde
783c560309
Merge pull request #14321 from ibrahn/path2d-two-style
Reworked PathFollow2D behaviour, based on such in version 2.1.
2017-12-09 14:49:30 +01:00
PJB3005
cea5078ebe Fixes TileMap occluder offsets.
This is NOT related to #14388!

This fixes a graphical bug where the light occluders used by tilemaps weren't getting offset anymore, this they'd be positioned incorrectly.

I tried on all 3 tilemap positioning modes and it seemed to work on every one.
2017-12-08 20:14:06 +01:00
Juan Linietsky
dcab01618a Fixed is_playing funtion (was reporting wrong), closes #13928
Made error reporting to opcode_set in gdscript a bit clearer
2017-12-07 18:14:39 -03:00
Rémi Verschelde
13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
Juan Linietsky
7b7ba58493 -Fix particles with size==0, closes #13931
-Fixed material previews (dont show sphere unless for spatial)
2017-12-06 19:51:13 -03:00
Andreas Haas
4c222c2835
Particles2D: Fix normal map rid.
Looks like a Copy & Paste error, fixes #14334.
2017-12-06 22:44:12 +01:00
Ibrahn Sahir
abef939b09 Reworked PathFollow2D behaviour, based on such in version 2.1.
When rotation is enabled, the follower's rotation will be set to that of
the tangent to the path at it's current offset.
For closed looping paths the lookahead will now wrap around at the end of
the path.

fixes #13434
2017-12-06 15:55:54 +00:00
Mariano Suligoy
af719a90a7 TileMap Fixes 2017-12-02 20:49:01 -03:00
Poommetee Ketson
e89309b931
Merge pull request #13216 from hoelzl/pr-fix-tile-origin-center
Fix displacement for centered tilemaps
2017-12-01 11:46:34 +07:00
Ferenc Arn
40a7b7e391 Fix PathFollow2D motion.
Fixes #13361.
2017-11-30 08:06:58 +01:00
Chris Bradfield
ee14b17201 Change RayCast2D 'Exclude Parent' to include Area2D 2017-11-28 22:06:49 -08:00
Matthias Hoelzl
2beadf7ac0 Fix displacement for centered tilemaps
- Fixes tile and collision placement for tilemaps with
  `tile_origin` set to `TILE_ORIGIN_CENTER`.
- Also fixes a bug in the offset computation for collision shapes
  with `flip_v` flag set to true if `tile_origin` is
  `TILE_ORIGIN_BOTTOM_LEFT`.
2017-11-27 15:12:30 +01:00
Juan Linietsky
bc2e8d99e5 Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
leading to unnecesary copy on writes and reduced performance.
2017-11-25 00:09:40 -03:00
Ruslan Mustakov
e967dbca6f Fix TileMap and TileSet ClassDB bindings 2017-11-24 11:43:15 +07:00
Sofox
3551fc6af0 Fixed #13167. Restored ParallaxLayer mirroring that was broken by pull request #12421 2017-11-23 01:52:34 +00:00
Rémi Verschelde
2ea5ac17e8
Merge pull request #13159 from AndreaCatania/ray
Removed type_mask and fixed some variable name
2017-11-22 16:40:20 +01:00
Rémi Verschelde
e38efe22c7
Merge pull request #12301 from MarianoGnu/master
Implement auto-tiling
2017-11-22 15:31:46 +01:00
AndreaCatania
d6e413bb9c Removed type_mask and fixed some variable name 2017-11-21 22:56:40 +01:00
Rémi Verschelde
00be297b84
Merge pull request #12421 from TheSofox/parallax-overhaul
Overhauled the ParallaxBackground system
2017-11-20 15:36:03 +01:00
Gilles Roudiere
f1ec8ff6e8 Fixes a double class registering error 2017-11-20 11:20:38 +01:00
Mariano Suligoy
bcfb0a09f8 Implement auto-tiling 2017-11-20 06:27:47 -03:00
Rémi Verschelde
b1f037eeb9
Merge pull request #13049 from tagcup/pathfollow2d_parallel_transport
Use parallel transport in PathFollow2D.
2017-11-20 08:59:33 +01:00
Eric Wiltfang
7dd9e5c57c Fix the prevention for sliding on slopes in the 2d version of move_and_slide
Done by using the same method the 3d counterpart uses.

Fixes #13063.
2017-11-20 01:42:44 +01:00
Ferenc Arn
4e87f471d7 Use parallel transport in PathFollow2D.
Fixes #12995.
2017-11-19 14:38:53 -05:00
Gilles Roudiere
8d1f2b1857 Rework the canvas_item API for further improves to the canvas item editor 2017-11-19 13:36:31 +01:00
Ferenc Arn
d28763a4c1 Rename Rect3 to AABB.
Fixes #12973.
2017-11-17 11:01:41 -05:00
Rémi Verschelde
49cea443a9
Merge pull request #12870 from Nibodhika/master
Fixing tilemap rotation for non top-left tiles.
2017-11-17 00:05:23 +01:00
Vito
5515d28107 Fixing tilemap rotation for non top-left tiles. 2017-11-15 09:22:07 +00:00
Juan Linietsky
04edfc090b Finalized ability to convert from CanvasItem/Spatial/Particles materials to ShaderMaterial, closes #10242 2017-11-14 15:45:30 -03:00
Poommetee Ketson
aca18b6a49
Merge pull request #12806 from letheed/unify-degrees
Unify degree methods and properties
2017-11-11 13:27:02 +07:00
Juan Linietsky
19b1ff0fc5 Disabled filter clip by default and made it optional, fixes #12368, likely others too 2017-11-10 09:22:25 -03:00
letheed
482e07af7e Unify degree members and properties 2017-11-10 12:52:07 +01:00
letheed
ab2647a0d0 Remove deprecated rotation methods 2017-11-10 09:09:30 +01:00
Juan Linietsky
192a4d7de5 Reworked how servers preallocate RIDs, should fix #10970 2017-11-09 23:35:34 -03:00
Rémi Verschelde
24b3733f3b
Merge pull request #10770 from RandomShaper/fix-joints
Fix joints collision exceptions, plus a bit more
2017-10-31 23:02:37 +01:00
Sofox
43cbef219b Overhauled the ParallaxBackground system so that it works properly regardless of the zoom of the camera. 2017-10-26 20:42:51 +01:00
Cédric Fuchs
c42bbe1073 Fixes infinite loop in NavPolygonInstance warnings 2017-10-26 13:02:04 +02:00
Jakub Grzesik
8f054d519f missing set/get_collision_mask_bit() for RayCast
in the same fastion how it's implemented in Area or Bodies
2017-10-23 14:31:58 +02:00
Rémi Verschelde
01a5a8b86c Merge pull request #12291 from RandomShaper/fix-raycast-naming
Rename RayCasts collision_layer to collision_mask
2017-10-21 23:44:46 +02:00
Pedro J. Estébanez
7b12ae39f2 Rename RayCasts collision_layer to collision_mask
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-10-21 22:17:47 +02:00
Poommetee Ketson
9cadb9e5f3 Bind unbound enums, rearrange some by value 2017-10-22 01:58:02 +07:00
Rémi Verschelde
fd4c907a35 Merge pull request #12260 from bojidar-bg/11975-navpoly-freeze
Fix adding a NavigationPolygonInstance to a Node2D freezing the editor

[ci skip]
2017-10-20 16:40:39 +02:00
Bojidar Marinov
a6472d0344
Fix adding a NavigationPolygonInstance to a Node2D freezing the editor
Fixes #11975
2017-10-20 16:55:47 +03:00
Sofox
aaf6e77198 Tweaks ParallaxBackground to work better with zoom. Ensures a Parallax Layer with a (1,1) motion scale synchs perfectly with a regular stationary sprite that is outside the ParallaxBackground, regardless of the zoom level and movement of the camera. 2017-10-18 11:17:42 +01:00
Hiroshi Ogawa
130ad806f8 Fix AnimatedSprite frame property slider in editor 2017-10-11 17:49:39 +09:00
AndreaCatania
4537977d6d Renamed fixed_process to physics_process 2017-09-30 16:19:07 +02:00
damarindra
b786e7877b Fix: CollisionObject shape owner indexing is inconsistent 2017-09-24 15:55:45 +07:00
Marcelo Fernandez
46af050e93 Rename get_position => get_playback_position and seek_pos => seek on audio classes 2017-09-23 16:55:00 +02:00
Marcelo Paez
5e50fde3d9 Changed get_audio_bus and set functions to get_audio_bus_name and set
and edited docs for Area2D due to renaming o get_audio_bus and set_audio_bus
2017-09-22 15:05:09 -03:00
letheed
5ad9be4c24 Rename pos to position in user facing methods and variables
Rename user facing methods and variables as well as the corresponding
C++ methods according to the folloming changes:

* pos -> position
* rot -> rotation
* loc -> location

C++ variables are left as is.
2017-09-20 13:11:10 +02:00
Thomas Herzog
7dffed485b Merge pull request #11230 from maxim-sheronov/fix_enum_bindings
Fix enums bindings
2017-09-15 08:43:35 +02:00
Maxim Sheronov
0fffa45158 Fix enums bindings
Add missed bindings for enums
Move some enums to class to have correct output of api.json
2017-09-13 20:57:07 +03:00
Rémi Verschelde
c2741e2385 Merge pull request #11069 from aroncds/master
KinematicBody2D api most friendlier
2017-09-13 15:07:17 +02:00
Juan Linietsky
06138bf18c Renamed play to playing property, but now playing and is_playing is the same, to avoid confusing. Closes #11211 2017-09-13 08:41:26 -03:00
Marcelo Fernandez
730d36f350 Fixed issues with surround sound on audio server 2017-09-12 15:13:28 -03:00
Rémi Verschelde
aabbd00284 Merge pull request #10908 from hpvb/fix-unused-variables
Fix unused variable warnings
2017-09-12 12:55:53 +02:00
Rémi Verschelde
cf941fdc35 Merge pull request #11026 from hpvb/fix-assign-in-if
Remove assignment and declarations in if statements
2017-09-12 11:57:49 +02:00
Rémi Verschelde
2b50dc5d4f Merge pull request #11057 from hpvb/fix-various-warnings
Fix various assorted warnings
2017-09-12 11:39:47 +02:00
Rémi Verschelde
3941e01a57 Merge pull request #11041 from hpvb/fix-clang-format-error
Fix serveral recent new clang-format errors

[ci skip]
2017-09-12 11:16:36 +02:00
Will Nations
d441cc9660 Updated Area2D docs and added enum constants to scripting 2017-09-11 22:39:28 -05:00
Aron de Castro
6e0892f223 Added to kinematicbody2d the copy and paste of the API friendler of KinematicBody 2017-09-10 13:07:47 -03:00
Hein-Pieter van Braam
b2a38854fd Fix unused variable warnings
The forth in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-08 15:03:53 +02:00
Hein-Pieter van Braam
8230bf0a2f Remove assignment and declarations in if statements
After discussing with @reduz and @akien-mga it was decided that we do
not allow assignments or declarations in if statements. This PR removes
the instances of this I could find by automated means.
2017-09-08 14:59:15 +02:00
Hein-Pieter van Braam
67a706fc1b Fix various assorted warnings
Fix various warnings that don't have enough instances to merit
individual commits. Also fixes a potential bug in audio_server.cpp.
2017-09-08 14:57:48 +02:00
Hein-Pieter van Braam
5e18967d77 Fix serveral recent new clang-format errors 2017-09-08 00:20:16 +02:00
Juan Linietsky
98af411a37 Renamed playing property of audiostreams to play, to make it clearer. Fixes #10730
Also disabled the auto shut down of the property when stream ends, to make it easier to animate
2017-09-06 22:03:04 -03:00
Juan Linietsky
2802dced84 Automatically redraw when shaders using TIME are visible, fixes #10554 2017-09-05 00:30:39 -03:00
Rémi Verschelde
8e75e7311b Merge pull request #10858 from letheed/add-shadow_filter-variant
add shadow_filter variant PCF7
2017-09-02 12:13:01 +02:00
Hein-Pieter van Braam
9c63ab99f0 Fix use of unitialized variables
The second in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-02 01:59:26 +02:00
Juan Linietsky
42659b0d9f Fix freeze on exit on audiostreamplayers when setting invalid stream, closes #10093 2017-09-01 16:43:46 -03:00
letheed
3a188015be add shadow_filter variant PCF7 2017-09-01 15:01:24 +02:00
Rémi Verschelde
6611dfbd6c Merge pull request #10378 from RandomShaper/nav-keep-start-end
Guarantee start & end points are returned by Navigation2D
2017-08-30 16:12:12 +02:00
Rémi Verschelde
348eb4e4c5 Merge pull request #10361 from RandomShaper/tilemap-global-mtl
Let TileMap apply its material
2017-08-30 16:02:12 +02:00
Juan Linietsky
9c3bddfac2 Merge pull request #10745 from neikeq/fix-docdata-and-stuff
DocData and virtual method type hints fixes
2017-08-29 20:11:07 -03:00
Pedro J. Estébanez
d8584682f0 Fix joints collision exceptions
Fix 3D joint handling of collision exceptions, so that they lose effect when the joint is not valid in every case; also some redundant code removed.

Also avoid trying to create the joint when not neither body A nor body B are set.

Make 2D joints be handled like their 3D counterparts, which adds the fixes to them while also removing duplicated code.

(adapted from commit 4a98a59aa6)
2017-08-29 23:46:44 +02:00
Ignacio Etcheverry
c16d00591b DocData and type hints fixes
- Makes vararg methods automatically use PROPERTY_USAGE_NIL_IS_VARIANT on return types
- Completely removes the ":type" suffix for method names. Virtual methods must use the MethodInfo constructors that takes Variant::Type or PropertyHint as the first parameter for the return type (with CLASS_INFO as a helper to get the PropertyInfo). Parameters must use PROPERTY_HINT_RESOURCE_TYPE and hint string.
- PROPERTY_USAGE_NIL_IS_VARIANT is no longer needed for parameters, because parameters cannot be void.
- Adds missing PROPERTY_USAGE_NIL_IS_VARIANT to virtual and built-in methods that return Variant.
2017-08-29 19:40:21 +02:00
Rémi Verschelde
2353c65a1f Merge pull request #10622 from letheed/patch-1
Allow to disable shadow gradients in Light2D
2017-08-28 23:46:42 +02:00
Rémi Verschelde
7ad14e7a3e Dead code tells no tales 2017-08-27 22:13:45 +02:00
Rémi Verschelde
bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Juan Linietsky
a1c03a69d2 added finished signals to audio stream players, fixes #9928 2017-08-25 11:58:21 -03:00
Juan Linietsky
3061eca190 Removed old fp_adjust code that conflicts with clipped rects, fixes #9925 2017-08-25 10:40:29 -03:00
Letheed
61d3fb36e8 Allow to disable shadow gradients in Light2D
Currently the shadow gradient can't be disabled and always has a minimum value of 1.
I'm not sure why though, the default value seems to be 0 and the rasterizer checks for 0 [here](8fc6bb8f77/drivers/gles3/rasterizer_canvas_gles3.cpp (L1284)) before enabling it.

Feels like a bug to me, but if there's a reason for that let me know.

As a side effect, this edit effectively changes the default value from 1 to 0 for new projects.
2017-08-24 23:35:19 +02:00
Hein-Pieter van Braam
cacced7e50 Convert Object::cast_to() to the static version
Currently we rely on some undefined behavior when Object->cast_to() gets
called with a Null pointer. This used to work fine with GCC < 6 but
newer versions of GCC remove all codepaths in which the this pointer is
Null. However, the non-static cast_to() was supposed to be null safe.

This patch makes cast_to() Null safe and removes the now redundant Null
checks where they existed.

It is explained in this article: https://www.viva64.com/en/b/0226/
2017-08-24 23:08:24 +02:00
Hein-Pieter van Braam
0a14e78a60 Change order of Null check for ParallaxLayer
The change in #10524 subtly changes the behavior of set_motion_scale()
and set_motion_offset() if the ParallaxLayer does not have a parent
node. Previously it would still set the corresponding property, but
after this change the property change would be discarded.

I'm not entirely sure if this actually matters as there doesn't appear
to be any code that picks up this change if the ParallaxLayer gets
re-parented later, but it's better to not change behavior regardless.
2017-08-22 15:13:31 +02:00
Hein-Pieter van Braam
99617ae8dc Add null check to ParallaxLayer get_parent() calls
This fixes #10515
2017-08-22 01:48:24 +02:00
Rémi Verschelde
df590fc2d3 Merge pull request #10340 from Rubonnek/remove-unnecessary-assignments
Removed unnecessary assignments
2017-08-22 00:58:12 +02:00
Juan Linietsky
2cc8309249 Merge pull request #10351 from neikeq/enums-are-for-the-weak
ClassDB: Provide the enum name of integer constants
2017-08-21 19:56:08 -03:00
Wilson E. Alvarez
738d2ab969 Removed unnecessary assignments 2017-08-21 15:15:55 -04:00
Ignacio Etcheverry
32dd9a9f66 ClassDB: Provide the enum name of integer constants 2017-08-20 22:07:43 +02:00
Juan Linietsky
541fdffc0a Merge pull request #10319 from neikeq/pr-engine-editor-hint
Adds Engine::is_editor_hint() method
2017-08-20 12:55:46 -03:00
Juan Linietsky
8fc6bb8f77 Added polygon antialiasing, but it does not work on nvidia. Will have to try something else.. 2017-08-19 13:14:38 -03:00
Ignacio Etcheverry
90b8a5b71e Removes editor_hint from SceneTree 2017-08-19 01:29:45 +02:00
Pedro J. Estébanez
ef6e1252ae Guarantee start & end points are returned by Navigation2D
So start and end points are unconditionally added to the returned point list, but first and last middle points are checked against them to avoid duplicates.

`CMP_EPSILON` was already providing a guarantee, but knowing you will get exactly the endpoints you provided is even better.
2017-08-17 01:27:30 +02:00
TwistedTwigleg
00f6c85928 Synchronize parameter names in definition and declaration
Fixes #10244.
2017-08-16 17:22:23 +02:00
Pedro J. Estébanez
71a496803c Fix double point in Navigation2D
Fixes #10324.
2017-08-16 13:46:10 +02:00
Pedro J. Estébanez
3bb5abbc35 Let TileMap apply its material
So when a material is set, every tile will be rendered with that. Quadrants will not be recreated, so a `CanvasItem` will exist per material per quadrant regardless a global material is set.

This makes also __Use parent material__ work for `TileMap`s.

Closes #9996.
2017-08-15 23:41:23 +02:00
Ignacio Etcheverry
7fc3c51169 Merge pull request #10339 from bojidar-bg/x-fix-scale-conflict
Rename Light2D::scale to texture_scale, so it doesn't conflict
2017-08-14 22:16:39 +02:00