Age | Commit message (Collapse) | Author |
|
Improved uniformity of RandomPCG::randf.
|
|
|
|
Added move_toward functions for float, Vector2 and Vector3
|
|
|
|
Optimize Basis constructor for Axis Angle
|
|
Can be used via scripting as `Geometry.triangulate_delaunay_2d(points)`
The interface is the same as in `Triangulate` library, returning indices
into triangulated points.
|
|
Clipper 6.4.2 is used internally to perform polypaths clipping, as well
as inflating/deflating polypaths. The following methods were added:
```
Geometry.merge_polygons_2d(poly_a, poly_b) # union
Geometry.clip_polygons_2d(poly_a, poly_b) # difference
Geometry.intersect_polygons_2d(poly_a, poly_b) # intersection
Geometry.exclude_polygons_2d(poly_a, poly_b) # xor
Geometry.clip_polyline_with_polygon_2d(poly_a, poly_b)
Geometry.intersect_polyline_with_polygon_2d(poly_a, poly_b)
Geometry.offset_polygon_2d(polygon, delta) # inflate/deflate
Geometry.offset_polyline_2d(polyline, delta) # returns polygons
// This one helps to implement CSG-like behaviour:
Geometry.transform_points_2d(points, transform)
```
All the methods return an array of polygons/polylines. The resulting
polygons could possibly be holes which could be checked with
`Geometry.is_polygon_clockwise()` which was exposed to scripting as well.
|
|
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
```
|
|
Improve the performance of AStar
|
|
|
|
|
|
|
|
Small fixes to static analyzer bugs
|
|
In GDScript, rename "decimals" to "step_decimals". In C#, add "StepDecimals", but keep the old functionality in a method called "DecimalCount".
|
|
Add missing methods to Rect2i
|
|
|
|
|
|
Add FRUSTUM camera mode, allowing tilted frustums
|
|
This adds support for groups in the import system, which point to a single file.
Add property hint for saving files in file field
|
|
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.
|
|
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).
|
|
Added functions to AStar for disable/enable points to effectivly create obstacles
|
|
Added method to retrieve a direction vector from one point to another
|
|
Added smoothstep built-in function
|
|
|
|
|
|
Added gaussian distribution function to RNG
|
|
Fix new GCC 9 warnings: -Wdeprecated-copy.
|
|
Fixes Geometry.segment_intersects_circle working only one way.
|
|
|
|
|
|
Properly setup seed in RNG
|
|
Safer encode/decode variant.
|
|
|
|
Network peers get_var/put_var
File get_var/store_var
GDScript/Mono/VisualScript bytes2var/var2bytes
Add MultiplayerAPI.allow_object_decoding member which deprecates PacketPeer.allow_object_decoding.
Break ABI compatibaility (API compatibility for GDNative).
|
|
|
|
Replace inline with _FORCE_INLINE_ in short methods.
Remove unused and redundant method no_area() as we already have has_no_area().
Add grow_individual() grow_margin() and expand() to Rect2i.
|
|
When generating single precision floats, Godot casts a uint32_t to float,
causing uniformity loss.
This new randf, inspired by T. R. Campbell's random_real, samples the output
of rand as the fraction part of an infinite binary number, with some tricks
to reduce ops and branching. This method provides "good enough" uniformity at
decent speed, for floats greater than 2^-64. Smaller numbers are floored to 0.
|
|
|
|
Fix parameterised macros in core. Addresses #25488
|
|
Fixes #26769.
|
|
|
|
|
|
for #24003
|
|
|
|
Taken from three.js's implementation. Tested with a wide variety of
meshes.
|
|
|
|
Changed math class error reporting to be a bit less paranoid.
|
|
|
|
`wrapi()` and `wrapf()` will now return the value of
the `min` parameter if the range is equal to zero.
|