summaryrefslogtreecommitdiff
path: root/core/io
AgeCommit message (Collapse)Author
2021-02-19doc: Sync classref with current sourceRémi Verschelde
And fix various bogus bindings following previous PRs.
2021-02-18Merge pull request #45617 from RandomShaper/modernize_atomicsRémi Verschelde
Modernize atomics (and fix `volatile`)
2021-02-18Modernize atomicsPedro J. Estébanez
- Based on C++11's `atomic` - Reworked `SafeRefCount` (based on the rewrite by @hpvb) - Replaced free atomic functions by the new `SafeNumeric<T>` - Replaced wrong cases of `volatile bool` by the new `SafeFlag` - Platform-specific implementations no longer needed Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2021-02-18Reorganize Project Settingsreduz
-Advanced Settings toggle also hides advanced properties when disabled -Simplified Advanced Bar (errors were just plain redundant) -Reorganized rendering quality settings. -Reorganized miscelaneous settings for clean up.
2021-02-12Add ability to change Icon Saturationreduz
-Allows for more theme freedom -Allows for entirely B&W themes.
2021-02-11Improve resource load cachereduz
-Added a new method in Resource: reset_state , used for reloading the same resource from disk -Added a new cache mode "replace" in ResourceLoader, which reuses existing loaded sub-resources but resets their data from disk (or replaces them if they chaged type) -Because the correct sub-resource paths are always loaded now, this fixes bugs with subresource folding or subresource ordering when saving.
2021-02-10Removed _change_notifyreduz
-For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap. -For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed() -Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
2021-02-09Fixes crash when exiting with --verbose with leaked resourcesGilles Roudière
2021-01-31Merge pull request #45315 from RandomShaper/modernize_threadRémi Verschelde
Modernize Thread
2021-01-29Modernize ThreadPedro J. Estébanez
- Based on C++11's `thread` and `thread_local` - No more need to allocate-deallocate or check for null - No pointer anymore, just a member variable - Platform-specific implementations no longer needed (except for the few cases of non-portable functions) - Simpler for `NO_THREADS` - Thread ids are now the same across platforms (main is 1; others follow)
2021-01-28Unify URI encoding/decoding and add to C#Aaron Franke
http_escape and percent_encode have been unified into uri_encode, and http_unescape and percent_decode have been unified into uri_decode.
2021-01-26Type consistencies in coreAaron Franke
2021-01-19Modernize RWLockPedro J. Estébanez
- Based on C++14's `shared_time_mutex` - No more need to allocate-deallocate or check for null - No pointer anymore, just a member variable - Platform-specific implementations no longer needed - Simpler for `NO_THREADS`
2021-01-13Expose `Resource.emit_changed()` to scriptAndrii Doroshenko (Xrayez)
Also known as `emit_signal("changed")`.
2021-01-01Update copyright statements to 2021Rémi Verschelde
Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
2020-12-29Consistently use normal_mapMarcel Admiraal
2020-12-28Rename empty() to is_empty()Marcel Admiraal
2020-12-19Rename Rect2 and Rect2i clip() to intersection()Marcel Admiraal
2020-12-18Add interpolation parameter to resize_to_po2()Theogen Ratkin
Image::resize_to_po2() now takes an optional p_interpolation parameter that it passes directly to resize() with default value INTERPOLATE_BILINEAR.
2020-12-17Merge pull request #44393 from Calinou/add-stdout-flush-project-settingRémi Verschelde
Add a project setting to enable stdout flushing in release builds
2020-12-15Quick fix to incorrect error messages when writing to compressed or ↵Andy Savage
encrypted files.
2020-12-15Add a project setting to enable stdout flushing in release buildsHugo Locurcio
This can be used in server builds for journalctl compatibility.
2020-12-10Image: Rename PVRTC{2,4} to PVRTC1_{2,4}, drop COMPRESS_PVRTC2Rémi Verschelde
We haven't had a proper implementation for COMPRESS_PVRTC2 (which is PVRTC1 2-bpp) in years, so let's drop it instead of keeping a compress type which doesn't work. The other enum values were renamed to clarify that our PVRTC2 and PVRTC4 are respectively PVRTC1 2-bpp and PVRTC1 4-bpp. PVRTC2 2-bpp and 4-bpp are not implemented yet.
2020-12-09Merge pull request #44128 from KoBeWi/🧹Rémi Verschelde
Cleanup unused engine code
2020-12-09Cleanup unused engine codeTomasz Chabora
2020-12-09Merge pull request #44199 from bruvzg/pvs_fixes_1Rémi Verschelde
PVS-Studio static analyzer fixes
2020-12-09Static analyzer fixes:bruvzg
Removes unused code in OS. Fixes return types. Fixes few typos.
2020-12-09Merge pull request #44161 from Faless/fix/fa_buffered_removeRémi Verschelde
Remove unused FileAccessBuffered
2020-12-06Tweak log file names for consistency between Mono and non-Mono logsHugo Locurcio
- Avoid spaces in Mono log file names. - Use a `.log` extension for Mono logs, just like non-Mono logs. - Use periods to separate hours/minutes/seconds for non-Mono logs.
2020-12-06Remove now unused FileAccessBuffered.Fabio Alessandrelli
2020-12-02Refactored Mesh internals and formats.reduz
-Changed how mesh data is organized, hoping to make it more efficient on Vulkan and GLES. -Removed compression, it now always uses the most efficient format. -Added support for custom arrays (up to 8 custom formats) -Added support for 8 weights in skeleton data. -Added a simple optional versioning system for imported assets, to reimport if binary is newer -Fixes #43979 (I needed to test) WARNING: -NOT backwards compatible with previous 4.x-devel, will most likely never be, but it will force reimport scenes due to version change. -NOT backwards compatible with 3.x scenes, this will be eventually re-added. -Skeletons not working any longer, will fix in next PR.
2020-11-27Merge pull request #40136 from Jummit/multiplayer-root-node-gettersFabio Alessandrelli
Add root_node as property of MultiplayerAPI
2020-11-27Disable SO_REUSEADDR for UDP.Fabio Alessandrelli
It allows binding multiple sockets to the same ADDR:PORT (unlike TCP, which still requires different ADDR:PORT combinations).
2020-11-23Initialize class/struct variables with default values in core/ and drivers/Rafał Mikrut
2020-11-21Use Vector2i instead of Vector2 for Image get_pixelv and set_pixelvAaron Franke
Co-authored-by: Andrii Doroshenko <xrayez@gmail.com>
2020-11-18Fix crash duplicating local-to-scene resourcesPedro J. Estébanez
2020-11-17Merge pull request #43610 from RandomShaper/fix_res_duplicateRémi Verschelde
Fix crash in resoure duplicate
2020-11-17Fix crash in resoure duplicatePedro J. Estébanez
2020-11-16Remove empty lines around braces with the formatting scriptAaron Franke
2020-11-16Merge pull request #43493 from timothyqiu/request-absolute-authorityFabio Alessandrelli
Allow HTTPClient to talk to a proxy server
2020-11-15fix custom loader/saver brokenZae
2020-11-14Allows HTTPClient to talk to proxy serverHaoyu Qiu
* Makes request uri accept absolute URL and authority * Adds Host header only when missing
2020-11-10Create Variant built-in functions.reduz
-Moved Expression to use this, removed its own. -Eventually GDScript/VisualScript/GDNative need to be moved to this. -Given the JSON functions were hacked-in, removed them and created a new JSONParser class -Made sure these functions appear properly in documentation, since they will be removed from GDScript
2020-11-10Merge pull request #40748 from RandomShaper/improve_packed_fs_apiRémi Verschelde
Improve/fix packed data API
2020-11-09Variant: Rename Type::_RID to Type::RIDRémi Verschelde
The underscore prefix was used to avoid the conflict between the `RID` class name and the matching enum value in `Variant::Type`. This can be fixed differently by prefixing uses of the `RID` class in `Variant` with the scope resolution operator, as done already for `AABB`.
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-11-07Increase the default HTTPClient download chunk size to 64 KiBHugo Locurcio
This improves download speeds at the cost of increased memory usage. This change also effects HTTPRequest automatically. See #32807 and #33862.
2020-10-18Refactor MethodBind to use variadic templatesreduz
Removed make_binders and the old style generated binders.
2020-10-10Fixes HTTPClient::poll crash after connection is self-assignedHaoyu Qiu
2020-10-05Improve format version mismatch error in binary loaderRémi Verschelde