Age | Commit message (Collapse) | Author |
|
classes
|
|
Implement Linux-style likely()/unlikely() macros
|
|
|
|
This implement branch prediction macros likely() and unlikely() like in
Linux. When using these macros please ensure that when you use them the
condition in the branch really is very, very likely or unlikely. Think
90+% of the time. Primarily useful for error checking. (And I implement
these macros for all our error checking macros now)
See this article for more information:
https://kernelnewbies.org/FAQ/LikelyUnlikely
There are more places where these macros may make sense in renderer and
physics engine. Placing them will come in another commit down the line.
|
|
Rename user facing methods and variables as well as the corresponding
C++ methods according to the folloming changes:
* pos -> position
* rot -> rotation
* loc -> location
C++ variables are left as is.
|
|
At least this makes Godot compile for Android until there is a better
solution.
|
|
Visual improvements and new look for VS
|
|
We now allow booleanization of all types. This means that empty versions
of all types now evaluate to false. So a Vector2(0,0), Dictionary(),
etc.
This allows you to write GDScript like:
if not Dictionary():
print("Empty dict")
Booleanization can now also no longer fail. There is no more valid flag,
this changes Variant and GDNative API.
|
|
Various GDScript performance tweaks
|
|
Fix MSVC compilation errors
|
|
|
|
|
|
As a preparation for other performance enhancements to GDScript:call()
start by removing more of the GDScript runtime checks on release.
This code has been tested with 2d/platformer, 3d/platformer,
3d/materials_test, and goltorus. No regressions were found.
|
|
In an effort to make GDScript a little faster replace the double
switch() with a computed goto on compilers that set __GNUC__. For
compilers that don't support computed goto it will fall back to regular
switch/case statements.
In addition disable using boolean values in a mathematical context. Now
boolean values can only be compared with other booleans. Booleans will
also no longer be coerced to integers.
This PR replaces #11308 and fixes #11291
|
|
[GDnative] pass api as struct of function pointers to loaded gdnative modules
|
|
|
|
godot_gdnative_init_options
|
|
Renamed function arguments to keep them consistent between declaration and implementation
|
|
Also add missing copyright headers.
[ci skip]
|
|
|
|
Fix enums bindings
|
|
Construct Variants from Reference properly in GDNative
|
|
|
|
implementation
|
|
|
|
Previously godot_variant_new_object constructed Variant without
accounting for the fact that the Object can be a Reference, so refcount
was not increased and References were destructed prematurely.
Also, Reference::init_ref did not propagate refcount increment to the
script instance, which led to desync of refcount info on the script
side and Godot side.
|
|
|
|
Add missed bindings for enums
Move some enums to class to have correct output of api.json
|
|
Fix crash on wrong type drag into the vs editor
|
|
optimized color conversion for svg generation
|
|
In-editor navmesh generation.
|
|
|
|
possible to save module files in module directories and the build system will
recognize them.
|
|
|
|
|
|
of two … (#11146)
Doc: Improved descriptions in GDScript docs
Added examples and fixed return types of two methods.
|
|
Change Color.to_32() to Color.to_rgba32() and lowercase other functions
|
|
|
|
Fix unused variable warnings
|
|
Remove assignment and declarations in if statements
|
|
Fix various assorted warnings
|
|
|
|
Fixed: Error cause by attemptng to delete a NULL pointer.
unregister_gdnative_types() now checks discoverer to see if it is NULL
before deleting. After selecting a godot project to edit (in Win10), the
discoverer_callback() wasn't called thus discoverer was NULL.
|
|
Don't allow drops of draggable items without a vs node type.
This fixes #10935
|
|
The forth in my quest to make Godot 3.x compile with -Werror on GCC7
|
|
After discussing with @reduz and @akien-mga it was decided that we do
not allow assignments or declarations in if statements. This PR removes
the instances of this I could find by automated means.
|
|
Fix various warnings that don't have enough instances to merit
individual commits. Also fixes a potential bug in audio_server.cpp.
|
|
|
|
|
|
Fixes setting visibility on GridMap, issue #907
|