summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2017-10-02Merge pull request #11568 from endragor/loggersAndreas Haas
Extract logging logic
2017-10-02Merge pull request #11659 from AndreaCatania/prephysicsAndreas Haas
Renamed fixed_process to physics_process
2017-10-02Merge pull request #11730 from gabrielformiga/fix-small-png-texture-importAndreas Haas
Change to Image::shrink_x2 function preventing it set a 0 width/height for mipmapped textures
2017-10-02Merge pull request #11575 from marcelofg55/move_path_to_trashPoommetee Ketson
FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trash
2017-09-30Change to shrink_x2 function preventing it set a 0 width/heightGabriel
2017-09-30Renamed fixed_process to physics_processAndreaCatania
2017-09-27Build MSVC safe_refcount in a separate compilation unitHein-Pieter van Braam
Including windows.h in a globally included header gives all kinds of issues. Move the MSVC implementation for safe_refcount back into a .cpp file to prevent this from happening.
2017-09-25FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trashMarcelo Fernandez
2017-09-25Merge pull request #11445 from Cradmon/refactorCoreMapRémi Verschelde
Refactor core/map.h
2017-09-25Merge pull request #11518 from hpvb/gdscript-direct-dispatchRémi Verschelde
Some more GDScript performance optimizations
2017-09-25Merge pull request #11567 from QuLogic/scons-var-typesRémi Verschelde
Add types to scons command-line options
2017-09-25Fixed constness of variant functions, as well as visual script sequence ↵Juan Linietsky
ports. Closes #11258
2017-09-25Use BoolVariable for third-party options.Elliott Sales de Andrade
2017-09-25Make variant_op jumptable constHein-Pieter van Braam
Not doing this was a bit of an oversight
2017-09-25Allow inlining of all parts of safe_refcountHein-Pieter van Braam
Differences with this aren't huge but the effort is minimal, in some workloads gain a couple of percent of performance.
2017-09-25Extract logging logicRuslan Mustakov
Previously logging logic was scattered over OS class implementations with plenty of duplication. Major changes in this commit: - Extracted logging logic into a separate Logger hierarchy. It allows easy configuration of logging mechanism depending on compile-time or run-time configuration. - Implemented RotatedFileLogger which is usually used with StdLogger, providing persistency of logs. It is often important to be able to obtain logs of the game even in production to be able to understand what happened prior to some problem. On mobile there previously was no way to obtain the logs aside from having the device connected to your machine. - flush() is not performed in release mode for every logged line. It is only performed for errors.
2017-09-24Merge pull request #11549 from hpvb/fix-11543Hein-Pieter van Braam
Fix Dictionary set_named
2017-09-24Fix Variant::get_named return when p_index is invalidMarcelo Fernandez
2017-09-24Fix Dictionary set_namedHein-Pieter van Braam
Reduz optimized field indexing in 3c85703 but the changes didn't apply to dictionary so this code remained untouched. However, the logic for validity checking was changed but not updated for the dictionary case.
2017-09-24Merge pull request #11473 from hpvb/fix-11466Rémi Verschelde
Implement operator != on Pool*Array types
2017-09-23Enable building against system zstd.Elliott Sales de Andrade
2017-09-23Massive optimization to Variant::set_named/get_named. Should give a nice ↵Juan Linietsky
boost to GDScript.
2017-09-22Implement operator != on Pool*Array typesHein-Pieter van Braam
These types previously had equality checks but not inequality checks. Add these too. This fixes #11466
2017-09-22Merge pull request #11461 from hpvb/add-likely-macrosRémi Verschelde
Implement Linux-style likely()/unlikely() macros
2017-09-21Fixed a bunch of typos, including an error code.Ross Hadden
2017-09-21Implement Linux-style likely()/unlikely() macrosHein-Pieter van Braam
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.
2017-09-20Fix import order, so scenes are imported after textures.Juan Linietsky
Also fix bugs when meshes are always generated.
2017-09-20Refactor core/map.h to be similar to core/set.hCradmon
2017-09-20Merge pull request #11437 from hpvb/allow-compare-to-nullJuan Linietsky
Allow equality checks between null and arbitrary types
2017-09-20Allow equality checks between null and arbitrary typesHein-Pieter van Braam
Uninitialzed values in GDScript are of type NIL so not allowing null comparisons did end up breaking some code. This commit reenables NULL equality checks for all types. We're going to have to figure out how to make this fast for the compiler later.
2017-09-20Refactor core/set.hCradmon
2017-09-20Merge pull request #11409 from MarufSarker/PR-core-math-is_nanRémi Verschelde
Verbose and Platform-specific implementation for is_nan
2017-09-20Rename pos to position in user facing methods and variablesletheed
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.
2017-09-20verbose and platform specific implementation for is_nanABU MD. MARUF SARKER
2017-09-19Merge pull request #10748 from Cradmon/fixCoreSetRémi Verschelde
Refactor core/set.h
2017-09-19Merge pull request #11208 from kitsune/hex-color-shortcutsRémi Verschelde
Adds 3 and 4 digit html shortcuts to Color
2017-09-19Merge pull request #11388 from hpvb/fix-missing-return-failRémi Verschelde
Be type-strict checking on equality checks
2017-09-19Allow booleanization of all typesHein-Pieter van Braam
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.
2017-09-19Merge pull request #11405 from karroffel/new-hashmapRémi Verschelde
added OAHashMap type
2017-09-19added OAHashMap typeKarroffel
2017-09-19Be type-strict checking on equality checksHein-Pieter van Braam
After a short discussion with @reduz and @karroffel we decided to make all non number/number comparisons return type errors on comparisons. Now bool == bool is allowed but Vector2 == Vector3 is a type error and no longer 'not equal'. The same has been done for the != operators. In addition I forgot to add some failures to some Object operators meaning that there was a potential for a crasher.
2017-09-19Merge pull request #11402 from hpvb/remove-gdscript-checks-on-releaseRémi Verschelde
Various GDScript performance tweaks
2017-09-19Don't call Variant::reference() unnecessarilyHein-Pieter van Braam
operator= does not need to call reference() if the new value is of the same type as the old. This saves us zeroing the Variant, This speeds up reuse of a Variant in a loop by roughly 50%.
2017-09-19Merge pull request #11386 from kosz78/fix-msvc-compile-errorsRémi Verschelde
Fix MSVC compilation errors
2017-09-19Fix accidental cast to Vector3 for Vector2 iterHein-Pieter van Braam
2017-09-19Fixed Typo: 'Seperate' to 'Separate'Indah Sylvia
2017-09-19Fix MSVC compilation errorsKonstantin Zaitsev
2017-09-17Move Variant::evaluate() switch to computed gotoHein-Pieter van Braam
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
2017-09-17Fix x11 exported executables not getting the +x flagMarcelo Fernandez
2017-09-17Merge pull request #11294 from karroffel/json-objectThomas Herzog
added JSON singleton