summaryrefslogtreecommitdiffstats
path: root/src/core
Commit message (Collapse)AuthorAgeFilesLines
...
* | Fix snapped from Vector2RameshRavone2019-05-021-6/+0
| |
* | Fix #272RameshRavone2019-04-211-0/+2
| |
* | Fix bug in Basis [] operator and add missing Transform-Vector3 * operatorDaniel Rakos2019-04-111-4/+4
| | | | | | | | | | | | | | | | | | The [] operator of Basis was returning a reference to a temporary, so fixed it. There was no * operator in Transform equivalent to the xform function, which is not in line with GDScript behavior. Also fixed remaining cases where Transform relied on the old behavior of the [] operator of Basis (i.e. that it returns the row, not the column).
* | Make Basis look column-major while retaining a row-major representationDaniel Rakos2019-04-083-378/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Per https://github.com/godotengine/godot/issues/14553: Godot stores Basis in row-major layout for more change for efficiently taking advantage of SIMD instructions, but in scripts Basis looks like and is accessible in a column-major format. This change modifies the C++ binding so that from the script's perspective Basis does look like if it was column-major while retaining a row-major in-memory representation. This is achieved using a set of helper template classes which allow accessing individual columns whose components are non-continues in memory as if it was a Vector3 type. This ensures script interface compatibility without needing to transpose the Basis every time it is passed over the script-engine boundary. Also made most of the Vector2 and Vector3 class interfaces inlined in the process for increased performance. While unrelated (but didn't want to file a separate PR for it), this change adds the necessary flags to have debug symbol information under MSVC. Fixes #241.
* | Synced with Godot 3.1 stableBastiaan Olij2019-04-071-1/+1
| |
* | Renamed Rect2::pos to Rect2::positionbruvzg2018-12-132-54/+54
|/
* Profiling supportMarcelo Fernandez2018-11-271-0/+4
|
* Implementing clang-format and applying it to all classesBastiaan Olij2018-11-2419-2325/+1729
|
* Fix NULL pointer dereferencing on uninstantiated Ref<T>() conversion to Variantbruvzg2018-11-221-1/+4
|
* Redid PR 190 for master now that nativescript 1.1 has been mergedBastiaan Olij2018-11-221-1/+21
|
* Merge pull request #198 from bruvzg/fix_str_find_and_cmpBastiaan Olij2018-11-191-10/+23
|\ | | | | Add missing String::find from argument, and missing String::casecmp_to functions
| * Add missing String::(r)find(n) form argumentbruvzg2018-11-181-10/+23
| | | | | | | | Add missing String::(*)casecmp_to functions
* | Redid kirsanium xform fixBastiaan Olij2018-11-191-2/+2
|/
* Nativescript 1.1karroffel2018-11-076-20/+132
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implemented instance binding data usage This commit changes the way C++ wrapper classes work. Previously, wrapper classes were merely wrapper *interfaces*. They used the `this` pointer to store the actual foreign Godot Object. With the NativeScript 1.1 extension it is now possible to have low-overhead language binding data attached to Objects. The C++ bindings use that feature to implement *proper* wrappers and enable regular C++ inheritance usage that way. Some things might still be buggy and untested, but the C++ SimpleDemo works with those changes. new and free change, custom free will crash engine, be wary fix exporting of non-object types fix free() crash with custom resources added type tags and safe object casting fix global type registration order fix cast_to changed build system to be more self contained updated .gitignore use typeid() for type tags now fix indentation in bindings generator remove accidentally added files fix gitignore Fixed up registering tool and updated godot_headers Fix crash when calling String::split/split_floats Was casting to the wrong object type. Also adds parse_ints function to String with the same logic Better warning/error macros Change gitignore so we get our gen folders New documentation based on nativescript 1.1 Fixed GODOT_SUBCLASS macro Preventing crash when function returned null ptr Adds needed include <typeinfo> Solves this issue #168 due to not having the include of typeinfo Fix compile error of 'WARN_PRINT' and 'ERR_PRINT'. cannot pass non-trivial object of type 'godot::String' to variadic function; expected type from format string was 'char *' [-Wnon-pod-varargs] update vector3::distance_to Remove godot_api.json as its now in the godot_headers submodule (api.json)
* Fix issue where Vector2::normalize() did not normalize correctlyChristoffer2018-09-031-1/+1
|
* Fix clang warning: 'const' type qualifier on return type has no effectMarcelo Fernandez2018-06-231-3/+3
|
* Fix const for += operator in stringTimothy Werquin2018-05-151-1/+1
|
* Fix String const operators.Timothy Werquin2018-05-151-8/+8
| | | | Added const to various operators.
* Merge branch 'master' of https://github.com/GodotNativeTools/godot-cppNickolai Korshunov2018-04-253-10/+27
|\
| * Make all Pool*Array::operator[] as constGary Oberbrunner2018-03-131-7/+7
| | | | | | | | | | | | | | | | | | | | | | This is needed since that operator returns a local copy, not an lvalue. Attempting to write to the return value of these operators wouldn't change the array element. PoolVectors need locking when writing, so this operator can't return a writable reference. To update a Pool*Array, use the `set()` method which locks and unlocks the array. For multiple writes, use the `write()` method which returns a locked writable view, and unlocks when it goes out of scope.
| * adds variadic printing function, makes String.format custom placeholder workdanielytics2018-03-071-1/+10
| |
| * fix #101karroffel2018-03-021-2/+10
| |
* | NULL -> nullptrNickolai Korshunov2018-02-231-10/+10
|/
* Add const qualifier to PoolArray's size()lupoDharkael2018-02-121-7/+7
|
* String and math fixesMarc Gilleron2018-01-238-63/+250
| | | | | | | | - Added missing static String constructors - Implemented String operator for math types - Added XYZ and YXZ euler angles methods - Fixed wrong det checks in Basis - Fixed operator Quat in Basis
* Added RID::is_valid() and comparison operatorsMarc Gilleron2018-01-201-0/+34
| | | | - is_valid() is worked around by comparing a default RID()
* Added missing copy constructors and assign operators to PoolVectorsMarc Gilleron2018-01-171-0/+84
|
* Merge pull request #67 from Zylann/rename_aabb_positionThomas Herzog2018-01-172-103/+103
|\ | | | | Renamed AABB::pos --> AABB::position
| * Renamed AABB::pos --> AABB::positionMarc Gilleron2018-01-172-103/+103
| |
* | Added copy constructors and assignment operators to Array and DictionaryMarc Gilleron2018-01-172-0/+24
|/
* Added Read and Write access for PoolArrayskarroffel2018-01-111-0/+98
|
* caller-defined entry methods and string API updatekarroffel2018-01-112-35/+53
|
* Added alloc_c_stringBastiaan Olij2017-11-252-38/+36
|
* Update bindings to use new Api extensions and rename Rect3->AABBBastiaanOlij2017-11-236-59/+115
|
* Implemented using api structBastiaan Olij2017-10-2316-354/+332
|
* Fixes #41Ramesh Ravone2017-10-031-1/+1
|
* String bindings updated (at most)Ramesh Ravone2017-10-031-55/+348
|
* updated bindingsRamesh Ravone2017-10-038-13/+11
|
* updated to use the new NativeScript and GDNative interfaceKarroffel2017-07-2410-11/+29
|
* Use static linking instead of dynamic linkingKarroffel2017-07-231-7/+0
|
* String operator_plus fixRamesh Ravone2017-07-221-2/+2
|
* updated core to new GDNative interfaceKarroffel2017-06-184-11/+11
|
* removed InputEvent and ImageKarroffel2017-05-237-448/+4
|
* made script "inheritance" less OOPKarroffel2017-05-132-1/+25
|
* rewrote binding generator in pythonKarroffel2017-05-1219-0/+5689