Commit graph

819 commits

Author SHA1 Message Date
Rodolfo Ribeiro Gomes
9742d0c323 Spatial::look_at() now preserves its scale values
It always normalized basis after look_at() computation.
Now it applies previous scale back, in order to avoid
distortions when global scale was different of (1,1,1).

fix #10003 and #19000
Related to #17924
2019-04-26 20:10:32 -03:00
Bastiaan Olij
1a1b35721a Send notifications to ARVRInterfaces 2019-04-27 08:39:21 +10:00
Aaron Franke
b659e1eb2b
Use approximate equallity methods in many places 2019-04-25 13:20:29 -04:00
Rémi Verschelde
778322161c
Merge pull request #28380 from kiidmale/fix-cpuparticles
Make multimesh invisible initially in CPUParticles
2019-04-25 09:00:46 +02:00
Daeil Kim
692205da33 Make multimesh invisible initially in CPUParticles
Fixes #28252
2019-04-24 16:52:49 +09:00
ShyRed
a9d4cde0f5 Allow adding disabled shapes
Adds the ability to directly add disabled shapes to a collision object. Before this commit a shape has always been assumed to be enabled and had to be disabled in an extra step.
2019-04-23 18:06:48 +02:00
Daniel Rakos
de33ef2d1b Disable GI probe capturing lights with bake mode disabled
The bake mode property of lights previously didn't affect GI probes.
This change makes the GI probe ignore lights that have their bake mode
set to disabled.
2019-04-23 11:36:36 +02:00
Hein-Pieter van Braam
bf7634b625
Merge pull request #25155 from Timofffee/Timofffee-patch-vehicle
Added check engine_traction
2019-04-23 06:28:26 +03:00
Hein-Pieter van Braam
5d33f241f0
Merge pull request #26064 from JFonS/add_frustum_camera_mode
Add FRUSTUM camera mode, allowing tilted frustums
2019-04-23 06:20:13 +03:00
Juan Linietsky
33a0011ab2 Added bindings for methods related to obtaining base an instance from VisualInstance 2019-04-22 19:27:30 -03:00
Rémi Verschelde
886afa9b76
Merge pull request #26868 from NilsIrl/master
Add Attenuation Model "NO" for AudioStreamPlayer3D
2019-04-22 13:36:07 +02:00
Rémi Verschelde
a342131eba
Merge pull request #27673 from qarmin/small_fixes
Small fixes, mostly duplicated code
2019-04-22 12:00:34 +02:00
Nils ANDRÉ-CHANG
a1fc73e6d3 Add Attenuation Model "DISABLED" for AudioStreamPlayer3D 2019-04-22 10:34:28 +01:00
Rémi Verschelde
33b69340ad
Merge pull request #27219 from raphael10241024/debug_fix
Fix collider debug shape didn't changes with collider size changes
2019-04-21 20:34:34 +02:00
Hugo Locurcio
35a0162167
Improve wording of various messages and make casing more consistent
This also adds the number of selected projects to the confirmation
dialog that appears before removing projects.
2019-04-21 14:37:14 +02:00
K. S. Ernest (iFire) Lee
48a03b514c Expose localize_rests to gdscript. 2019-04-16 11:38:13 -07:00
CatThingy
8166f8d3c8 Removed unnecessary error from _area_inout
The error was previously removed from _body_inout
for the same reason. Fixes #28022.
2019-04-15 09:19:30 -07:00
Juan Linietsky
ad1368a625 Clean up ASSIMP import code. 2019-04-13 15:19:47 -03:00
yakun.zhang
e5f531620e Fix collider debug shape didn't changes with collider size changes 2019-04-11 23:31:55 +08:00
Juan Linietsky
e33764744c Added generator audio stream, and spectrum analyzer audio effect
Made AudioFrame and Vector2 equivalent for casting.
Added ability to obtain the playback object from stream players.
Added ability to obtain effect instance from audio server.
2019-04-10 12:58:06 -03:00
Adam Sharp
c8d32ac29b Added a get_rpm() function to VehicleWheel 2019-04-09 23:49:37 +01:00
Rémi Verschelde
c8994b56f9 Style: Apply new changes from clang-format 8.0
It seems to stay compatible with formatting done by clang-format 6.0 and 7.0,
so contributors can keep using those versions for now (they will not undo those
changes).
2019-04-09 17:09:48 +02:00
qarmin
856a8226a5 Small fixes, mostly dupicated code 2019-04-08 11:03:37 +02:00
Rémi Verschelde
35f06eb437
Merge pull request #25630 from BastiaanOlij/arvr_positional_mesh
Added a mesh interface to the arvr positional trackers
2019-04-07 11:09:21 +02:00
Rémi Verschelde
3b697ce8d5
Merge pull request #26486 from marxin/fix-Wdeprecated-copy
Fix new GCC 9 warnings: -Wdeprecated-copy.
2019-04-06 18:21:18 +02:00
K. S. Ernest (iFire) Lee
e3ef7f214a Add Open Asset Import Library to Godot.
FBX support and MMD (pmx) support.

Normals, Albedo, Metallic, and Roughness through Arnold 5 Materials for Maya FBX.

Maya FBX Stingray PBS support.

Importing FBX static meshes work.

Importing FBX animations is a work in progress.

Supports FBX 4 bone influence animations.

Supports FBX blend shapes.

MMDs do not have an associated animation import yet.

Sponsored by IMVU Inc.
2019-04-05 07:17:52 -07:00
Rémi Verschelde
fc370b3feb Fix -Wimplicit-fallthrough warnings from GCC 8
Adds `FALLTHROUGH` macro to specify when a fallthrough is intentional.
Can be replaced by `[[fallthrough]]` if/when we switch to C++17.

The warning is now enabled by default for GCC on `extra` warnings level
(part of GCC's `-Wextra`). It's not enabled in Clang's `-Wextra` yet,
but we could enable it manually once we switch to C++11. There's no
equivalent feature in MSVC for now.

Fixes #26135.
2019-04-05 15:14:53 +02:00
Tomasz Chabora
fc8ad59af3 Make angular_damp of new Area nodes match the global default 2019-04-01 21:42:06 +02:00
Pedro J. Estébanez
e3fc5fb1db Fix Viewport and Camera issues
1. Consider 'own_world' as well as 'world' to stop propagating enter/exit world notifications.
2. Clean & fix handling of camera currency.

This fixes some random crashes and error logs in the editor; namely
- when enabling/disabling own world in a Viewport;
- when switching back from a subscene displayed into a main scene's Viewport;
- when exiting the editor after any of them;
- memory corruption (can that explain certain other seemingly unrelated crash reports?).

This also fixes situations where a Viewport and its main Camera get out of sync about which World is relevant to them.
2019-03-30 00:25:26 +01:00
Rémi Verschelde
64737c735b
Merge pull request #27200 from piyushdagar/new
Fixed CollisionObject signals do not trigger on Area
2019-03-27 17:09:02 +01:00
Daniel Rakos
6dd65c0d67 KinematicBody performance and quality improvements
With this change finally one can use compound collisions (like those created
by Gridmaps) without serious performance issues. The previous KinematicBody
code for Bullet was practically doing a whole bunch of unnecessary
calculations. Gridmaps with fairly large octant sizes (in my case 32) can get
up to 10000x speedup with this change (literally!). I expect the FPS demo to
get a fair speedup as well.

List of fixes and improvements:

- Fixed a general bug in move_and_slide that affects both GodotPhysics and
  Bullet, where ray shapes would be ignored unless the stop_on_slope parameter
  is disabled. Not sure where that came from, but looking at the 2D physics
  code it was obvious there's a difference.
- Enabled the dynamic AABB tree that Bullet uses to allow broadphase collision
  tests against individual shapes of compound shapes. This is crucial to get
  good performance with Gridmaps and in general improves the performance
  whenever a KinematicBody collides with compound collision shapes.
- Added code to the broadphase collision detection code used by the Bullet
  module for KinematicBodies to also do broadphase on the sub-shapes of
  compound collision shapes. This is possible thanks to the dynamic AABB
  tree that was previously disabled and it's the change that provides the
  biggest performance boost.
- Now broadphase test is only done once per KinematicBody in Bullet instead of
  once per each of its shapes which was completely unnecessary.
- Fixed the way how the ray separation results are populated in Bullet which
  was completely broken previously, overwriting previous results and similar
  non-sense.
- Fixed ray shapes for good now. Previously the margin set in the editor was
  not respected at all, and the KinematicBody code for ray separation was
  complete bogus, thus all previous attempts to fix it were mislead.
- Fixed an obvious bug also in GodotPhysics where an out-of-bounds index was
  used in the ray result array.

There are a whole set of other problems with the KinematicBody code of Bullet
which cost performance and may cause unexpected behavior, but those are not
addressed in this change (need to keep it "simple").

Not sure whether this fixes any outstanding Github issues but I wouldn't be
surprised.
2019-03-27 00:39:47 +01:00
Daeil Kim
24b7f08892 Ensure non-emitting particles not processed on entering tree
Also removed non-active CPUParticles(3d) from render list
Fixes #27066
2019-03-20 21:54:00 +09:00
piyushdagar
d7387e8a68 Fixed CollisionObject signals do not trigger on Area 2019-03-18 13:56:40 +05:30
JFonS
c13ac398f6 Fix resetting of CPUParticles (2D and 3D) 2019-03-10 00:33:08 +01:00
Rémi Verschelde
362b42787b
Merge pull request #26784 from humblers/fix-cpuparticles2d
Prevent invisible/inactive cpupparticles2d to redraw
2019-03-09 16:28:34 +01:00
Daeil Kim
1edc2134c9 Prevent invisible/inactive cpuparticles to redraw(3d) 2019-03-09 10:50:44 +09:00
Juan Linietsky
06dbeab5d4 No longer crash due to wrongly requesting a gizmo, fixes #26735 2019-03-07 09:26:49 -03:00
Juan Linietsky
9dd9737cb4 Warn about plane shape usage, closes #26503 2019-03-04 10:12:03 -03:00
Rémi Verschelde
4da21d1ce1
Merge pull request #26511 from clayjohn/giprobe_gles2_warning
Add warning to GIProbe when using GLES2
2019-03-04 09:40:20 +01:00
clayjohn
d566c5b75e add warning to GIProbe when using GLES2 2019-03-03 11:26:08 -08:00
Juan Linietsky
0b7f20c7ed Fixed missing exclude raycast shapes arguments in snap, closes #25230 2019-03-03 16:10:10 -03:00
Juan Linietsky
2f32a75d2e Skeletons can now choose between using local or world coords for processing, fixes #26468 2019-03-03 12:24:00 -03:00
Rémi Verschelde
88e0bed081
Merge pull request #26514 from clayjohn/hide_properties_gles2
Hide hdr and shadow_contact in gles2
2019-03-03 13:43:43 +01:00
clayjohn
95837049e8 hide hdr and shadow_contact in gles2 2019-03-02 19:01:26 -08:00
marxin
6be77da7eb Fix new GCC 9 warnings: -Wdeprecated-copy. 2019-03-02 14:37:02 +01:00
Juan Linietsky
b84b015225 Make query checks less agressive, fixes #24694 2019-03-02 08:48:47 -03:00
marxin
e5f665c718 Fix -Wsign-compare warnings.
I decided to modify code in a defensive way. Ideally functions
like size() or length() should return an unsigned type.
2019-02-27 07:45:57 +01:00
Juan Linietsky
3299045988 Remove setting that caused is_inside_tree() errors on doppler tracking enabled. 2019-02-26 09:16:23 -03:00
Juan Linietsky
bfa9be85d3 Remove copy and use instance material override in gizmos, fixes #23783 2019-02-23 20:20:54 -03:00
Juan Linietsky
9dfe3b6d9e Ensure move and slide snap respects stop on slope, fixes #26180 2019-02-23 10:24:21 -03:00
Juan Linietsky
4f697f73a5 Change MAX for MIN, fixes #26170 2019-02-22 21:19:31 -03:00
Juan Linietsky
edbf1d0ea4 Check that area is inside tree besides checking that queries are flushed, fixes #26148 2019-02-22 09:05:34 -03:00
marxin
7de7f0ef17 Fix all -Wtype-limits warnings. 2019-02-21 19:34:35 +01:00
marxin
8d51618949 Add -Wshadow=local to warnings and fix reported issues.
Fixes #25316.
2019-02-20 19:44:12 +01:00
JFonS
54b95b6c5a Add FRUSTUM camera mode, allowing tilted frustums
This new camera mode makes it easy to create tilted frustums for mirror
or portal effects.

This work was kindly sponsored by IMVU.
2019-02-19 17:48:08 +01:00
Rémi Verschelde
0fa3b80850
Merge pull request #26025 from clayjohn/particles_lifetime
Allowing setting particles lifetime greater than 600
2019-02-18 21:20:24 +01:00
clayjohn
0fec83bc92 allowing setting particles lifetime greater than 600 2019-02-18 10:46:41 -08:00
Marcelo Fernandez
b31e1b84fc Fix AudioStreams::stop possibly causing a small noise 2019-02-17 11:20:10 -03:00
Juan Linietsky
0cee7ab4c9 Change snapping to only happen when the floor normal remains as floor, fixes #22312 2019-02-16 15:50:31 -03:00
Juan Linietsky
ee464f56c4 Add a minimum treshold for acquiring rest contacts to avoid numerical precision issues. Fixes #25074 2019-02-16 13:45:01 -03:00
Juan Linietsky
c54330c6b0 Make sure stop on slope can have a tiny bit of precision edge. 2019-02-16 11:19:47 -03:00
Rémi Verschelde
5fc86026ca Fix typos with codespell
Using codespell 1.14.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
doubleclick
lod
nd
numer
que
te
unselect
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-02-13 09:23:29 +01:00
Rémi Verschelde
c5dcbeb160 Scene: Ensure classes match their header filename
Also drop some unused files.

Renamed:
- `scene/2d/navigation2d.h` -> `navigation_2d.h`
- `scene/2d/screen_button.h` -> `touch_screen_button.h`
- `scene/3d/scenario_fx.h` -> `world_environment.h`
- `scene/audio/audio_player.h` -> `audio_stream_player.h`
- `scene/resources/bit_mask.h` -> `bit_map.h`
- `scene/resources/color_ramp.h` -> `gradient.h`
- `scene/resources/shape_line_2d.h` -> `line_shape_2d.h`
- `scene/resources/scene_format_text.h` -> `resource_format_text.h`
- `scene/resources/sky_box.h` -> `sky.h`

Dropped:
- `scene/resources/bounds.h`
2019-02-12 17:21:48 +01:00
Rémi Verschelde
fb8dce3e2e
Merge pull request #25602 from mcccclean/dont-ignore-listener-nodes
Fix 3D Listener nodes not being used
2019-02-12 12:30:50 +01:00
Rémi Verschelde
034cd62a77 Warn when using GPU particles with GLES2
Closes #25733.
2019-02-09 20:49:58 +01:00
Tom McLean
8159ee93a7 Prefer a viewport's listener over a camera where available
Fix clang formatting issue
2019-02-06 21:43:57 +11:00
Bastiaan Olij
005fb62284 Added a mesh interface to the arvr positional trackers 2019-02-06 21:03:43 +11:00
Michael Alexsander Silva Dias
1e3e770073 Add frame support for Sprite3D with region enabled 2019-02-04 20:31:45 -02:00
Marc Gilleron
5b378f408c Exposed custom AABB setter on GeometryInstance 2019-02-01 12:01:19 +01:00
Yusuf
a7e6a31d7f binding for get_frustum() of camera class 2019-01-28 21:43:59 +03:00
Rémi Verschelde
63b487e49c Fix PhysicsBody ignoring set_friction/bounce with default value
The intent was to avoid creating a physics override to set a default value
that doesn't make a difference, but as #22406 shows it can be necessary to
set the default value *back* after an override was created to set a non-default
value.

Fixes #22406.
2019-01-24 12:15:54 +01:00
George Linkovsky
33a541727a
Added check engine_traction 2019-01-20 09:21:54 +04:00
Grant Clarke
d27ca7eb73 Fixed Bone Transform Order
The bone index being passed to the visual server is not using the process order and results in incorrect skin deformation if the calculated process order is different from the unordered bones Vector.

Incidentally, this never showed when I exported rigged characters from blender using the Better Collada exporter. This bug only materialised when experimenting with the glTF pipeline from Maya.
2019-01-18 22:26:13 +00:00
Juan Linietsky
1efd37f1b7 Fix uninitialized memory error. 2019-01-17 19:12:01 -03:00
Juan Linietsky
6d7dfa6df8 Avoid crashing GIProbe bake with broken UV data, closes #25028 2019-01-17 10:58:34 -03:00
Rémi Verschelde
a63bb3c804
Merge pull request #25038 from GlaDos28/master
fixed AudioStreamPlayer3D::_get_attenuation_db epsilon value
2019-01-17 10:39:08 +01:00
Rémi Verschelde
9f2d98c055
Merge pull request #24993 from YeldhamDev/cppcheck_warns_scene_fix
Appease some CppCheck warns for files in the "scene" directory
2019-01-17 10:28:32 +01:00
Evgeny Savelyev
fc086bc93d fixed AudioStreamPlayer3D::_get_attenuation_db epsilon value 2019-01-17 01:41:36 +03:00
Danilo Villa (Davi)
e74a3add9c Rename OrientedPathFollow to PathFollowOriented 2019-01-16 14:32:18 -02:00
Michael Alexsander Silva Dias
9c69d7f339 Appease some CppCheck warns for files in the "scene" directory 2019-01-16 12:59:18 -02:00
Timo Schwarzer
a1fbef3d60
Allow offset and unit_offset to be set higher than one loop
Fixes #24745
2019-01-03 17:32:20 +01:00
Rémi Verschelde
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Rémi Verschelde
ac46862097
Merge pull request #24506 from JFonS/expose_gizmos
Expose the new gizmo plugin system to scripting
2018-12-30 15:42:30 +01:00
JFonS
6b15b4f904 Expose the new gizmo plugin system to scripting 2018-12-21 23:56:39 +01:00
Rémi Verschelde
31aaff3b21
Merge pull request #24161 from aroncds/master
Fix properties update in remote transform
2018-12-14 13:34:46 +01:00
Rémi Verschelde
17c3c64a80 i18n: Sync translation template with current source
Also French translation update and misc fixes to source strings.
2018-12-13 14:47:24 +01:00
Bastiaan Olij
fa63a0fe83 Reverse bitangent on everythings to ensure default normal map behavriour is consistent 2018-12-08 13:43:46 +11:00
Aron Castro
7619a8a30d Fix properties update in remote transform 2018-12-04 15:22:58 -02:00
Gleb Mineev
f0379366dc #24131: fix for PathFollow offset slider overlapping with the inspector 2018-12-04 00:29:37 +01:00
Rémi Verschelde
0dd89a3d97
Merge pull request #24051 from Omicron666/patch-1
Fixes typo in source string sent to translation.
2018-12-03 17:34:49 +01:00
paul gruenbacher
66bfc29d06 remove_unused_get_frustum 2018-12-02 20:18:42 -05:00
Rémi Verschelde
cda28f5077
Merge pull request #24007 from JFonS/fix_cpuparticles_scale
Fix "scale" property collision in CPUParticles
2018-12-02 17:56:06 +01:00
JFonS
4ede92bdc8 Fix "scale" property collision in CPUParticles 2018-11-30 16:05:50 +01:00
Omicron
464e294c8f
Fixes typo in source string sent to translation.
no mesh has ~~not~~ been assigned
2018-11-29 13:12:09 +01:00
Juan Linietsky
5b8dde4b4a Removed error that should not be an error, fixes #21088 2018-11-28 18:41:29 -03:00
Aaron Franke
cb01268562 Fix many errors found by PVS-Studio
Fix errors 2, 3, 4, 6, 8, 9, 11, 12, 13, 14, and 15.
2018-11-28 05:03:24 -05:00
Rémi Verschelde
78cdbc54b0
Merge pull request #23994 from AndreaCatania/prec
Added function to control 6DOF precision
2018-11-28 10:30:47 +01:00
Andrea Catania
a395d809a5 Added function to control 6DOF precision 2018-11-27 07:11:28 +01:00
Florian Jung
0c4ffae40c Update ARVR{Anchor,Controller}'s configuration warning
Updates their config warning upon change of `controller_id`
or `anchor_id`, respectively.

fixes godotengine/godot#23881
2018-11-25 18:27:02 +01:00
Italo Vieira
a8a92ec114 Fixing wrong type hint on CPUParticles and CPUParticles2D's color ramp
Fixes #22795
2018-11-23 00:54:25 +01:00