summaryrefslogtreecommitdiff
path: root/core/math
AgeCommit message (Collapse)Author
2022-11-24Refactor Curve3D::_bake() methodYaohua Xiong
The main change is to caculate tangent directly from bezier curve, without going through discretized polyline, avoiding pitfalls of discretization. Other changes are: 1. Add an bezier_derivative() method for Vector3, Vector2, and Math; 2. Add an tesselate_even_length() method to Curve3D, which tesselate bezier curve to even length segments adaptively; 3. Cache the tangent vectors in baked_tangent_vector_cache;
2022-11-18Static analysis: remove "break" after "return"Andy Maloney
Changes as requested to keep in sync with godotengine/godot-cpp#929
2022-11-14Fix periods in editor strings and messagesHugo Locurcio
- Ensure all strings with ellipsis end with 3 periods instead of 2. - Fix extraneous period in "Error calling from signal '...' to callable" messages.
2022-11-02Allow getting Quaternion rotation in different Euler ordersAaron Franke
2022-11-02Merge pull request #66747 from aaronfranke/move-euler-orderRémi Verschelde
Move EulerOrder enum to math_defs.h and global scope
2022-11-02Move EulerOrder enum to math_defs.h and global scopeAaron Franke
2022-11-02Style: Misc docs and comment style and language fixesRémi Verschelde
- Removed empty paragraphs in XML. - Consistently use bold style for "Example:", on a new line. - Fix usage of `[code]` when hyperlinks could be used (`[member]`, `[constant]`). - Fix invalid usage of backticks for inline code in BBCode. - Fix some American/British English spelling inconsistencies. - Other minor fixes spotted along the way, including typo fixes with codespell. - Don't specify `@GlobalScope` for `enum` and `constant`.
2022-11-01Replace Quaternion Euler constructor with `from_euler` methodAaron Franke
2022-10-13Merge pull request #67057 from Anutrix/rng-generator-default-seedRémi Verschelde
2022-10-13Optimize Convex CollisionJuan Linietsky
Implements the Gauss Mapping optimization to SAT convex collision test. * Described [here](https://ubm-twvideo01.s3.amazonaws.com/o1/vault/gdc2013/slides/822403Gregorius_Dirk_TheSeparatingAxisTest.pdf) by Dirk Gregorius. * Requires adding of face information to edges in MeshData * Took the chance to convert MeshData to LocalVector for performance.
2022-10-08Randomize RandomNumberGenerator instances' default seedAnutrix
2022-10-08Add `is_finite` method for checking built-in typesHaoyu Qiu
2022-10-07Use float literals for float calculations in ColorAaron Franke
2022-10-07Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg
change warnings=all to use /W4.
2022-10-05Enhancements to includes in core data structuresAaron Franke
2022-10-04Rename Projection `matrix` to `columns`Aaron Franke
2022-10-03Merge pull request #66655 from MisterMX/feat/astargrid2d-vector2iRémi Verschelde
refactor(AStarGrid2D): Return `Vector2i` in `get_id_path`
2022-10-03Merge pull request #66133 from aaronfranke/set-allRémi Verschelde
Delete `set_all`, `set_axis`, and `get_axis` methods from Vector2/3/3i/4/4i
2022-09-30refactor(AStarGrid2D): Return Vector2i in get_id_pathMisterMX
Signed-off-by: MisterMX <mbxd12@web.de>
2022-09-29Use `constexpr` in the conditions with template parameters and `sizeof`s to ↵bruvzg
suppress C4127 warnings.
2022-09-28Merge pull request #66544 from lawnjelly/bvh_tree_sibling_warningRémi Verschelde
Fix false flag compiler warning in bvh tree
2022-09-28Fix false flag compiler warning in bvh treelawnjelly
Compiler wrongly warns that sibling_id may be used when uninitialized. This PR sets the value to silence the warning.
2022-09-26Merge pull request #66435 from akien-mga/style-header-guards-cleanupRémi Verschelde
Cleanup header guards for consistency
2022-09-26Style: Cleanup header guards for consistencyRémi Verschelde
Fix file names for {Static,Lightmap}RaycasterEmbree.
2022-09-26Fix processing of some types in `math_fieldwise.cpp/fieldwise_assign`Yuri Rubinsky
2022-09-22Fix array-bounds warning in BVHlawnjelly
Provides a workaround to prevent tripping a compiler warning.
2022-09-21Style: Ensure consistent formatting with clang-format 15Rémi Verschelde
When going from version 14 to 15 it would introduce a tiny change in `websocket_macros.h` just before the comment re-enabling clang-format, but this can be solved by just letting it do its work. Bonus cosmetic change in `math_fieldwise.cpp` where clang-format isn't used, and bump recommended versions for pre-commit hook to [13; 15].
2022-09-19Define AXIS_COUNT in all vector typesAaron Franke
2022-09-19Remove set_all methods from Vector2/3/4Aaron Franke
2022-09-19Remove set_axis and get_axis methods from Vector2/2i/3/3i/4/4iAaron Franke
2022-09-19Spacing changes in math_funcs.hAaron Franke
2022-09-14Test, refactor and fix a bug in Basis.get_axis_anglefabriceci
2022-09-12Fix incorrect heuristic order in `AStarGrid2D`Yuri Rubinsky
2022-09-06Merge pull request #64417 from aaronfranke/has-spaceRémi Verschelde
Replace AABB/Rect2/Rect2i has_no_* methods with has_* methods
2022-09-06Rename `range_lerp` to `remap`Micky
2022-09-04Replace Rect2(i) has_no_area with has_areaAaron Franke
2022-09-04Replace AABB has_no_volume with has_volumeAaron Franke
Also replace has_no_surface with has_surface
2022-09-04Minor fixes to Vector4Aaron Franke
2022-09-02Add `is_zero_approx` methods to `Vector2`, `3`, and `4`Jonathan Nicholl
2022-09-01Replace Vector2(i) with Size2(i) for methods returning a sizeJohan Aires Rastén
2022-09-01Merge pull request #55617 from madmiraal/fix-55384Rémi Verschelde
2022-09-01Merge pull request #65124 from zhehangd/fix_basisRémi Verschelde
2022-08-31Basis constructor: row vectors -> column vectorsZhehang Ding
2022-08-31Discontinued spherical_interpolate_with in Transform3DSilc Renew
2022-08-30Implement `AStarGrid2D` class with jump-point pathfindingYuri Rubinsky
2022-08-30Fix Geometry3D::get_closest_points_between_segments() returns NaNMarcel Admiraal
Also fix: - Geometry3D::get_closest_distance_between_segments() returning incorrect values. - Test for Geometry3D::get_closest_distance_between_segments() testing for an incorrect value.
2022-08-27Add linear/cubic angle interpolation to Animation interpolation typeSilc Renew
2022-08-26Rename `str2var` to `str_to_var` and similarMicky
Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too. - `var2str` -> `var_to_str` - `str2var` -> `str_to_var` - `bytes2var` -> `bytes_to_var` - `bytes2var_with_objects` -> `bytes_to_var_with_objects` - `var2bytes` -> `var_to_bytes` - `var2bytes_with_objects` -> `var_to_bytes_with_objects` - `linear2db` -> `linear_to_db` - `db2linear` -> `db_to_linear` - `deg2rad` -> `deg_to_rad` - `rad2deg` -> `rad_to_deg` - `dict2inst` -> `dict_to_inst` - `inst2dict` -> `inst_to_dict`
2022-08-23Merge pull request #64678 from TokageItLab/implement-ease-bakerRémi Verschelde
Fix Quaternion Tween and add Easing baker to AnimationTrackEditor
2022-08-22Replace Array return types with TypedArraykobewi