Commit graph

1082 commits

Author SHA1 Message Date
SIYU FU
d80e979a48 Update Camera.project_position to not return get_global_transform().origin if projection mode is orthogonal 2020-01-02 17:54:41 +01:00
Александр Растриженков
d8dbcbe066 Fix wrong disconnect in callback in VisibilityNotifier 3D 2020-01-02 15:09:26 +01:00
Rémi Verschelde
c0ece451e3
Merge pull request #34720 from Calinou/light-gizmo-color-by-light
Tint 3D light gizmos using the light's color
2020-01-02 13:59:10 +01:00
Rémi Verschelde
3e649f8cba
Merge pull request #34665 from timothyqiu/camera-fov
Clamps fov/size for Camera gizmo
2020-01-01 11:37:28 +01:00
Rémi Verschelde
a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Hugo Locurcio
ac18665c88
Tint 3D light gizmos using the light's color
This makes navigation more convenient in the 3D viewport, especially
when using the unshaded display mode.
2020-01-01 00:54:25 +01:00
Haoyu Qiu
cbb8930813 Clamps fov/size for Camera gizmo 2019-12-29 11:39:04 +08:00
Rémi Verschelde
8938577459 i18n: Sync translations with Weblate + update template
Also fix a few stray clang-format formatting errors that passed
through CI unnoticed.
2019-12-22 13:27:02 +01:00
Hugo Locurcio
0a5b30b14a
Add a range property hint for the number of contacts reported
This closes #34505.
2019-12-21 22:27:10 +01:00
Juan Linietsky
21dec856f2 Use an internal skin unless one is supplied by user, fixes #32766
Even though this fixes the issue, the broken Skin resource in the inherited scene mesh will remain, it needs to be erased manually.
2019-12-16 13:00:30 -03:00
Rémi Verschelde
abab4c0e25
Merge pull request #34300 from Acvarium/ragdoll-impuls
Added apply_impulse methods to PhysicalBone for ragdolls
2019-12-14 17:13:09 +01:00
Vitalii Shmorhun
d3b162a9d4 Added apply_central_impulse to PhysicalBone class 2019-12-12 13:12:02 +02:00
jitspoe
2c894f3426 Fix for collision polygon not working at all on exported builds.
(cherry picked from commit a169e1406de77c3abfe670217f18bcf2c1468bae)
2019-12-12 00:13:44 -05:00
Rémi Verschelde
2845e6a21a
Merge pull request #34040 from qarmin/unused_variable_more_precise_numbers
Removed unused variables, add some constants numbers
2019-12-10 08:25:31 +01:00
Rafał Mikrut
ed1c4bc77d Removed unused variables, add some constants numbers 2019-12-10 05:13:02 +01:00
Marcel Admiraal
750f343e4a Ensure move_and_slide() is consistent between the 2D and 3D versions.
In the 3D version:
- Partially revert #20908 that was reverted in the 2D version as part
  of #21653. This ensures that the Vector returned is always perpendicular
  to the surface collided with; and not the floor_normal Vector passed to
  the function when on a floor.
- Include an update of the floor velocity before multiplying by the time
  delta, which was added to the 2D version as part of commit 13a8014.

In the 2D version:
- Use the Vector2.slide() function instead of Vector2.tangent() to adjust
  the amount of motion the stop_on_slope undoes to ensure that it is in the
  right direction. This is a implementation of the 3D approach from #30588.
- Combine the !found_collision and motion == Vector2() checks for break.
- Other minor formating changes to make the functions look identical.

Also renamed some variables to align with their use.
2019-12-02 08:35:50 +01:00
PouleyKetchoupp
fdd99d4a7c Properly remove joint when a physical bone is removed from the scene
It was triggering a warning in bullet followed with a crash in some cases.
WARNING: assert_no_constraints: A body with a joints is destroyed. Please check the implementation in order to destroy the joint before the body.
     At: modules/bullet/rigid_body_bullet.cpp:465
2019-12-01 18:30:59 +01:00
Rémi Verschelde
06fd6e6945
Merge pull request #34019 from nekomatata/inspector-transform-update
Update transform property in the inspector when changing translation/rotation/scale
2019-12-01 11:43:04 +01:00
PouleyKetchoupp
b44e0d60c7 Update transform property in the inspector when changing translation/rotation/scale 2019-11-30 17:16:19 +01:00
Tomasz Chabora
9276684e95 Port Path2D changes to 3D 2019-11-30 12:43:34 +01:00
PtrMan
8695135691 GIProbe::bake: Remove check for ownership
Fixes #28508.
2019-11-21 08:48:56 +01:00
Rémi Verschelde
6c557b8bdf Camera: Don't set default value for project_position
A z_depth of 0 returns the camera position, which is not really useful.
This also makes the API breakage from 3.1 clearer as 3.1 code will now
fail to compile, so users will have to adapt and use the new parameter.

For the reference, in 3.1, the z_depth was hardcoded to the near plane.

Closes #33493.
2019-11-10 00:17:26 +01:00
PouleyKetchoupp
530665197f Fixed Particles restart after visibility has been set to off and on again
Make sure particles are processed during the same frame when visibility is set to on, in case they are still active from before and need to be restarted.

Fixed #33476
2019-11-09 09:51:17 +01:00
Rémi Verschelde
d596e169dc
Merge pull request #30588 from Demiu/patch-1
Fix 3D move_and_slide with stop_on_slope
2019-11-07 15:11:53 +01:00
Rémi Verschelde
83d393a71a
Merge pull request #33209 from Jummit/soft-body-tutorial
Link SoftBody tutorial in docs
2019-11-01 14:04:50 +01:00
Jummit
ce61bff759 link SoftBody tutorial in docs and add ray_pickable property 2019-11-01 08:51:25 +01:00
Mikolaj Kaczmarek
a245bab78d Fixed disconnecting not connected signal 2019-10-29 00:53:48 +01:00
Rémi Verschelde
63c5cd7eb8
Merge pull request #33104 from qarmin/fix_some_crashes
Fix some crashes and using null pointers
2019-10-28 08:37:59 +01:00
Rafał Mikrut
e53e1c566a Fix some crashes and using null pointers 2019-10-28 08:07:29 +01:00
PouleyKetchoupp
1e0f37a70f Fixed emitting not initialized correctly in cpu particles 2d/3d
Fixes uninitialized variable caused by PR #32921
2019-10-24 21:38:01 +02:00
Tomasz Chabora
6c0ef9f729 Auto-increment frame_coords when keying 2019-10-22 20:12:55 +02:00
Rémi Verschelde
17a7da3b85
Merge pull request #32921 from nekomatata/fix-cpu-particle-delay
Fixed delay when CPUParticles & CPUParticles2D start being emitted
2019-10-22 14:28:04 +02:00
Rémi Verschelde
4a726998bd
Merge pull request #32865 from rodolforg/fix_32711-lookat-scaling-again
Spatial::look_at wrong re-scaling
2019-10-21 16:05:21 +02:00
PouleyKetchoupp
5bf516a062 Fixed delay when CPUParticles & CPUParticles2D start being emitted
Particles were processed only on the next frame after the emission started, causing a one frame delay in rendering. Now the first process cycle is started during the same frame, which makes them consistent with Particles & Particles2D.

Fixes #32890
2019-10-20 09:50:00 +02:00
jfons
298bd3f88a Add option to create navmesh from objects in group
Adds a new NavigationMesh property to select which objects will be taken
into account for the generation.

By default it will use all the NavigationMeshInstance children to keep
compatibility. The new modes allow to build the NavigationMesh from
all the nodes belonging to a specific group, and optionally include
their children too.
2019-10-16 12:01:10 +02:00
qarmin
616ab4fac2 Small fixes to redundand code, copy paste bugs 2019-10-14 11:40:55 +02:00
Gilles Roudiere
b27ec4aea7 Fixes Sprite frame_coords 2019-10-13 08:44:44 +02:00
Rodolfo Ribeiro Gomes
58e5c650d7 fix #32711 : Spatial::look_at wrong re-scaling 2019-10-11 02:22:02 -03:00
Hugo Locurcio
aba157865a
Add missing semicolons to BIND_ENUM_CONSTANT macro uses 2019-10-02 09:57:12 +02:00
Rémi Verschelde
34404a4c95
Merge pull request #32380 from fire/skin_registration
Update when the skeleton skin is changed.
2019-09-27 21:51:35 +02:00
K. S. Ernest Lee
ea76f4805b Update when the skeleton skin is changed. 2019-09-26 19:44:51 -07:00
K. S. Ernest (iFIre) Lee
0b48f53905 Restore bone_custom_pose in skeletons 2019-09-26 04:06:47 -07:00
Rémi Verschelde
dec10dd776
Merge pull request #32051 from qarmin/some_error_explanation
Added some obvious errors explanations
2019-09-25 11:51:54 +02:00
qarmin
17732fe698 Added some obvious errors explanations 2019-09-25 10:28:50 +02:00
Rémi Verschelde
0c3335d1f3
Merge pull request #32309 from clayjohn/particles_tex_scale
Fix particles scale randomization
2019-09-24 18:05:44 +02:00
clayjohn
bc94203add fix particles scale randomization 2019-09-24 08:03:53 -07:00
Rémi Verschelde
0ea54eeb06
Merge pull request #30497 from Calinou/editor-gizmos-change-notify
Notify changes in properties that can be edited by 3D gizmos
2019-09-23 22:22:49 +02:00
Rémi Verschelde
159470df08
Merge pull request #32275 from godotengine/skin_support
Added skin support and simplified APIs to override bone position + glTF 2.0 import fixes
2019-09-23 15:02:15 +02:00
luz.paz
91ecd7b6a6 Fix misc. source comment typos
Found using `codespell -q 3 -S ./thirdparty,*.po -L ang,ba,cas,dof,doubleclick,fave,hist,leapyear,lod,nd,numer,ois,paket,seeked,sinc,switchs,te,uint -D ~/Projects/codespell/codespell_lib/data/dictionary.txt `
2019-09-19 14:36:52 -04:00
Juan Linietsky
d81ddaf33e Added skin support and simplified APIs to override bone position. 2019-09-18 19:46:32 -03:00
Rémi Verschelde
720065c721
Merge pull request #31476 from SoulForMachine/fix-move-and-slide-error
Prevent move_and_slide() to generate an error.
2019-09-03 12:51:42 +02:00
Michael Alexsander Silva Dias
c902066bb5 Remove some unneeded checks in CollisionObject(2D) 2019-08-30 14:22:46 -03:00
Rémi Verschelde
9762372329
Merge pull request #30635 from KoBeWi/billbo_3dns
Add a Billboard property for Sprite3D
2019-08-29 13:06:37 +02:00
Tomasz Chabora
b055ade1c3 Add a Billboard property for Sprite3D 2019-08-28 23:00:44 +02:00
Robin Hübner
4817595c0e
fix otherwise unitialized variables, found in #31694 2019-08-27 17:13:08 +02:00
Milan Davidovic
c12ce2b4dd Prevent move_and_slide() to generate an error.
When moving KinematicBody2D from one scene to another and not freeing
the old scene, the first call to move_and_slide() in the new scene will
generate an error because KinematicBody2D keeps internaly a
RID on_floor_body of a body resource in the old scene which no more has
a space assigned.

To fix this, on_floor_body is set to empty RID in response to
NOTIFICATION_ENTER_TREE notification of KinematicBody2D and
KinematicBody. Also all other data related to move_and_slide() is reset:
floor, ceiling, wall flags, colliders vector, floor_velocity.

This fixes #31416.
2019-08-26 15:10:15 +02:00
Rémi Verschelde
bfed4b6a97
Merge pull request #31014 from DavidSichma/kinematic_angle
Fix floor_max_angle comparison for impossible angles
2019-08-23 09:10:38 +02:00
Hugo Locurcio
a350fd4a57
Draw 3D collision shape/raycast gizmos in grayscale when disabled
This makes them easier to distinguish from their enabled counterparts,
as is already done in the 2D editor.
2019-08-21 15:32:51 +02:00
IAmActuallyCthulhu
82b9557803
Remove redundant author doc comments 2019-08-12 04:26:38 -05:00
Tomasz Chabora
af5e0fff66 Remove ERR_EXPLAIN from scene/* code 2019-08-09 13:54:52 +02:00
qarmin
e0b5b21863 Add some code changes/fixes proposed by Coverity and Clang Tidy 2019-08-07 12:54:30 +02:00
David Sichma
2fae8832c5 Fix floor_max_angle comparison for impossible angles 2019-08-01 12:54:19 +02:00
Hugo Locurcio
0243dc53b8
Tweak Area and PhysicsBody damping setting hints for consistency
This partially addresses #19182.
2019-07-31 13:57:13 +02:00
groud
11cb4eb363 Add frame_cords accessors to Sprite and Sprite3D 2019-07-27 13:05:02 +02:00
Michael Alexsander Silva Dias
4ff360b73b Fix wrong placement of new line in 'PhysicsBody' warning 2019-07-25 11:53:54 -03:00
Rémi Verschelde
ffc8fb9c48
Merge pull request #30685 from jonri/vehicle-per-wheel-forces
Vehicle per-wheel forces
2019-07-25 11:45:22 +02:00
Rémi Verschelde
336846e547 Inspector: Fix PROPERTY_HINT_SPRITE_FRAME not behaving as RANGE
This was a regression in 3.1 and later from the new inspector, where
PROPERTY_HINT_SPRITE_FRAME was not fully re-implemented. It's meant to
be a normal PROPERTY_HINT_RANGE which also automatically increments its
value when keyed in the animation player.

To avoid code duplication, I made the frames properties use the actual
PROPERTY_HINT_RANGE and introduced a PROPERTY_USAGE_KEYING_INCREMENTS
usage flag instead.
2019-07-25 09:29:51 +02:00
Rémi Verschelde
66d09a6b4c SCons: Fix uses of [].append instead of env.add_source_files()
Also added support for SCons project-absolute paths (starting with #) and
warning about duplicates in add_source_files(), and fixed
default_controller_mappings.gen.cpp being included twice after first build
due to *.cpp globbing.

Part of #30270.
2019-07-22 15:08:32 +02:00
Rémi Verschelde
9d6b6dbd2f
Merge pull request #30234 from zwostein/fix-AudioStreamPlayer3D
Fixed multichannel panning for AudioStreamPlayer3D.
2019-07-20 12:42:34 +02:00
Rémi Verschelde
d15cf7b672
Merge pull request #30576 from qarmin/lgtm_coverage
Changed some code reported by LGTM and Coverity
2019-07-20 12:00:13 +02:00
qarmin
6cbaf7662f Changed some code showed in LGTM and Coverage 2019-07-20 08:09:57 +02:00
Jon Ring
18103f2b89 Add per-wheel throttle, brake, and steering for vehicles 2019-07-18 14:16:28 -04:00
Hugo Locurcio
ce8a54b634
Lower the default directional shadow maximum distance to 100
With the default camera node settings, this makes directional shadows
look consistent between the editor and the running project.

The original issue occurs because the editor camera defaults to a
Z-far value of 500, whereas the Camera node defaults to a Z-far
value of 100. Since the directional shadow maximum distance is clamped
to the Z-far value, it caused the running project's effective shadow
distance to be lower compared to the editor (100 instead of 200).

This partially addresses #13575.
2019-07-17 20:01:40 +02:00
Rémi Verschelde
df62bfdd49
Merge pull request #30548 from Calinou/tweak-audio-cutoff-property-hints
Tweak audio cutoff property hints to allow reasonable values only
2019-07-16 08:54:25 +02:00
Demiu
fead4e369a
Change p_stop_on_slope in 3D move_and_slide_with_snap 2019-07-15 14:09:29 +02:00
clayjohn
5ef3374258 added individual particle random lifetime 2019-07-14 23:22:40 -07:00
Demiu
81f62d68c2
Fix KinematicBody::move_and_slide 2019-07-15 01:59:18 +02:00
Hugo Locurcio
9387114ce1
Tweak audio cutoff property hints to allow reasonable values only
This also makes all cutoff property hints consistent.

This closes #29588.
2019-07-12 22:44:17 +02:00
Hugo Locurcio
696a8fb657
Notify changes in properties that can be edited by 3D gizmos
This makes the Inspector always display an up-to-date value
after editing properties using 3D gizmos.
2019-07-10 20:07:48 +02:00
Rémi Verschelde
b489e75716
Merge pull request #30304 from DavidSichma/remote_cache
Exposed update_cache() of RemoteTransform and RemoteTransform2D
2019-07-09 22:08:59 +02:00
David Sichma
5a631bf4f4 Added force_update_cache() to RemoteTransform and RemoteTransform2D 2019-07-09 14:50:03 +02:00
Rémi Verschelde
24c462b974
Merge pull request #30443 from Calinou/improve-node-configuration-warnings
Improve the node configuration warning display
2019-07-09 08:31:20 +02:00
Rémi Verschelde
675b9cb4c2
Merge pull request #30404 from Calinou/add-spotlight-configuration-warning
Add a configuration warning when using ultrawide SpotLight with shadows
2019-07-09 08:28:47 +02:00
Hugo Locurcio
cdd41d446f
Add a configuration warning when using ultrawide SpotLight with shadows
This partially addresses #12028.
2019-07-09 00:20:46 +02:00
Hugo Locurcio
ff7184c5cb
Improve the node configuration warning display
- Refer to properties explicitly when possible
- When multiple warnings are returned, always separate them by one
  blank line to make them easier to distinguish
- Improve grammar and formatting
2019-07-09 00:18:00 +02:00
Rémi Verschelde
af80182016
Merge pull request #30407 from qarmin/small_fixess
Fixes minor issues found by static analyzer
2019-07-08 08:16:50 +02:00
qarmin
9a77d748c0 Fixes minor issues found by static analyzer 2019-07-07 23:08:51 +02:00
Rémi Verschelde
1fa26b969c
Merge pull request #30357 from simonpuchert/spheres
Particles / CPUParticles: Return uniform density spheres.
2019-07-07 11:04:46 +02:00
Ibrahn Sahir
4e4697b1c4 Added release function to PoolVector::Access.
For clarity, assign-to-release idiom for PoolVector::Read/Write
replaced with a function call.
Existing uses replaced (or removed if already handled by scope)
2019-07-06 12:04:27 +01:00
Simon Puchert
18ba1bc824 cpu_particles: Return uniform density spheres.
The current implementation normalizes points from a uniform distribution
on a cube. This creates a non-uniform distribution on the sphere.
2019-07-06 00:13:03 +02:00
Rémi Verschelde
f5f7244a2b
Merge pull request #29988 from NathanWarden/lightmap_hint_size
Added a fallback size to the lightmap baker in case mesh lightmap hint sizes are 0,0
2019-07-03 08:30:26 +02:00
Nathan Warden
09737ef6a7 Updated lightmap baker to dynamically calculate lightmap sizes based on surface area. 2019-07-02 20:54:16 -05:00
Bojidar Marinov
f7dad789e9
Fix various memory leaks and errors 2019-07-02 17:23:54 +03:00
Rémi Verschelde
c08877777d
Merge pull request #26613 from KoBeWi/direction_of_particles
Add a Direction property to ParticlesMaterial
2019-07-02 11:33:34 +02:00
zwostein
f34269e51c Fixed multichannel panning for AudioStreamPlayer3D. 2019-07-02 08:40:15 +02:00
Rémi Verschelde
6b30f284a0
Merge pull request #29980 from Dentrax/directed-by-qarmin
Fix some editor crashes
2019-07-01 14:59:29 +02:00
Rémi Verschelde
b0ce9401ff
Merge pull request #30126 from qarmin/remove_unnecessary_code
Remove unnecessary code and add some error explanations
2019-07-01 14:32:04 +02:00
Furkan Türkal
7d8d337b2c fix some crashes 2019-07-01 14:28:29 +03:00
qarmin
3c154eb93b Remove unnecessary code and add some error explanations 2019-07-01 12:59:42 +02:00
Rémi Verschelde
52355c638b
Merge pull request #29380 from bojidar-bg/16086-docs-default-value
Add default values to the editor help, docs, and generated RST
2019-06-29 12:28:30 +02:00
Rémi Verschelde
0636f709af
Merge pull request #29937 from clayjohn/particles-one-shot-bug
Update emitting status on one-shot particles
2019-06-27 17:29:40 +02:00
Bojidar Marinov
0c4c36d823
Add default values to the editor help, docs, and generated RST
Also, make spacing of "=" in the editor help a bit more consistent.
Closes #16086
2019-06-27 18:29:35 +03:00
Rémi Verschelde
86ed7a9884 doc: Complete and harmonize all _MAX constant descriptions 2019-06-27 11:10:53 +02:00
Rémi Verschelde
eaaff9da31
Merge pull request #29941 from qarmin/redundant_code_and_others
Remove redundant code, possible NULL pointers and others
2019-06-27 01:05:18 +02:00
Tomasz Chabora
00b15c19b7 Add a Direction property to ParticlesMaterial 2019-06-26 20:37:39 +02:00
qarmin
4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
clayjohn
d59dbda24f update emitting status on one-shot particles 2019-06-25 22:07:29 -07:00
Rémi Verschelde
29cddef895
Merge pull request #29940 from jonri/fix-vehicle-contact
Prevent VehicleBody contact damping from exceeding the baseline value…
2019-06-24 22:58:46 +02:00
Rémi Verschelde
908a50739a
Merge pull request #30031 from qarmin/prevent_setting_bad_index_enums
Set to enum variables, only correct values
2019-06-24 18:34:23 +02:00
qarmin
33c15799c7 Set to enum variables, only correct values 2019-06-24 14:53:26 +02:00
Rémi Verschelde
25022a1d89
Merge pull request #29974 from clayjohn/particles_restart
Properly set emitting when particles restart
2019-06-24 13:48:56 +02:00
clayjohn
64ecc8a5a3 properly set emitting when particles restart 2019-06-21 22:33:11 -07:00
Rémi Verschelde
b3fe249e94 CPUParticles: Set linear velocity to 0, like GPU Particles 2019-06-21 15:23:48 +02:00
Rémi Verschelde
fae3df1204 Particles: Properly initialize angular velocity parameter
Right now it would take garbage values when loading scenes,
which could end up written to the scene file.
2019-06-21 15:23:10 +02:00
JohnJLight
38d3bfe971 Made use of semicolons more consitent, fixed formatting 2019-06-19 15:24:31 +02:00
Rémi Verschelde
30cbe28677
Merge pull request #27310 from KoBeWi/angular_dank
Make angular_damp of new Area nodes match the global default
2019-06-19 15:00:44 +02:00
Jon Ring
b2d433c4a8 Prevent VehicleBody contact damping from exceeding the baseline value when roll influence is very small.
When contact damping exceeds 1.0, the wheels will lose grip when the vehicle is not moving.
2019-06-18 17:40:49 -04:00
Hugo Locurcio
c0b3e20ca7
Tweak some editor property hints to be more flexible and consistent
This partially addresses #19242.
2019-06-16 23:52:16 +02:00
Rémi Verschelde
9d3342545d
Merge pull request #29700 from clayjohn/cpuparticles_transform_bug
Fix CPU particles bug with local_coords and transform
2019-06-16 10:49:30 +02:00
clayjohn
52696e98b4 fix CPU particles bug with local_coords and transform 2019-06-14 13:22:19 -07:00
Rémi Verschelde
0b555fc70a
Merge pull request #29782 from JFonS/expose_camera_clip_offset
Expose ClippedCamera clip_offset
2019-06-14 18:31:47 +02:00
jfons
30b3591152 Expose ClippedCamera clip_offset 2019-06-14 17:39:13 +02:00
Rémi Verschelde
52dd0f8751 Implement missing orbit velocity for CPUParticles and CPUParticles2D
The relevant code was copied from (GPU) ParticlesMaterial but commented
out initially, and never ported.

Closes #29580.
2019-06-13 11:35:07 +02:00
Rémi Verschelde
5688cb40b2
Merge pull request #29589 from kbajno/master
Add in missing 'FLAG_DRAW_NEXT_FRAME_IF_VISIBLE' to Flag enun
2019-06-12 12:52:47 +02:00
Rémi Verschelde
f160c81f68
Merge pull request #29696 from akien-mga/cpuparticles-randomness
CPUParticles: Do randomness ratio computations in phase instead of time
2019-06-12 10:54:02 +02:00
Rémi Verschelde
fd66a45f32
Merge pull request #29685 from akien-mga/cpuparticles-tangential-accel
CPUParticles: Fix inconsistent tangential acceleration
2019-06-12 10:53:31 +02:00
Rémi Verschelde
d0c2005da1 CPUParticles: Do randomness ratio computations in phase instead of time
The original shader code uses a phase (ratio from 0 to 1 for the particle
lifetime) for the randomness ratio computations, and this code was ported
over but converted to time computations.

The seeding/cycle logic was thus invalid, so we're going back to phase
for these computations, thus fixing the previous non-working time/emission
randomness property.

Part of #29692. Follow-up to #26859.
2019-06-11 23:40:56 +02:00
Rémi Verschelde
4043c8a8c9
Merge pull request #29678 from akien-mga/err-macros-semicolon
Fix error macro calls not ending with semicolon
2019-06-11 19:01:26 +02:00
Rémi Verschelde
9206bcabaa CPUParticles: Fix inconsistent tangential acceleration
The tangential acceleration for both CPUParticles2D and CPUParticles had been
badly converted from their GPU counterpart (ParticlesMaterial).
This fixes it and ensures that both GPU and CPU particles behave the same with
regard to tangential acceleration.
2019-06-11 18:56:07 +02:00
Rémi Verschelde
6d16f2f053 Fix error macro calls not ending with semicolon
It's not necessary, but the vast majority of calls of error macros
do have an ending semicolon, so it's best to be consistent.
Most WARN_DEPRECATED calls did *not* have a semicolon, but there's
no reason for them to be treated differently.
2019-06-11 14:49:34 +02:00
kbajno
c90fb3ec6c Add in missing 'FLAG_DRAW_NEXT_FRAME_IF_VISIBLE' to Flag enun 2019-06-07 15:21:07 -07:00
qarmin
3de3f87657 Fix ARVRAnchor and ARVRController error spam 2019-06-06 14:33:04 +02:00
Rémi Verschelde
77880d1b4d
Merge pull request #29299 from creikey/master
Check if parent is null before updating transform
2019-05-31 09:51:05 +02:00
Rémi Verschelde
62b868fd37
Merge pull request #26942 from RandomShaper/fix-vp-issues
Fix Viewport and Camera issues
2019-05-30 18:31:15 +02:00
Cameron Reikes
9f29c28918 Check if parent is null before updating trasnform
- parent being null means it's not a CollisionObject
2019-05-29 16:09:52 -07:00
Rémi Verschelde
e9ca1a1299
Merge pull request #25520 from Zylann/expose_node_custom_aabb
Exposed custom AABB setter on GeometryInstance
2019-05-29 17:18:17 +02:00
Rémi Verschelde
bbb1af91d8
Merge pull request #29251 from qarmin/some_uninitialised_values_fixes
Fix some unintialised variables
2019-05-28 22:29:02 +02:00
Rémi Verschelde
0e441e9a1a
Merge pull request #29248 from Cheeseness/camera_project_fix
Add a depth parameter to Camera::project_position()
2019-05-28 19:25:37 +02:00
qarmin
66a36ba474 Fix some unincialised variables 2019-05-28 19:12:19 +02:00
Cheeseness
6fe957de63 Add a depth parameter to Camera::project_position() 2019-05-29 02:04:50 +10:00
Rémi Verschelde
b546591d1b
Merge pull request #27875 from Thource/vehicle_wheel-get_rpm
Added a get_rpm() function to VehicleWheel
2019-05-28 12:06:09 +02:00
Rémi Verschelde
4c77332e32
Merge pull request #29118 from JFonS/improve_navmesh_generation
Various improvements to NavigationMesh generation
2019-05-27 17:27:14 +02:00
Jummit
ce2c45bde7 add get_camera_rid method 2019-05-27 16:05:27 +02:00
Hugo Locurcio
33fd5538d0
Tweak the particle animation node configuration warning message 2019-05-25 19:59:17 +02:00
Rémi Verschelde
7c73a741f3
Merge pull request #29125 from rodolforg/fix_spatial_look_at_affecting_scale
fix un-scaling in Spatial::look_at_from_position
2019-05-23 17:01:40 +02:00
Rodolfo Ribeiro Gomes
48e4d62554 fix un-scaling in Spatial::look_at_from_position
As mentioned in
https://github.com/godotengine/godot/pull/26897#issuecomment-491178089

the look-at scaling issue solved by PR #26897 happens also in another
look-at method.

Spatial::look_at_from_position() also does not have same input checking
Spatial::look_at() has. Therefore, I fixed it too at same time.
2019-05-23 09:49:50 -03:00
jfons
1add4c15ab Various improvements to NavigationMesh generation
* Expose EditorNavigationMeshGenerator as an engine singleton so users
  can generate navmesehes from `tool` scripts.

* Add support for generating navmeshes from static colliders. All
  collision shapes are supported except for Plane (since Plane is an
  infinite collider and navmeshes need to have finite geometry).

* When using static colliders as a geometry source, a layer mask can be
  specified to ignore certain colliders.

* Don't rely on global transform. It still should give the exact same
  results but allows for building navmeshes on nodes that are not in the
  tree (useful in `tool` scripts).

* Update navigation gizmos after every new bake.

This work has been kindly sponsored by IMVU.
2019-05-23 08:37:58 +02:00
Rémi Verschelde
e0574e1d98 Fix typos with codespell
Using codespell 1.15.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
doubleclick
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-05-19 13:10:35 +02:00
Rémi Verschelde
647021e864
Merge pull request #28326 from BastiaanOlij/center_heightmap
Center shape according to logic Bullet applies
2019-05-13 12:58:00 +02:00
Bojidar Marinov
68bee3d9a2
Allow or_greater for most properties of NavMesh
Closes #28624
2019-05-10 18:05:17 +03:00
JFonS
9e97bac0cf Fixes to ClippedCamera
This work has been kindly sponsored by IMVU.
2019-05-10 10:35:15 +02:00
Bastiaan Olij
e4dea0595a Add transform support to deal with Bullets centering of shapes 2019-05-07 22:43:10 +10:00
yakun.zhang
2206c5e9c0 fix CollisonShape changing shape cause crash when not in a tree 2019-05-05 13:30:58 +08:00
Rémi Verschelde
913620a9b8
Merge pull request #28640 from bojidar-bg/17885-navmesh-entry-broken
Fix navmesh not finding optimal paths
2019-05-03 12:20:39 +02:00
Bojidar Marinov
f1b7b74d65
Fix navmesh not finding optimal paths
Addresses part of #17885
2019-05-03 11:13:03 +03:00
Rémi Verschelde
262924296b
Merge pull request #27415 from aqnuep/kinematicbody_fixes
KinematicBody performance and quality improvements
2019-05-02 18:03:58 +02:00
Rémi Verschelde
dd2cd06165
Merge pull request #25670 from aqnuep/bake_mode_affect_gi_prove
Disable GI probe capturing lights with bake mode disabled
2019-04-30 18:33:34 +02:00
Rémi Verschelde
712b789dc8
Merge pull request #26897 from rodolforg/fix_spatial_look_at_affecting_scale
Spatial::look_at() now preserves its scale values
2019-04-30 12:09:45 +02:00
Rémi Verschelde
0327d57cfd
Merge pull request #27007 from BastiaanOlij/arvr_notifications
Send notifications to ARVRInterfaces
2019-04-30 12:05:46 +02:00
Rémi Verschelde
f40c62fa29
Merge pull request #27371 from ShyRed/fixdisabled2dcollisions
Allow adding disabled shapes
2019-04-30 11:43:11 +02:00
Rémi Verschelde
36d4f86ed9
Merge pull request #27707 from Calinou/tweak-message-wording
Improve wording of various messages and make casing more consistent
2019-04-30 11:10:36 +02:00
Rémi Verschelde
18e88c8563
Merge pull request #18992 from aaronfranke/mono-equal-approx
[Core] [Mono] Improve and use approximate equality methods
2019-04-29 10:16:46 +02:00
Juan Linietsky
60eec47077
Revert "Fix AudioStreams::stop possibly causing a small noise" 2019-04-27 12:17:54 -03:00
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