David Snopek
fe68c22c3e
Generate GDExtension interface header and loader from JSON
2025-12-18 12:09:41 -06:00
David Snopek
48d02db27c
Update to use mem_alloc2, mem_realloc2 and mem_free2
2025-10-01 08:12:27 -05:00
David Snopek
309b17b6eb
Test that internal classes work as expected
2025-07-23 13:53:52 -05:00
David Snopek
7f5f02940d
Update for GDExtension interface changes in Godot 4.5
2025-06-23 16:40:43 -05:00
Pierre-Thomas Meisels
0871c7a93a
Expose gdextension_object_get_script_instance and gdextension_object_set_script_instance methods from engine
2025-05-05 18:55:59 +02:00
David Snopek
08fd033a9e
Merge pull request #1743 from dsnopek/get-used-classes
...
Register the classes used with the Godot editor
2025-04-18 06:56:23 -05:00
David Snopek
aed195f6dc
Register the classes used with the Godot editor
2025-03-17 13:23:32 -05:00
Thaddeus Crews
7056c996dd
Style: Replace header guards with #pragma once
2025-03-07 17:58:10 -06:00
Lukas Tenbrink
daef7d48ea
Add variant_internal.hpp.
...
This module contains VariantInternalType, VariantInternal, VariantGetInternalPtr, VariantInternalAccessor and VariantDefaultInitializer, allowing to access and manipulate Variant's internal values.
2024-11-28 15:15:03 +01:00
David Snopek
42e398e4e2
Update for new NOTIFICATION_POSTINITIALIZE handling
2024-10-29 16:29:24 -05:00
David Snopek
fa3dfa0e3c
Merge pull request #1591 from dsnopek/variant-object-instance-id
...
Directly get object instance ID from `Variant` and implement `Variant::get_validated_object()`
2024-10-29 13:10:12 -05:00
David Snopek
0602c32986
Directly get object instance ID from Variant and implement Variant::get_validated_object()
2024-10-17 09:58:52 -05:00
Thaddeus Crews
2ffff669f5
Implement typed dictionaries
2024-09-17 15:05:16 -05:00
bruvzg
2360f84513
[TextServer, GDExtension] Fix building text servers as GDExtension, expose new/changed low-level methods to GDExtension API.
2024-06-13 18:57:24 +03:00
David Snopek
88df025aa0
Clean up instance bindings for engine singletons to prevent crash
2024-05-10 19:51:31 -05:00
Rémi Verschelde
17a82e7f94
Merge pull request #1374 from dsnopek/gdext-docs
...
Allow submitting documentation to the Godot editor
2024-05-08 00:48:02 +02:00
David Snopek
a434850069
Allow submitting documentation to the Godot editor
2024-05-07 11:08:18 -05:00
David Snopek
23178e81ff
Add support for PackedVector4Array
2024-05-06 14:30:04 -05:00
David Snopek
ec166295ba
Merge pull request #1397 from dsnopek/script-free-lists
...
Load new `script_instance_create3` GDExtension interface function
2024-03-14 10:02:21 -05:00
A Thousand Ships
fb79d5ff98
Add support for getting argument count from Callables
2024-03-14 10:27:39 +01:00
David Snopek
8b92368165
Load new script_instance_create3 GDExtension interface function
2024-03-01 10:50:02 -06:00
David Snopek
fb884573ea
Allow registering "runtime classes"
2024-02-13 08:55:25 -06:00
David Snopek
8fbb7cf795
Allow GDExtensions to register virtual methods and call them on scripts
2024-02-12 13:30:07 -06:00
bruvzg
adc9def046
[iOS] Fix initialisation/termination of multiple statically linked extensions.
2023-11-23 13:38:20 +02:00
David Snopek
d33bd47219
Add CallableCustom that devs can use in their GDExtensions
2023-11-06 00:09:06 -06:00
David Snopek
64eac01d04
Merge pull request #1266 from dsnopek/automatic-engine-class-registration
...
Automatically register only engine classes whose header has been included
2023-10-16 10:47:06 -05:00
David Snopek
b507b3e591
Automatically register only engine classes whose header has been included
2023-10-16 10:19:11 -05:00
David Snopek
3d814f9e4a
Use the new string_name_new_with_latin1_chars function to improve StringName construction performance
2023-10-09 16:59:29 -05:00
David Snopek
c18c1916c3
Implement callable_mp() and callable_mp_static()
2023-09-21 15:17:50 -05:00
Markus Sauermann
c2d99fd519
Fix Object::notification order
...
For the notification-order to work correctly, it is necessary to
allow the `p_reversed` argument to be used within cpp.
This PR changes the necessary bindings.
2023-08-30 00:07:28 +02:00
David Snopek
f0405f18a3
Add support for placeholder_script_instance_create/update
2023-08-28 17:02:13 -05:00
David Snopek
8bc1c1dbeb
Implement String::resize()
2023-07-31 15:14:10 -05:00
Mikael Hermansson
7d8cb7c155
Add support for indexed properties
2023-07-26 00:31:53 +02:00
Rémi Verschelde
2078c00bab
Merge pull request #1114 from dsnopek/editor-plugins
...
Add support for adding/removing editor plugins
2023-05-26 11:04:35 +02:00
David Snopek
e75ebffb70
Add support for adding/removing editor plugins
2023-05-16 22:02:35 -05:00
David Snopek
431e30bc32
Ensure GDExtension class is the correct type for the Godot engine class
2023-05-16 15:18:48 -05:00
David Snopek
a5c6ca5920
Update to load function pointers for GDExtension interface
2023-05-09 21:45:48 -05:00
Rémi Verschelde
931f1a3f34
Sync license copyright with upstream GH-70885
2023-01-10 16:15:31 +01:00
Rémi Verschelde
bab247dcb6
Rename godot-headers to gdextension, move header to top folder
...
Changes the `<godot/gdextension_interface.h>` include to simply
`<gdextension_interface.h>`.
Refactor and better document the SCons and CMake logic around setting
the paths to the header and API JSON file.
2022-12-14 12:36:59 +01:00
Gilles Roudière
c02e644679
Rename GDNative to GDExtension
...
Non-exhaustive list of case-sensitive renames:
GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension -> Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION -> EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
2022-12-12 11:06:38 +01:00
Emmanuel Leblond
fe86a94dcf
Fix const qualifier for parameters in GDExtension api functions
2022-12-03 00:27:07 +01:00
Andy Maloney
c7e34c2f9d
Basic static analysis fixes
...
- remove extraneous semicolons
- use "nullptr" instead of "0"
- remove "break" after "return"
- use <cstdio> instead of <stdio.h>
2022-11-18 17:46:13 -05:00
Aaron Franke
592bd15c7a
Run scripts to format and make headers consistent
2022-10-09 01:47:07 -05:00
bruvzg
8bf5a532de
Change registered initializers / terminators to the single function with level argument.
2022-05-04 11:14:51 +03:00
Rémi Verschelde
1632322ce0
Update copyright year
2022-03-15 10:17:53 +01:00
Gilles Roudière
a94148ca4c
Reorder native extension initialization steps
2022-02-28 15:44:54 +01:00
Gilles Roudière
3fcb8a4d1e
Make extension instances create the corresponding godot object in their constructor
2021-12-03 15:37:49 +01:00
Bastiaan Olij
ef528d3a86
Rename interface to gdn_interface because it's a defined keyword under windows
2021-10-28 19:44:20 +11:00
Bastiaan Olij
fab017c91a
Fix some clang format things
2021-09-27 23:08:11 +10:00
Bastiaan Olij
02802b1d0e
Add in driver types and rejig code to make it easier to extend
2021-09-27 23:08:11 +10:00