Age | Commit message (Collapse) | Author |
|
|
|
Core: fix possible memory leaks.
|
|
|
|
Made slide and reflect active verbs acting on itself in Vector2 and V…
|
|
DLScript module
|
|
This module was written by bojidar-bg and me, with the help of ClikCode and touilleMan.
This adds a module to Godot that enables the use of dynamic libraries as a source for scripts.
That also allows third party libraries to be linked to Godot more easily and without creating modules.
For a readme see https://github.com/GodotNativeTools/godot_headers/blob/master/README.md
|
|
This is in alignment with other functions in vector classes.
Also added checks for normalization, fixed the sign of reflect (which now corresponds to reflection along a plane mathematically), added bounce method and updated docs.
Fixes #8201.
|
|
|
|
Added ability to change A-star cost function
|
|
|
|
|
|
When performing polar decomposition in 2D as B = R.S, where R is rotation (with determinant +1) and S is scaling, use the convention that reflections are absorbed into S through a reflection around y axis.
In 3D, this is done by using a reflection along all three axes, but since the dimensionality is even in 2D, one axis needs to be chosen.
Fixes Matrix32::get_rotation and Matrix32::get_scale (which weren't properly fixed in #7445).
|
|
Input: Refactor JOY_* constants.
|
|
Use atan2 rather than acos in Vector3.angle_to.
|
|
Explicitly documented that Transform.basis is not necessarily an orth…
|
|
Implement warped mouse panning for 2D & 3D editors
|
|
Suppress error messages when using ConfigFile::get_value and a default is given
|
|
Update ENet to use Godot sockets.
|
|
From https://github.com/lucasdemarchi/codespell
|
|
**Breaking change**
Removed the `JOY_SNES_*` and `JOY_SEGA_*` constants. Imho there's no reason for a modern game engine to provide button aliases for decades-old hardware.
Also renamed `JOY_ANALOG_{0,1}_{X,Y}` to `JOY_ANALOG_{L,R}{X,Y}` and removed `JOY_ANALOG_2_*`.
|
|
Fixes #8111.
|
|
- Add blocking mode option to PacketPeerUDP.
- put_packet returns ERR_UNAVAILABLE when operation would block.
- ENet module uses non-blocking UDP.
|
|
matrix.
Also added a check that in axis-angle rotations, axis is a normalized vector, and modified the docs accordingly.
Fixes #8113.
|
|
Enabled by default as in Blender, but can be disabled separately for 2D & 3D;
the core functionality is in Input so this could be reused or even exposed to scripts in the future
|
|
Fixes #8097
|
|
When using get_tree().input_event(ev), the engine will JUST send the event down the SceneTree.
However, you won't get any of the benefits of the Input singleton:
- No InputMap actions will be emitted
- The internal input state won't be modified, so methods like `Input.get_mouse_pos()` or `Input.is_joy_button_pressed` won't return the expected output after sending the event.
This is fixed by using `Input.parse_input_event(ev)` instead.
I guess we'll also have to update the docs to reflect that this is the preferred method of sending custom InputEvents.
|
|
fixes #7960
|
|
I can show you the code
Pretty, with proper whitespace
Tell me, coder, now when did
You last write readable code?
I can open your eyes
Make you see your bad indent
Force you to respect the style
The core devs agreed upon
A whole new world
A new fantastic code format
A de facto standard
With some sugar
Enforced with clang-format
A whole new world
A dazzling style we all dreamed of
And when we read it through
It's crystal clear
That now we're in a whole new world of code
|
|
Also prevent formatting of thirdparty snippet
|
|
|
|
Added PowerState casting operator to Variant
|
|
|
|
Without it Godot does not build with PTRCALL_ENABLED
|
|
Expose uncapped versions of closest-point-to-segment utilities
|
|
|
|
Done:
- X11, server (tested)
- Windows (developed, would be nice to retest)
- OSX (not tested)
Prepared (not developed):
- Android (code is here, but may not compile)
- iphone
- winrt
- bb10
- haiku
- javascript
|
|
Expose Geometry::get_closest_point_to_segment_2d()
|
|
|
|
Implement single-field property change for multinode edit
|
|
|
|
added join to PoolStringArray
|
|
|
|
|
|
Bunch of missing `else` statements and general logic
|
|
|
|
- Add FIXME tags comments to some unfixed potential bugs
- Remove some checks (always false: unsigned never < 0)
- Fix some if statements based on reviews.
- Bunch of missing `else` statements
|
|
Fix zero padding formatting
|
|
modified files)
-.pck and .zip exporting redone, seems to be working..
|
|
|
|
This fixes HashMap where a key or part of a key is a floating point
number. To fix this the following has been done:
* HashMap now takes an extra template argument Comparator. This class
gets used to compare keys. The default Comperator now works correctly
for common types and floating point numbets.
* Variant implements ::hash_compare() now. This function implements
nan-safe comparison for all types with components that contain floating
point numbers.
* Variant now has a VariantComparator which uses Variant::hash_compare()
safely compare floating point components of variant's types.
* The hash functions for floating point numbers will now normalize NaN
values so that all floating point numbers that are NaN hash to the same
value.
C++ module writers that want to use HashMap internally in their modules
can now also safeguard against this crash by defining their on
Comperator class that safely compares their types.
GDScript users, or writers of modules that don't use HashMap internally
in their modules don't need to do anything.
This fixes #7354 and fixes #6947.
|