Commit graph

33 commits

Author SHA1 Message Date
A Thousand Ships
0f5e0d1637
Expose Vector* component-wise and scalar min/max to scripting 2024-05-02 13:02:40 +02:00
A Thousand Ships
308dbb8c63
[Core] Add scalar versions of Vector* min/max/clamp/snap(ped)
Convenience for a number of cases operating on single values
2024-05-02 10:31:13 +02:00
Micky
c54e09a5a3 Overhaul some "uncommon" wording in class reference 2024-03-01 15:32:38 +01:00
Hugo Locurcio
f781571d07
Add keywords to improve search in the class reference 2024-02-22 16:16:49 +01:00
kleonc
a8c62c5928 Clarify docs for operators performing xform_inv 2023-10-16 21:52:02 +02:00
Yuri Sizov
cc0eebd9d8 Validate code tags for class and member references
This commit also adds means to manually disable warnings
in `code` tags where it's a false positive with the new
`skip-lint` attribute.

Warnings are now enabled on CI to prevent future errors.
2023-10-03 15:48:31 +02:00
Rémi Verschelde
81064cc239
Doctool: Remove version attribute from XML header
We don't use that info for anything, and it generates unnecessary diffs
every time we bump the minor version (and CI failures if we forget to
sync some files from opt-in modules (mono, text_server_fb).
2023-07-06 10:08:21 +02:00
Rémi Verschelde
346f1ab86b
Bump version to 4.2-dev
Keep on waitin'
2023-07-05 22:07:03 +02:00
Ninni Pipping
5e3c625e24 Add more info on the nature of NAN 2023-05-30 15:38:10 +02:00
VolTer
04562662d3 Overhaul the top sections of the class reference (Core classes) 2023-05-19 07:04:48 +02:00
Haoyu Qiu
6cd8e706fa Unify descriptions of vector methods
* is_equal_approx
* normalize
* length_squared
* posmod
* posmodv
2023-04-14 23:31:33 +08:00
Haoyu Qiu
ff97c481d3 Fix typos and inconsistencies in classref
* Typo fixes.
* Navigation agent's `velocity_computed` signal is not emitted by
  `set_velocity`, but at the end of that frame if `set_velocity` is
  called.
* Simplify link in navigation agent's `avoidance_enabled` description.
* Unify `navigation_layers` description across `NavigationAgent{2,3}D`.
* Unify `is_normalized()` description across `Vector2`, `Vector3`, and
  `Vector4`
2023-03-27 22:26:56 +08:00
lawnjelly
cca01afd82 Improve Vector2 / 3 / 4 normalized() classref.
Mention that the results will be unreliable with initial vector near zero.
2023-03-16 11:20:30 +00:00
Haoyu Qiu
57d4272984 Fix typos and inconsistencies in classref 2023-03-16 14:10:20 +08:00
Rémi Verschelde
1c1524a651
Bump version to 4.1-dev
Can't stop, won't stop, they said, huh?
2023-03-01 01:44:37 +01:00
Hugo Locurcio
063637ec77
Rename float=64 SCons option to precision=double
This avoids confusion with the old `bits=64` option and building
for 64-bit CPUs in general.
2022-12-10 16:43:45 +01:00
Rémi Verschelde
4a8b725bc9
Merge pull request #68386 from MewPurPur/snappedi-snappedf
Implement snappedi, snappedf, and Vector[2/3/4]i.snapped
2022-11-24 18:54:49 +01:00
VolTer
e26f0906f2 Implement snappedi, snappedf, and Vector[2/3/4]i.snapped 2022-11-19 06:18:55 +01:00
Jonathan Nicholl
edfb504efe Document that Vector classes are 32-bit 2022-11-12 15:51:11 -05:00
Haoyu Qiu
5da515773d Add is_finite method for checking built-in types 2022-10-08 13:25:08 +08:00
MJacred
ed4571ee37 Document Vector4i 2022-09-03 17:06:36 +02:00
Jonathan Nicholl
15d057c521 Add is_zero_approx methods to Vector2, 3, and 4 2022-09-02 00:29:50 -04:00
Silc Renew
dded7c72c1 Make cubic_interpolate() consider key time in animation 2022-08-19 14:48:37 +09:00
Andy Maloney
1f72f48361 [doc] Use "param" instead of "code" to refer to parameters #3 2022-08-09 22:00:19 -04:00
Rémi Verschelde
317ced8204
Merge pull request #64108 from antonWetzel/csharp-update 2022-08-10 00:07:32 +02:00
Andy Maloney
5361585832 [doc] Use "param" instead of "code" to refer to parameters
Co-authored-by: Yuri Sizov <11782833+YuriSizov@users.noreply.github.com>
2022-08-09 10:09:07 -04:00
antonWetzel
40a1d6d100 vector4 distance_squared_to and update csharp 2022-08-09 01:59:17 +02:00
Yuri Sizov
c5d7115038 Rename the argument tag to param in XML documentation 2022-08-08 22:34:31 +03:00
Hendrik Brucker
36061c5dca Vector4/Vector4i: Add missing methods, tests and fix change of sign operator 2022-08-07 12:25:05 +02:00
kobewi
ee6fd704b5 Fix Vector4 serialization 2022-07-29 12:09:03 +02:00
kobewi
d7b30b2327 Add Vector4 documentation 2022-07-26 22:37:05 +02:00
kobewi
7006f7d693 Add some missing Vector4 methods 2022-07-26 02:35:42 +02:00
reduz
455c06ecd4 Implement Vector4, Vector4i, Projection
Implement built-in classes Vector4, Vector4i and Projection.

* Two versions of Vector4 (float and integer).
* A Projection class, which is a 4x4 matrix specialized in projection types.

These types have been requested for a long time, but given they were very corner case they were not added before.
Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity.

**Q**: Why Projection and not Matrix4?
**A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
2022-07-23 14:00:01 +02:00