Commit Graph

208 Commits (6a73abc5605c343d5738947b5ccb45df17b7b4c0)

Author SHA1 Message Date
Rémi Verschelde d9c72c6773
Fixup after 243ec87918 2022-11-16 10:33:39 +01:00
Emmanuel Leblond b6ba0dca13
StringName is working fine with demo \o/ 2022-11-08 21:44:33 +01:00
Emmanuel Leblond e24b6b0e51
Use StringName in the whole GDExtension API instead of const char * 2022-11-08 21:44:31 +01:00
Emmanuel Leblond 0e81f89dd3
Uses `StringName` in GDExtension perf critical instance creation & method/properties setter/getter 2022-11-08 21:44:30 +01:00
Emmanuel Leblond b21931c4a3
Type `GDNativePropertyInfo.type` field as `GDNativeVariantType` 2022-10-13 14:04:54 +02:00
Mikael Hermansson cddaf50ff8 Fix use-after-free when deleting objects from extension terminator 2022-10-11 00:59:35 +02:00
Rémi Verschelde db8679443f Merge pull request #885 from aaronfranke/core-data-structs
Update core data structures to match the engine
2022-10-07 22:25:54 +02:00
Rémi Verschelde 0eba81ef79 Merge pull request #876 from Daylily-Zeleen/Daylily-Zeleen/master
Add detail infos for binding error message.
2022-10-07 22:25:49 +02:00
Aaron Franke 65eeb94f75
Update core data structures to match the engine 2022-10-07 11:27:41 -05:00
Rémi Verschelde 50a534bf55 Merge pull request #880 from aaronfranke/struct
Use `struct` instead of `class` for core structures
2022-10-05 10:35:59 +02:00
Rémi Verschelde 91afc08de1 Merge pull request #855 from Zylann/fix_issue854_virtual_methods
Fix deriving a custom class with virtual methods
2022-10-05 10:35:54 +02:00
Aaron Franke 0455f72ede
Use struct instead of class for core structures 2022-10-05 01:46:15 -05:00
Rémi Verschelde d25cae9b61 Merge pull request #859 from aaronfranke/basis-transform-quat
Update Basis/Transform3D/Quaternion to match the engine
2022-10-04 16:39:46 +02:00
Aaron Franke fc879c04c8
Update Vector4/4i to match the engine 2022-10-01 21:09:05 -05:00
Aaron Franke d479208a8f
Update Vector2/2i/3/3i to match the engine 2022-10-01 21:09:05 -05:00
daylilyzeleen 3e91ec1729 Add detail infos for binding error message. 2022-09-30 15:16:43 +08:00
Marc Gilleron 5de2c059d1 Fix deriving a custom class with virtual methods 2022-09-21 19:31:30 +01:00
Aaron Franke e83d472c00
Update Basis/Transform3D/Quaternion to match the engine 2022-09-20 01:07:45 -05:00
Aaron Franke e26a75cd0c
Rename Basis "elements" to "rows"
https://github.com/godotengine/godot/pull/60627
2022-09-19 18:22:52 -05:00
Aaron Franke e30c858c5d
Rename Transform2D "elements" to "columns"
https://github.com/godotengine/godot/pull/60627
2022-09-19 18:22:52 -05:00
Aaron Franke 942cd466ed
Split is_equal_approx into float and double versions to match Godot
https://github.com/godotengine/godot/pull/48882
2022-09-19 02:47:27 -05:00
Rémi Verschelde 3450a1ab16 Merge pull request #847 from ninfur/issue-65997
Add missing Vector4 function bindings
2022-09-19 09:31:23 +02:00
Rémi Verschelde 03d1120d6a Merge pull request #850 from Zylann/transform_local
Add Transform3D `translated_local`, `rotated_local`, `scaled_local`
2022-09-19 09:30:11 +02:00
Marc Gilleron c543a3cbe1 Add Transform3D `translated_local`, `rotated_local`, `scaled_local` 2022-09-18 23:04:38 +01:00
Marc Gilleron a35994ce7b Use `quaternion` instead of `quat` in method names 2022-09-18 22:44:18 +01:00
Johannes Sinander e7372cbe85 Add missing Vector4 function bindings 2022-09-18 11:27:49 +02:00
Rémi Verschelde f24cc8be03
Merge pull request #826 from bruvzg/string_info 2022-09-15 21:10:13 +02:00
Silc Renew 440c4ed703 Mode some methods to Animation from Variant 2022-09-15 04:13:51 +09:00
bruvzg 36273baa7e
Change PropertyInfo members to String. 2022-09-14 08:41:09 +03:00
bruvzg 91c56a0ad1
Add bindings for Vector4, Vector4i, Projection built-in types. 2022-07-21 09:36:38 +03:00
bruvzg 713b122b84
Add support for BitField hint, sync API files. 2022-07-11 15:00:17 +03:00
bruvzg e3119e7d05
Sync containers with new HashMap/HashSet, sync API headers. 2022-06-06 12:18:07 +03:00
bruvzg 031a83b0ea
[Method Bind] Add support for default argument values and static method binding. Sync headers. 2022-05-06 10:17:51 +03: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
Rémi Verschelde 76bad22978
Merge pull request #701 from bruvzg/port_templates 2022-02-21 11:25:40 +01:00
Rémi Verschelde 7e3321d1b2 Use forward declares for vector math types
Adds operators to convert from int vector types to float vector types
as done in the upstream engine implementations.
2022-02-20 12:04:08 +01:00
Rémi Verschelde 917b0c2ca3
Merge pull request #688 from zhehangd/master 2022-02-19 16:31:32 +01:00
bruvzg e36180f377
Port a bunch of Godot container templates to GDExtension. 2022-02-18 21:07:53 +02:00
bruvzg 65dc3e89c7
Add ERR_ macros variants using `String` messages. 2022-02-17 10:18:04 +02:00
bruvzg bf8fc4c53d
Add `ptr()` / `ptrw()` to the arrays, add missing `String` methods, add missing `CharString` method implementations. 2022-02-14 23:17:21 +02:00
Zhehang Ding df0e28fe43 Add missing Vector2::operator Vector2i() 2022-02-07 01:23:18 -08:00
Zhehang Ding 24c94e4af0 Add missing Vector3::operator Vector3i 2022-02-07 00:31:48 -08:00
Gilles Roudière adbbf1a3a1 Fix object_set_instance being wrongly called for built-in wrapped classes 2021-12-06 15:40:19 +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 50512f0dee
Merge pull request #659 from groud/fix_null_init
Avoid crash in Variant constructor from nullptr Object*
2021-11-25 11:16:55 +11:00
Gilles Roudière 55ba2602db Avoid crash in Variant constructor from nullptr Object* 2021-11-23 11:01:49 +01:00
Bastiaan Olij b008810c01 Implementing dictionary operators 2021-11-23 19:44:53 +11:00
Bastiaan Olij c2b690439f Implement index operators for Arrays 2021-11-12 14:29:54 +11: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 0e3bc393d5 Fully register class on register_class call 2021-09-27 23:08:12 +10:00
Bastiaan Olij b21069c573 _err_print_error only output p_message so swapped parameters around 2021-09-27 23:08:11 +10:00
Bastiaan Olij e839199848 Add support for property groups 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
George Marques aef0f1e248 Change initialization to allow custom level callbacks
Now it needs a callback for each level so custom logic (like loading
singletons) can be performed.
2021-09-27 23:08:10 +10:00
George Marques dfa526ce16 Fix formatting of files 2021-09-27 23:08:10 +10:00
Bastiaan Olij 46c63af715 Re-introduce build-in type code for core types 2021-09-27 23:08:10 +10:00
George Marques 8eb6f129f8 Set initialization level to CORE
This should eventually be configurable with user callbacks, but for now
assume the lowest level to ensure the initialization is called.
2021-09-27 23:08:10 +10:00
Bastiaan Olij b07559882c Silence delete compile warning in memory.h/cpp on Windows 2021-09-27 23:08:09 +10:00
George Marques 5615c92173 Define the {de,}initialization functions in the bindings
The extension creators then don't need to create those just to redirect
to the bindings.
2021-09-27 23:08:08 +10:00
George Marques 8bcf32a619 Fix issues with method calls 2021-09-27 23:08:08 +10:00
George Marques e4ed48976a Replace bindgins to work with extensions 2021-09-27 23:08:08 +10:00
Rémi Verschelde 4e8508ad53
Fixup style after #563 2021-09-27 12:26:32 +02:00
Rémi Verschelde 3de367920f
Merge pull request #563 from LinwoodCloud/master 2021-09-27 11:41:41 +02:00
Rémi Verschelde 7a693df988
Merge pull request #601 from colugomusic/fix-string-args-constness 2021-09-27 11:31:56 +02:00
Rémi Verschelde 0fba89df67
Merge pull request #595 from Calinou/add-license-headers 2021-09-27 11:31:31 +02:00
Sam 6b31e67dd3 Fix Clang 11 build failure over -Wabsolute-value 2021-09-01 23:08:30 +01:00
Colugo bba8393af7 Fix argument constness in String::begins_with, String::ends_with 2021-08-22 16:02:14 +01:00
Hugo Locurcio cf5428e103
Add license headers to all source and header files
This is consistent with the core Godot source code, and ensures the
license isn't detached from its original code when individual files
are distributed.
2021-08-02 18:34:58 +02:00
DhruvMaroo 7a1890345b edited according to clang-format 2021-06-01 23:16:09 +05:30
DhruvMaroo 67e2c6145c used godot_string_new_copy to copy 2021-05-31 09:31:11 +05:30
DhruvMaroo b44b98a94c removed _deleted class member 2021-05-31 09:10:59 +05:30
DhruvMaroo cd05371ce8 added class member, safety check in the destructor 2021-05-31 00:52:36 +05:30
DhruvMaroo 492285f681 changed spaces to tabs 2021-05-30 22:29:41 +05:30
DhruvMaroo bdc5674ace added move assignment operator 2021-05-30 12:33:40 +05:30
DhruvMaroo 689b5fb98b added mover constructor 2021-05-30 12:30:11 +05:30
kb1000 3fe276c02f
Stop including iostream in Variant.hpp (to produce smaller binaries) 2021-05-23 16:28:11 +02:00
Erik Abair 2ccc5e08f2 Populates incorrect constants for Vector2 and 3 types. 2021-05-02 15:35:21 -07:00
George Marques cba90d6301
Update clang-format to version 11
This is taken from the Godot repository, so formatting is similar. This
updates the style rules as well.

Also fix style in files to conform with this version.
2021-02-28 16:57:34 -03:00
Hrishikesh 8558d2360a Removed redundant function definitions in CameraMatrix and used the ones in Math.hpp 2021-02-03 06:32:44 +05:30
Marc b400dba875
Merge branch 'master' into container_leaks 2021-01-31 20:06:56 +00:00
Marc 05ba977cc6
Merge pull request #485 from colugomusic/fix-array-const
Fix constness of Array::find, Array::find_last and Array::rfind
2021-01-31 20:03:47 +00:00
Marc e76efdd3ab
Merge pull request #481 from Zylann/vec_constants
Added missing constants to Vector2, Vector3, Basis and Quat
2021-01-31 20:02:06 +00:00
Marc 1aab5e3962
Merge branch 'master' into master 2021-01-31 19:32:56 +00:00
Marc Gilleron fb71edd45b Fix container and string leaks
Some functions return a new instance of such containers,
but instead we made a copy of them, without taking ownership of the
original created by the function.
Now we use a specific constructor taking ownership on the godot_* struct.
2021-01-07 01:05:12 +00:00
Colugo 38c9b624db Fix constness of Array::find, Array::find_last and Array::rfind 2020-12-20 16:53:40 +00:00
Marc Gilleron 8e1cc29c66 Added missing constants to Vector2, Vector3, Basis and Quat 2020-12-08 23:35:17 +00:00
Marc c9a740be34
Merge pull request #451 from Zylann/math
Added Godot's math functions
2020-09-08 19:31:54 +01:00
Marc Gilleron 0d1511695d Added Godot's math functions 2020-09-04 02:14:45 +01:00
Marc e5334579db
Merge branch 'master' into arcore_support 2020-08-31 15:05:09 +01:00
Fredia Huya-Kouadio 31b0ca80d5 Additions to the library to support the ARCore plugin 2020-08-23 14:11:47 -07:00
Marc Gilleron 469e9da86c Rename `RID::get_rid()` => `get_id()` to match Godot 2020-08-23 21:32:05 +01:00
Marc a3fe496ad6
Merge pull request #441 from TerraAr/master
Create an operator
2020-08-16 17:36:49 +01:00
TerraAr 7d347edb12
Updated operator
I've updated the operator that I had created to use the private constructor of the class.
2020-08-15 15:10:16 -03:00
Marc 756c1e1c79
Merge pull request #307 from aqnuep/string_memory_leak_fix
Fixed memory leak with String objects
2020-08-15 17:57:02 +01:00
Daniel Rakos 0939d0f6d1 Fixed memory leak with String objects
The member _godot_string should never be straight out overwritten ever without
first destroying the underlying string object's memory. This change solves the
problem through the introduction of a new private constructor to create String
objects with a pre-existing godot_string handle.
2020-08-15 09:46:23 +02:00
TerraAr 5e656923cf
Fixed operator
Fixed String::operator+=(const wchar_t). The problem was that a temporary variable don't have an address.
2020-08-14 23:32:38 -03:00
TerraAr a1ba843f36
Created operator.
Created String::operator+=(const wchar_t), that was mark as Todo.
2020-08-14 21:42:10 -03:00
Marc ceae5be727
Merge pull request #356 from sheepandshepherd/variantleak2
Add C conversion constructors and fix new leak
2020-06-05 21:16:37 +01:00