Age | Commit message (Collapse) | Author |
|
|
|
[Net] Refactor RPCs, remove RSETs
|
|
This PR and commit adds a new IK system for 2D with the Skeleton2D node
that adds several new IK solvers, a way to control bones in a Skeleton2D
node similar to that in Skeleton3D. It also adds additional changes
and functionality.
This work was sponsored by GSoC 2020 and TwistedTwigleg.
Full list of changes:
* Adds a SkeletonModifier2D resource
* This resource is the base where all IK code is written and executed
* Has a function for clamping angles, since it is so commonly used
* Modifiers are unique when duplicated so it works with instancing
* Adds a SkeletonModifierStack2D resource
* This resource manages a series of SkeletonModification2Ds
* This is what the Skeleton2D directly interfaces with to make IK possible
* Adds SkeletonModifier2D resources for LookAt, CCDIK, FABRIK, Jiggle, and TwoBoneIK
* Each modification is in its own file
* There is also a SkeletonModifier2D resource that acts as a stack for using multiple stacks together
* Adds a PhysicalBone2D node
* Works similar to the PhysicalBone3D node, but uses a RigidBody2D node
* Changes to Skeleton2D listed below:
* Skeleton2D now holds a single SkeletonModificationStack2D for IK
* Skeleton2D now has a local_pose_override, which overrides the Bone2D position similar to how the overrides work in Skeleton3D
* Changes to Bone2D listed below:
* The default_length property has been changed to length. Length is the length of the bone to its child bone node
* New bone_angle property, which is the angle the bone has to its first child bone node
* Bone2D caches its transform when not modified by IK for IK interpolation purposes
* Bone2D draws its own editor gizmo, though this is stated to change in the future
* Changes to CanvasItemEditor listed below:
* Bone2D gizmo drawing code removed
* The 2D IK code is removed. Now Bone2D is the only bone system for 2D
* Transform2D now has a looking_at function for rotating to face a position
* Two new node notifications: NOTIFICATION_EDITOR_PRE_SAVE and NOTIFICATION_EDITOR_POST_SAVE
* These notifications only are called in the editor right before and after saving a scene
* Needed for not saving the IK position when executing IK in the editor
* Documentation for all the changes listed above.
|
|
In this PR:
- Removed rset
- rpc_config can now optionally configure transfer mode
(reliable/unreliable/ordered) and channel (channels are not actually
implemented yet.)
- Refactor how the RPC id is computed to minimize the logic in Node and
scripts that now only needs a single `get_rpc_methods` function.
|
|
|
|
Previously, the warnings were passed as a string and delimitation of which were hard coded at each implementation.
|
|
|
|
|
|
And fix various bogus bindings following previous PRs.
|
|
The code to copy node properties to the new node never worked, so there is no reason to keep the useless bits in there
|
|
|
|
|
|
CanvasItem, Theme and modified controls documentation.
|
|
See #43689.
Also 'fixed' some spelling for behavior in publicly visible strings.
(Sorry en_GB, en_CA, en_AU, and more... Silicon Valley won the tech spelling
war.)
|
|
Includes:
* MarginContainer
* NavigationPolygon
* Node
* NodePath
* OS
* PackedByteArray
* PackedScene
* PacketPeerUDP
* PCKPacker
* Performance
* PhysicsShapeQueryParameters2D
* PhysicsShapeQueryParameters3D
* PrimitiveMesh
* ProjectSettings
Co-authored-by: Aaron Franke <arnfranke@yahoo.com>
|
|
|
|
|
|
|
|
Made get_child support negative indexes
|
|
|
|
This makes them display in a nicer way in the editor help.
(The title will display instead of the full URL.)
|
|
Mention performance caveats about `find_node()` and `find_parent()`
|
|
See https://github.com/godotengine/godot-proposals/issues/1303.
|
|
|
|
- Makes all boolean setters/getters consistent.
- Fixes bug where `glow_hdr_bleed_scale` was not used.
- Split CameraEffects to their own source file.
- Reorder all Environment method and properties declarations,
definitions and bindings to be consistent with each other
and with the order of property bindings.
- Bind missing enum values added with SDFGI.
- Remove unused SDFGI enhance_ssr boolean.
- Sync doc changes after SDFGI merge and other misc changes.
|
|
This closes #39489.
|
|
Fixes: #19642
|
|
|
|
Improve shortcut formatting in docs
|
|
`Type[]` typed arrays will link to `Type`, as it's likely the most
interesting information for the user.
And sync classref with current source.
|
|
|
|
|
|
|
|
Minor fix in Node class documentation
|
|
This closes https://github.com/godotengine/godot-docs/issues/2730.
|
|
The name of the property responsible for physics fps is fixed:
this is `Engine.iterations_per_second`, not `Engine.target_fps`.
|
|
|
|
Due to the port to Vulkan and complete redesign of the rendering backend,
the `drivers/gles3` code is no longer usable in this state and is not
planned to be ported to the new architecture.
The GLES2 backend is kept (while still disabled and non-working) as it
will eventually be ported to serve as the low-end renderer for Godot 4.0.
Some GLES3 features might be selectively ported to the updated GLES2
backend if there's a need for them, and extensions we can use for that.
So long, OpenGL driver bugs!
|
|
|
|
We already removed it from the online docs with #35132.
Currently it can only be "Built-In Types" (Variant types) or "Core"
(everything else), which is of limited use.
We might also want to consider dropping it from `ClassDB` altogether
in Godot 4.0.
|
|
- Add some missing descriptions.
- Add links to tutorials for ARVR and AnimationTree.
- Style fixes.
- Engine changes:
* Make `AnimationNodeTransition.input_<number>` properties internal
so that they don't appear in the docs. They still appear in the
inspector based on the actual number of inputs requested.
* Drop unimplemented `CPUParticles.flatness`. It's only used for 3D
particles in `ParticlesMaterial`, and thus only relevant for
`CPUParticles3D`.
|
|
Resolves #34739.
|
|
This closes #34531.
|
|
|
|
|
|
Clarify get_node vs get_node_or_null.
|
|
This closes #33660.
|
|
This method can be used to generate custom node warnings by script.
Node::_get_configuration_warning was already exposed to generate custom warnings, but it wasn't fully usable without being able to notify the scene tree when the warning needs to appear or change.
|
|
Notify for app pause and resume events on Android
|
|
resumed on Android devices.
|