Commit Graph

96 Commits

Author SHA1 Message Date
0c0b5c84b0 Implement TextServer GDExtension interface, remove TextServer GDNative interface. 2021-10-01 15:13:29 +03:00
ead6d10715 [Net/GDNative] Remove GDNative network bits. 2021-09-24 21:23:43 +02:00
4c3f7d1290 Makes FontData importable resource.
Adds multi-channel SDF font texture generation and rendering support.
Adds per-font oversampling support.
Adds FontData import plugins (for dynamic fonts, BMFonts and monospaced image fonts), font texture cache pre-generation and loading.
Adds BMFont binary format and outline support.
2021-08-27 15:43:18 +03:00
86ff7f8550 Adding GDExtension support to XRInterface 2021-08-26 23:24:44 +10:00
15c1a76361 Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
8acd13a456 Rename Quat to Quaternion 2021-06-04 18:14:32 +01:00
39e28c49ed Rename Transform to Transform3D in GDNative 2021-06-03 07:30:01 -04:00
755c70b871 Rename Array.invert() to Array.reverse()
Does the same internally for List and Vector<>, which includes all
PackedArray types.
2021-03-21 10:20:08 +00:00
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
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
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
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
2df9a8ccad Rename Rect2 and Rect2i clip() to intersection() 2020-12-19 12:59:08 +00:00
a24c38d1a8 Rename Vector2.tangent() to Vector2.orthogonal() 2020-12-06 18:16:06 +00:00
07d14f5bb8 [Complex Text Layouts] Implement GDNative interface for TextServer. 2020-11-26 13:55:29 +02: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
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
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
afc8c6391c Renaming all ARVR nodes to XR 2020-04-09 15:33:01 +10:00
3205a92ad8 PoolVector is gone, replaced by Vector
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are
sugar for `Vector<Type>`.
2020-02-18 10:10:36 +01:00
867d073b98 Changed logic and optimized ObjectID in ObjectDB and Variant, removed RefPtr. 2020-02-15 08:36:04 -03:00
b14bf4bcd0 GDNative: Make godot_int an int64_t
Redo of the change in cf8c679a23
that caused a build issue, with the extra change needed to
'godot_arvr_blit'.
2020-02-12 21:05:05 +01:00
7bc1dc828f Remove deprecated Color::gray
It was marked to be removed in Godot 3.1.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2020-02-12 11:22:33 +01:00
677e72d2f6 Expose instance_from_id to GDNative
This function is available to GDScript but not to GDNative. When exposed, it
allows building more ergonomic safe abstractions over the GDNative APIs, and
covers the use cases of the original PR.

Close #28478. Supersedes #28791.

Co-authored-by: Markus Ewald <cygon@nuclex.org>
2020-01-10 11:59:37 +00:00
3056c4bd5a Expose cast_to to GDNative for dynamic casts 2020-01-03 04:27:13 +01:00
047ecffaac Restore GDNative compatibility by moving new functions introduced in #33210 to core API 1.2 extension. 2019-11-02 15:25:43 +02:00
475115c0c3 Added empty() function to pool array types 2019-10-31 16:27:32 +01:00
757c509437 Add array slice method 2019-09-14 13:08:28 -07:00
b90ef52ece Find trailing whitespace and indentation in gdnative_api.json 2019-07-29 18:48:21 +02:00
bf237f651c Added direction_to to GDNative 2019-07-24 11:16:20 +03:00
080c0bb7fe Added count method to String 2019-07-23 18:55:54 +03:00
f6f9f89078 Merge pull request #29325 from m4gr3d/setup_godot_for_ovr_support
Setup Godot to support the Oculus Mobile SDK.
2019-06-16 10:37:57 +02:00
2c3536810a Setup Godot to support the Oculus Mobile SDK. 2019-05-30 16:35:50 -07:00
c00427add3 Added move_toward functions for float, Vector2 and Vector3 2019-05-28 11:39:35 +01:00
1deb41226d Merge pull request #28738 from 2shady4u/master
Added native binding for dictionary duplication
2019-05-23 13:47:36 +02:00
48bd2e459f Added native binding for dictionary duplication
Added entry in gdnative_api.json


Added function to header as well


Fixed versioning
2019-05-23 10:23:47 +02:00
729b1e9941 WebRTC refactor. Data channels, STUN/TURN support.
A big refactor to the WebRTC module. API is now considered quite stable.

Highlights:

- Renamed `WebRTCPeer` to `WebRTCPeerConnection`.
- `WebRTCPeerConnection` no longer act as `PacketPeer`, it only handle the connection itself (a bit like `TCP_Server`)
- Added new `WebRTCDataChannel` class which inherits from `PacketPeer` to handle data transfer.
- Add `WebRTCPeerConnection.initialize` method to create a new connection with the desired configuration provided as dictionary ([see MDN docs](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/RTCPeerConnection#RTCConfiguration_dictionary)).
- Add `WebRTCPeerConnection.create_data_channel` method to create a data channel for the given connection. The connection must be in `STATE_NEW` as specified by the standard ([see MDN docs for options](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createDataChannel#RTCDataChannelInit_dictionary)).
- Add a `data_channel_received` signal to `WebRTCPeerConnection` for in-band (not negotiated) channels.
- Renamed `WebRTCPeerConnection` `offer_created` signal to `session_description_created`.
- Renamed `WebRTCPeerConnection` `new_ice_candidate` signal to `ice_candidate_created`
2019-05-16 11:21:20 +02:00