8485b37515
Ported from godot4: Fix Navigation API abbreviations inconsistency
...
Schema for navigation to name user facing API with "navigation" without abbreviation and e.g. NavigationServer internals with abbr "nav".
- smix8
34e7628f5f
2023-09-04 17:09:39 +02:00
568b2541b8
Backported from godot4: Fix NavigationAgent3D debug path duplicated points
...
Fixes duplicated points in NavigationAgent3D debug path.
- smix8
0b8798a995
2023-09-04 16:35:59 +02:00
b4dbd26415
Backported from godot4: Expose NavigationAgent path postprocessing and pathfinding algorithm options
...
Exposes the path postprocessing and pathfinding algorithm options of the NavigationAgent internal NavigationPathQueryParameters object.
- smix8
6e324bb341
2023-09-03 10:12:41 +02:00
a516cf2e1b
Backported from godot4: Tweak NavigationAgent3D defaults
...
Tweaks default values for NavigationAgent3D to work better out of the box within a new 3D project.
- smix8
8be4af38e4
2023-09-03 09:43:32 +02:00
d2e7ced27b
Backported from godot4: Fix NavigationRegion3D debug mesh rendering twice in Editor
...
Fixes double rendering of NavigationRegion3D debug mesh due to both 3DGizmo and runtime debug rendering the mesh at the same time.
- smix8
0e4c31ce57
2023-09-03 08:45:25 +02:00
d5499c69ba
Backported from godot4: Fix crash in 'NavigationAgent3D', fixes #78910
...
- Scony
fcbb521392
2023-09-02 13:28:16 +02:00
d1d8f8505e
Backported from godot4: Strip name prefix of navigation agent debug properties in the inspector.
...
- timothyqiu
65223e98de
2023-09-02 12:56:02 +02:00
2dc300a0fc
Backported from godot4: Stops NavigationAgents moving to the world origin without anyone telling them to do so.
...
-smix8
860379fc16
2023-09-02 12:47:13 +02:00
eb8943a4f6
Backported from godot4: Add Path2D/3D debug options
...
- smix8
e12e239ab4
2023-09-02 11:38:01 +02:00
2c3c7dcc73
Fix threaded bake logic in NavigationPolygonInstance and NavigationMeshInstance.
2023-08-30 14:36:33 +02:00
87b91721da
Ported: Physics interpolation - Move out of Scenario
...
Move VisualServer interpolation data out of Scenario and into VisualServerScene, so the interpolation data and enabled status is now common to all Scenarios.
Fix physics interpolation in multithreaded mode by ensuring tick and pre-draw are called.
- lawnjelly
d2b1d29634
2023-08-27 17:25:38 +02:00
53d36345e6
Added back CSG support code I removed.
2023-07-11 12:23:46 +02:00
Maganty Rushyendra
97dee88433
Fix overwriting of Spatial's local transform
...
Modifies when 'DIRTY_LOCAL' flag is set to prevent a transform applied
using `set_transform` to be overwritten by previous calls to change the
node's rotation, translation or scale.
Fixes #43130 .
2023-06-28 12:23:08 +02:00
de1763d40d
Renamed neighbor_dist properties / getters / setters for the navigation server.
2023-06-12 08:37:57 +02:00
975e5c4a9e
Rethink the previous fix.
2023-06-11 18:32:15 +02:00
50c96d5414
Fix building with ptrcall on.
2023-06-11 18:02:58 +02:00
lawnjelly
22d90711da
Make acos and asin safe
...
A common bug with using acos and asin is that input outside -1 to 1 range will result in Nan output. This can occur due to floating point error in the input.
The standard solution is to provide safe_acos function with clamped input. For Godot it may make more sense to make the standard functions safe.
2023-06-11 08:41:42 +02:00
f058c87868
Backported from godot4: Rework Navigation Avoidance
...
Rework Navigation Avoidance.
- smix8
a6ac305f96
2023-06-10 20:58:49 +02:00
8b18898609
Backported from godot4: Rework const on NavigationServer methods
...
`const` is used on all methods, even when they cause modification of the server. This reworks the methods of the server to only use `const` on method that don't change the state of the server.
- DarkKilauea
a0715b30f9
2023-06-09 22:03:42 +02:00
6384b9624f
Ported from godot4: Make navigation mesh edge connections optional
...
Makes navigation mesh edge connections optional.
- smix8
f986b52b3c
2023-06-09 20:54:05 +02:00
81c392489a
Ported from godot4: Add NavigationLink helper functions for global positions
...
Adds helper functions to set the links start and end position with global positions or get them as global positions.
Adds global start and end position for the navigation link to the 'link_reached' signal of NavigationAgent. That signal gets emitted when a navigation link waypoint is reached. Requires that 'owner' meta data is enabled on the NavigationAgent.
- smix8
d87f124768
2023-06-09 20:00:28 +02:00
29784d5d5b
Ported from godot4: Enable assigning an owner to navigation regions and links
...
This allows users of the server APIs to get back the nodes that created certain regions and links.
- DarkKilauea
5769b0e8d8
2023-06-09 19:46:44 +02:00
160cb38a50
Ported from godot4: Add support for emitting a signal when entering a NavLink
...
- DarkKilauea
5d8ba2b2d1
2023-06-09 19:08:38 +02:00
e07fd6da59
Ported from godot4: Prevent unnecessary navigation map synchronizations
...
Prevents unnecessary navigation map synchronizations triggered by redundant calls to setters of e.g. region, link or map properties.
- smix8
7e1a261cc6
2023-06-09 16:43:14 +02:00
19fac49904
Turn PoolVectors in NavigationPathQueryResults into Vectors.
2023-06-09 16:27:24 +02:00
b2d8199a7b
Ported from godot4: Update NavigationAgent to use query_path
...
This paves the way for having agents respond to link traversal.
- DarkKilauea
a2c53b881b
2023-06-09 16:19:22 +02:00
12b95cdc1f
Ported from godot4: Add navigation layer bitmask helper functions
...
Adds helper functions to work with the navigation layer bitmask.
- smix8
55923ade68
2023-06-09 15:44:12 +02:00
268645ff0b
Ported from godot4: Add NavigationAgent Path Debug Visualization
...
Adds path debug visuals for NavigationAgent2D, NavigationAgent3D and NavigationServer.
- smix8
0ab764e84b
2023-06-09 14:17:54 +02:00
11c84049fa
Ported from godot4: Fix NavigationMesh debug visuals for non-triangulated meshes
...
Fixes NavigationMesh debug visuals for non-triangulated meshes.
- smix8
4490a3303b
2023-06-09 13:03:30 +02:00
c11500d480
Ported from godot4: Rename Navigation uses of 'location' to 'position'
...
Contrary to the entire rest of the engine NavigationAgent's and NavigationLinks decided to deal with locations instead of positions.
- smix8
bf1571979c
2023-06-09 10:28:31 +02:00
0438c3cc3f
Backported from godot4: Added node for Navigation links .
...
- DarkKilauea
3dd59013f4
2023-06-08 20:46:09 +02:00
09118cb939
Port small tweaks fot NavigationMeshInstance.
2023-06-06 10:14:15 +02:00
a1b23406a1
Rework NavigationMeshInstance as per the navigation mesh generators pr.
2023-06-06 09:35:59 +02:00
3c9d9bdad4
Ported from godot4: Fix NavigationRegion3D gizmo's odd visual behavior .
...
- DarkKilauea
92c40bcf32
2023-06-05 19:02:24 +02:00
25078b1437
Ported from godot4: Remove / Replace old Navigation Debug Visualization
...
- removes / replaces leftovers from old navigation debug code
- cleanes SceneTree and ProjectSettings from old navigation debug
- smix8
d7f75fab60
2023-06-05 18:56:41 +02:00
b6de23ac8a
Fix non tools build.
2023-06-05 18:21:45 +02:00
68b9f4c90e
Ported from godot4: Add more detailed Navigation Debug Visualization
...
- Adds more customization options to ProjectSettings.
- Displays navregion edge connections and navigation polygon edges in editor and at runtime.
- Majority of debug code moved from SceneTree to NavigationServer.
- Removes the irritating debug MeshInstance child node from NavigationRegion3D and replaces it with direct RenderingServer API.
- smix8
c394ea518e
2023-06-05 18:05:15 +02:00
8cbb1bb879
Started porting pull request from godot 4: Rework NavigationMeshGenerator
...
Reworks NavigationMeshGenerator and navigation mesh parse and bake process. Adds navigation mesh baking for 2D.
- smix8
https://github.com/godotengine/godot/pull/70724
38699a8259
2023-06-03 18:22:12 +02:00
smix8
90f81c0013
Add error messages for collision exception functions
...
Adds error messages to collision exception functions when used with the wrong object/node instead of failing silently.
2023-03-12 14:24:56 +01:00
stmSi
9b65e9df6a
Fix Editor hanging if audiostream's pitch_scale is NaN
2023-03-12 14:14:29 +01:00
1f20512f8c
Ported: Improve error messages and classref for occluders and portals
...
Misused functions would previously produce no error messages which was confusing for users.
- lawnjelly
5a0cb54b3a
2023-02-07 02:28:29 +01:00
Haoyu Qiu
dc27330752
Make CollisionShape selection box use shape AABB
2023-01-16 14:19:35 +01:00
Hugo Locurcio
04338a5018
Tweak particles animation offset property hint to allow more precise values
2023-01-16 13:47:55 +01:00
2cd4e4d828
Renamed Set to RBSet.
2023-01-15 19:42:08 +01:00
1b0aac6028
Renamed Map to RBMap.
2023-01-15 19:12:50 +01:00
213f393293
Fix typos with codespell.
2022-12-22 19:51:25 +01:00
b8009c85f4
Ported: Add vector value linking - KoBeWi and timothyqiu
...
9499ebecee
2022-12-22 18:50:17 +01:00
Haoyu Qiu
1d2a560819
Make NavigationAgent target_location
a property
2022-12-22 14:42:05 +01:00
smix8
9225e78f68
Fix Navigation agent callback wild pointer crash
...
Fixes crash in sanitizer builds when callback agent or object are already freed.
(cherry picked from commit 194c1c44e0a20faa4463e3a41bb12cf93a71fc03)
2022-12-22 14:12:00 +01:00
Wilson E. Alvarez
f95c511c7a
Do not fire VisibilityNotifier screen_entered and screen_exited signals in the Editor
2022-12-22 13:54:25 +01:00
bruvzg
0c95c634bb
Fix auto-translation and ignore control chars.
2022-12-11 19:14:14 +01:00
Hugo Locurcio
cbcd6bad4a
Improve collision exception error messages for easier understanding
2022-11-30 14:37:35 +01:00
kleonc
d7ddaf619a
Add ShapeCast2D/3D::get_collider_rid
method
2022-11-13 00:50:18 +01:00
Haoyu Qiu
177d20aeef
Remove leading spaces from enumerator name hints
2022-11-13 00:26:34 +01:00
9beaa6b80c
Fix cpuparticles 3d.
2022-10-08 18:04:15 +02:00
Haoyu Qiu
30a24e864f
Fix NavigationObstacle not estimating radius
2022-10-08 17:04:48 +02:00
Haoyu Qiu
dbd2b16a35
Fix NavigationObstacle not registering to default navigation map
2022-10-08 17:04:14 +02:00
kobewi
903c9932e5
Don't store frame of playing AnimatedSprite
2022-10-08 16:33:38 +02:00
lawnjelly
cd68b6e1e2
CPUParticles initialize data on set_amount
...
Fills particle data with zeroes on resize using set_amount(), to prevent garbage data including Nans being sent to VisualServer, which can corrupt the spatial partitioning.
2022-10-08 16:13:50 +02:00
kleonc
4da6c31ba9
SpriteBase3D
Fix drawing AtlasTextures with vertical margins differently than in 2D
2022-10-08 16:09:18 +02:00
92af14b0b0
Ported: Move duplicated drawing code from Sprite3D/AnimatedSprite3D to SpriteBase3D
...
- kleonc
0bf2b8e813
2022-10-08 16:08:49 +02:00
93eb41c69e
Ported: added options for sorting transparent objects
...
- QbieShay, akien-mga, clayjohn
acdcbefa4e
2022-09-17 10:54:57 +02:00
lawnjelly
0859d5b60f
Portals - Show RayCast debug helper
...
Switches the raycast helper to global portal_mode, allowing it to show when portals are active.
2022-09-17 00:06:15 +02:00
b6dc768e74
Fix build.
2022-09-16 19:47:02 +02:00
Marcin Nowak
a697c239b8
Backport panning strength parameters from 4.0
2022-09-16 19:44:55 +02:00
66f2357d01
Now Cameras use Worlds directly instead of Viewports.
2022-08-30 14:08:27 +02:00
786e20b159
Work on fixing the remaining issues / error messages with World overrides.
2022-08-30 12:28:05 +02:00
4303dfb5c0
More work on World override support.
2022-08-29 22:55:48 +02:00
b886d14cf5
Added _3d postfix to the end of the World3D related getters and setters in Viewport.
2022-08-29 17:54:41 +02:00
24a1580dbf
Renamed the files aswell.
2022-08-29 17:33:10 +02:00
e4ae7f2ebc
Renamed Environment to Environment3D, and WorldEnvironment to WorldEnvironment3D.
2022-08-29 17:21:40 +02:00
2aee6ab0bb
Renamed World to World3D.
2022-08-29 16:49:00 +02:00
e558e0f700
Fix build when the new skeleton 3d module is disabled.
2022-08-28 16:01:50 +02:00
dc28777321
Moved Skeleton and it's related classes to a module.
2022-08-28 15:46:12 +02:00
a21352637e
Fix infinite loop when reparenting bones in the bone editor. Also fixed issues with bones sometimes returning incorrect children.
2022-08-19 23:46:14 +02:00
e2d42db711
Also renamed the files.
2022-08-19 21:24:36 +02:00
cffe742085
Renamed the VisualServer to RenderringServer like in Godot4, as I think it's a lot better name for it. I did not yet rename the files.
2022-08-19 20:50:20 +02:00
0438da9841
Ported: [3.x] Add ShapeCast and ShapeCast2D nodes - PrecisionRender
...
47a62e28ac
2022-08-19 03:12:32 +02:00
45c65911b5
Ported: Allow negative scale in Particles and CPUParticles
...
This can be used to make 2D particles look more 3D-y with thoughtful use
of scale curve animation.
- Calinou
c4a3560884
2022-08-19 02:42:33 +02:00
9757c39f05
Moved a few more core classes.
2022-08-17 17:43:49 +02:00
686663d3e4
Moved around more classes in core.
2022-08-17 16:01:01 +02:00
04feb63860
Moved Engine and projectSettings.
2022-08-17 15:35:28 +02:00
dc9cc716c7
Moved Object related classes under core/object.
2022-08-17 13:45:14 +02:00
388b88678e
Moved container related classes in core under a new containers directory.
2022-08-17 12:53:49 +02:00
e71e3ed897
Now Vector4, Vector4i, Projection, PoolVector4Array, PoolVector4iArray, are built in variant types. Also reordered the Variant's Type enum, renamed _RID in it to RID, fixed a few smaller issues and removed some very old compat code.
2022-08-16 21:55:56 +02:00
8c2e76840c
Removed CameraMatrix, and switched to Projection.
2022-08-16 10:26:35 +02:00
5cd44e02d0
Backported the improvements to Transform from Godot4.
2022-08-14 20:35:11 +02:00
170a41ca82
Backported improvements to Basis from Godot4. Also bound all eligible methods.
2022-08-14 00:18:21 +02:00
d9e094ab9a
Renamed elements in Basis to rows.
2022-08-13 19:07:59 +02:00
730bce8587
Renamed Quat to Quaternion for consistency with the other engine math classes.
2022-08-13 15:22:33 +02:00
4b939998a7
Removed AnimationTreePlayer, as it was deprecated (and also practically unusable).
2022-08-11 23:01:27 +02:00
dc3500ec17
Fixed BoneAttachments.
2022-08-11 22:32:32 +02:00
502f8f85c5
Fix infinite recursion issues in Skeleton.
2022-08-11 22:32:25 +02:00
9d9271b518
Removed the SNAME macro, I'll probably keep static counting support for StringNames though.
2022-08-11 20:22:51 +02:00
5e3c3ff4d0
Ported from Godot4: Implement global rest - TokageItLab
...
4d4ffa3a2c
2022-08-11 20:10:26 +02:00
da62c587e8
Ported from Godot4: get rid set_bone_pose and fix some function in SkeletonEditor - TokageItLab
...
8e9897b6de
2022-08-11 19:57:23 +02:00
36b5334282
Ported from Godot4: Fix for SkeletonModification3Ds to work with the new bone pose changes, fixed global_pose_to_local_pose function
...
- TwistedTwigleg
0cedc04769
2022-08-11 19:09:58 +02:00
109a0ca81b
Ported from Godot4: Remove REST transform influence in skeleton bones
...
* Animations and Skeletons are now pose-only.
* Rest transform is kept as reference (when it exists) and for IK
* Improves 3D model compatibility (non uniform transforms will properly work, as well as all animations coming from Autodesk products).
- reduz
2dc823273e
2022-08-11 19:06:33 +02:00
92600420ba
Backported from Godot4: Implemented SkeletonEditorGizmo.
...
-TokageItLab, lyuma
f2e9867e9f
- It still has some issues, as this one works differently than the 3.x version, they will be fixed later.
2022-08-11 17:31:02 +02:00
58539a22b6
Backported from Godot4: Node3D gizmo improvements
...
* Clean-up of node_3d_editor_plugin.{h,cpp}: removed unused code, fixed some bugs.
* Moved node_3d_editor_gizmos.{h,cpp} to editor/plugins.
* Added support for multiple gizmos per node. This means custom gizmos will no longer override the built-in ones and that multiple gizmos can be used in more complex nodes.
* Added support for handle IDs. When adding handles to a gizmo, an ID can be specified for each one, making it easier to work with gizmos that have a variable number of handles.
* Added support for subgizmos, selectable elements that can be transformed without needing a node of their own. By overriding _subgizmo_intersect_frustum() and/or _subgizmo_intersect_ray() gizmos can define which subgizmos should be selected on a region or click selection. Subgizmo transformations are applied using get/set/commit virtual methods, similar to how handles work.
- JFonS
cfb555a081
- Note: MeshDataResourceEditor is now kind of painful to use, it will be fixed a bit later.
2022-08-11 01:24:29 +02:00