Commit Graph

167 Commits

Author SHA1 Message Date
8fddab9209 Further changes in GDNative API
- Added new_copy to all types, since trivial copy won't work for all
  types.
- Added functions to convert from String to char array types, which is
  not provided by the methods bound in Variant.
- Added operator index to String.
- Added missing cstring version of some Variant functions. They existed
  in the header but didn't have the implementation and were missing from
  the gdnative_api.json file.
- Added support for static calls on Variant types.
2021-03-17 08:26:10 -03:00
fec979b850 Merge pull request #44671 from o01eg/fix-gcc-visibility
GDNative: Fix symbols visibility for GCC
2021-03-12 09:41:56 +01:00
ba1344408f Implement Navigation layers 2021-03-10 11:23:06 +01:00
a527c6856b Merge pull request #46045 from bruvzg/text_server_bmp_create
[TextServer] Restores bitmap font dynamic construction functions.
2021-02-24 12:55:36 +01:00
bee718f1af [Text Server] Restores bitmap font dynamic construction functions. 2021-02-15 10:46:49 +02:00
f4d095cdd3 [TextServer] Restore character and space extra spacing support. 2021-02-15 10:46:23 +02:00
66ed69edb3 Further changes to GDNative API
- Moved Variant struct definition to its own file so it can be used
  without include cycles (like on Dictionary).
- Add `index` operator function so bindings like C++ can implement the
  operator[] overload (which needs a reference to the actual value).
- Added missing new/destroy functions to Vector3i array.
- Added print error/warning functions as helpers so bindings can print
  messages in the same manner as Godot itself does.
2021-02-09 11:33:35 -03:00
f02252e37d C conformance: Include stdbool.h to define bool
`bool` is otherwise not defined in C.
2021-02-02 18:11:00 +01:00
6c197cf259 Define GDNative sizes using sizeof(godot_real_t) and sizeof(int32_t) 2021-01-25 16:42:14 -05:00
29e5dd06c7 GDNative: Remove print functions
Those are now utilities so the function pointer can be fetched when
needed.
2021-01-25 09:28:32 -03:00
030d1d6a17 GDNative: New core API
This API now uses the discovery functions present in Variant instead of
wrapping every built-in function. Users now need to query for function
pointers and use those.
2021-01-25 09:28:02 -03:00
9f3d7d9709 Changed type to make it work on x32 architecture. 2021-01-05 01:44:52 +00:00
b5334d14f7 Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
058f3fe069 Merge pull request #44149 from madmiraal/rename-tangent-orthogonal
Rename Vector2.tangent() to Vector2.orthogonal()
2020-12-28 16:00:12 +01:00
b628912af0 Rename Rect2 and Rect2i grow_margin() to grow_side() 2020-12-28 12:47:33 +00:00
5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
1393ededfd Fix visibility for GCC 2020-12-25 09:56:00 +03:00
2df9a8ccad Rename Rect2 and Rect2i clip() to intersection() 2020-12-19 12:59:08 +00:00
c1d261fdb0 [Complex Text Layouts] Add variable fonts support. 2020-12-13 18:43:39 +02:00
360cfeedac Merge pull request #44176 from touilleMan/global_class_naming-for-pluginscript
Add PluginScript support for global class naming/icon path
2020-12-08 13:51:06 +01:00
c4c18a2c58 Add PluginScript support for global class naming/icon path 2020-12-08 13:17:22 +01:00
014efeb272 Allow PluginScript to customize language's can_inherit_from_file attribute 2020-12-08 00:56:01 +01:00
a24c38d1a8 Rename Vector2.tangent() to Vector2.orthogonal() 2020-12-06 18:16:06 +00:00
02f60812ed Rename TYPE_REAL to TYPE_FLOAT
To be consistent with the naming everywhere else.
2020-12-04 09:47:26 -03:00
07d14f5bb8 [Complex Text Layouts] Implement GDNative interface for TextServer. 2020-11-26 13:55:29 +02:00
02161aad5a Remove empty lines around braces with the formatting script 2020-11-16 23:38:11 -05:00
b51dca64a6 Merge pull request #43383 from vnen/gdnative-string-header
GDNative: Define special char types in string.h
2020-11-10 09:40:26 +01:00
82576371ef GDNative: Define special char types in string.h
Those are standard types in C++ but not in C.

This also removes the wchar header which is not needed anymore and use
stddef.h instead (which is needed for size_t).
2020-11-07 16:09:14 -03:00
7adb6b91b3 Remove Color.contrasted() as its behavior is barely useful
Returning the most contrasting color isn't a trivial task, as there
are often many possible choices. It's usually best left for the user
to implement using a script.
2020-11-03 04:46:08 -05:00
80b8eff6aa [Complex Test Layouts] Change String to use UTF-32 encoding on all platforms. 2020-09-03 19:56:24 +03:00
56e2c6c704 Make all String float conversion methods be 64-bit 2020-07-27 18:38:53 -04:00
83e324d670 Update core documentation to match recent C# changes
Also a few minor API changes like adding AABB.abs()

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2020-07-21 14:44:53 -04:00
af80bcd2f8 Add sort and has methods to PackedArrays 2020-07-06 22:16:39 -04:00
929b98d24b Remove String::find_last (same as rfind) 2020-07-03 15:26:22 +02:00
23f7f86914 Style: Fix copyright headers 2020-06-25 16:33:44 +02:00
c3e615e21b GDNative: merge API structs, bump version of merged structs. 2020-06-11 18:26:47 +03:00
9fbc424d4c GDNative: Add bindings for the Packed*Array ptr() and ptrw() functions. 2020-05-26 17:02:02 +03:00
74eecd1d6b GDNative add new core types. 2020-05-18 15:52:20 +03:00
48d133a5fd Fix GDNative wrapper type sizes (RID, Variant, Packed*Array), add size checking static asserts. 2020-05-16 13:58:42 +03:00
0be6d925dc Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
Which means that reduz' beloved style which we all became used to
will now be changed automatically to remove the first empty line.

This makes us lean closer to 1TBS (the one true brace style) instead
of hybridating it with some Allman-inspired spacing.

There's still the case of braces around single-statement blocks that
needs to be addressed (but clang-format can't help with that, but
clang-tidy may if we agree about it).

Part of #33027.
2020-05-14 16:54:55 +02:00
a1aaed5a84 Remove redundant void argument lists
Using clang-tidy's `modernize-redundant-void-arg`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-redundant-void-arg.html
2020-05-14 13:51:45 +02:00
94721f5ab8 Revert "Renamed plane's d to distance"
This reverts commit ec7b481170.

This was wrong, `d` is not a distance but the `d` constant in the
parametric equation `ax + by + cz = d` describing the plane.
2020-05-10 16:47:11 +02:00
ec7b481170 Renamed plane's d to distance 2020-05-10 12:12:51 +02:00
540156b387 [Core] Rename linear_interpolate to lerp 2020-04-29 04:02:49 -04:00
2cd952bd84 Fix handling of PROPERTY_USAGE_SUBGROUP in DocData and editor
Subgroups were added in #37678 but not properly handled everywhere
where PROPERTY_USAGE_GROUP is.
2020-04-20 17:13:06 +02:00
d41444b0d8 Merge pull request #37693 from lupoDharkael/remove-hint
Remove obsolete enums
2020-04-10 11:47:44 +02:00
afc8c6391c Renaming all ARVR nodes to XR 2020-04-09 15:33:01 +10:00
5021dcfcd6 Remove obsolete enums 2020-04-08 20:44:01 +02:00
95a1400a2a Replace NULL with nullptr 2020-04-02 13:38:00 +02:00
6c8f2ae53a Update docs and bindings for new integer vector types 2020-02-25 15:27:29 +01:00