Commit Graph

599 Commits

Author SHA1 Message Date
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
Bojidar Marinov 4b0990bf8d
Rename Light2D::scale to texture_scale, so it doesn't conflict 2017-08-14 18:53:42 +03:00
Rémi Verschelde 9575dbdf78 Merge pull request #10298 from nhold/kinematic-body-2d-_move-fixes-#10107
Fix missing and incorrect values in return value of _move method
2017-08-13 17:26:59 +02:00