summaryrefslogtreecommitdiff
path: root/scene/main/scene_tree.cpp
AgeCommit message (Collapse)Author
2018-07-29Ensure process notification is received only if really enabled, fixes #7894Juan Linietsky
2018-07-26Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam
This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
2018-07-23Merge pull request #19888 from AndreaCatania/pryJuan Linietsky
Implemented proceses priority
2018-07-23Implemented proceses priorityAndrea Catania
2018-07-03-Fix fullscreen on Windows with a HiDPI monitor but a non-HiDPI projectJuan Linietsky
-Replaced some viewport size calls to screen size, since viewport size should be deprecated at this point..
2018-07-02Add a new notification to detect crashes on native scriptsMarcelo Fernandez
2018-06-03Add option to disable automatic multiplayer pollFabio Alessandrelli
Automatic poll from SceneTree is enabled by default. This allows for polling (and thus RPCs/RSETs) manually in other loops (e.g. physics, thread, specific step) and for proper mutex protecion when accessing the multiplayer API from threads (e.g. for sending larger files in chunks).
2018-05-08Rename multiplayer_api to just multiplayer.Fabio Alessandrelli
Only the class name retain the MultiplayerAPI name
2018-05-03Merge pull request #18514 from neikeq/api-hash-fixesRémi Verschelde
API hash fixes
2018-04-30Implement universal translation of touch to mousePedro J. Estébanez
Now generating mouse events from touch is optional (on by default) and it's performed by `InputDefault` instead of having each OS abstraction doing it. (*) The translation algorithm waits for a touch index to be pressed and tracks it translating its events to mouse events until it is raised, while ignoring other pointers. Furthermore, to avoid an stuck "touch mouse", since not all platforms may report touches raised when the window is unfocused, it checks if touches are still down by the time it's focused again and if so it resets the state of the emulated mouse. *: In the case of Windows, since it already provides touch-to-mouse translation by itself, "echo" mouse events are filtered out to have it working like the rest. On X11 a little hack has been needed to avoid a case of a spurious mouse motion event that is generated during touch interaction. Plus: Improve/fix tracking of current mouse position. ** Summary of changes to settings: ** - `display/window/handheld/emulate_touchscreen` becomes `input/pointing_devices/emulate_touch_from_mouse` - New setting: `input/pointing_devices/emulate_mouse_from_touch`
2018-04-29Fix binding some core API methods only in tools buildsIgnacio Etcheverry
2018-04-08Merge pull request #17227 from Faless/multiplayer_apiJuan Linietsky
[RFC] MultiplayerAPI refactor
2018-03-19Fix oversampled font artifacts after resizeRuslan Mustakov
Font update after resize relies on the viewport size which was updated after the font was already refreshed, which resulted in artifacts when it was rendered into the actual/new viewport size. Fixes #15173.
2018-03-03Use MultiplayerAPI class for high level networkingFabio Alessandrelli
Remove networking related logic from Node and SceneTree. SceneTree now simply relay all networking related stuff to MultiplayerAPI for compatibility
2018-03-03FIX Windows enter/exit mouse notificationsRanoller
Fix to this issue #17202
2018-02-21Fix typos with codespellluz.paz
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt` Whitelist consists of: ``` ang doubleclick lod nd que te unselect ```
2018-01-12Bind many more properties to scriptsBojidar Marinov
Notable potentially breaking changes: - PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL - Some properties were renamed, and sometimes even shadowed by new ones - New getter methods (some virtual) were added
2018-01-06Fix typo in new stringsPoommetee Ketson
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
2018-01-03Merge pull request #15192 from volzhs/expose-quit-on-go-backRémi Verschelde
Bind SceneTree::set_quit_on_go_back() to gdscript
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-12-30Bind SceneTree::set_quit_on_go_back() to gdscriptvolzhs
Fix #15189
2017-12-26Removed the InputEvent ID field, which was unused and can cause bugs.Juan Linietsky
2017-12-20Fixed wrong Project Settings direction on an error message.Michael Alexsander Silva Dias
2017-12-19Make dynamic font oversampling fully dynamic.Juan Linietsky
2017-12-19Added font oversampling supportJuan Linietsky
2017-12-07Style: Apply new clang-format 5.0 style to all filesRémi Verschelde
2017-12-04Do not cancel event if no need to cancel it. Fixes problem with GUI in 3D.Juan Linietsky
2017-11-26Merge pull request #12572 from RandomShaper/onion-skinningJuan Linietsky
Onion skinning
2017-11-25Implement onion skinning for the animation editorPedro J. Estébanez
2017-11-25Made Vector::ptrw explicit for writing, compiler was sometimes using the ↵Juan Linietsky
wrong function, leading to unnecesary copy on writes and reduced performance.
2017-10-20Merge pull request #12224 from NathanWarden/scene_tree_added_signalRémi Verschelde
Added a node_added signal to the SceneTree
2017-10-20Fix window display shrink can't set to float numbersgeequlim
2017-10-19Added a node_added signal to the SceneTreeNathan Warden
2017-09-30Renamed fixed_process to physics_processAndreaCatania
2017-09-25Merge pull request #11545 from ↵Rémi Verschelde
Paulb23/line_edit_caret_blink_resetting_issue_10764 Fixed caret blink and speed resetting in scenes, issue 10764 [ci skip]
2017-09-25Merge pull request #11552 from Tetane/masterPoommetee Ketson
Add missing constant binding STRETCH_ASPECT_EXPAND in SceneTree
2017-09-24Add a missing constant binding in SceenTreeTetane
Add missing constant binding "STRETCH_ASPECT_EXPAND" (I cannot test it because godot does not compile anymore on my pc (windows10))
2017-09-24Fixed caret blink and speed resetting in scenes, issue 10764Paulb23
2017-09-08Fix unused variable warningsHein-Pieter van Braam
The forth in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-01Fix files headerPoommetee Ketson
2017-08-31Do not error flood if removing default environment. Closes #9945Juan Linietsky
2017-08-27Dead code tells no talesRémi Verschelde
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde
2017-08-27Merge pull request #10579 from quinnyo/rpc-sender-idRémi Verschelde
Method to get ID of RPC calling peer
2017-08-26Add two missing Null checksHein-Pieter van Braam
These Null checks were removed in #10581 but actually changed the logic of the functions in this case. This fixes #10654
2017-08-24Convert Object::cast_to() to the static versionHein-Pieter van Braam
Currently we rely on some undefined behavior when Object->cast_to() gets called with a Null pointer. This used to work fine with GCC < 6 but newer versions of GCC remove all codepaths in which the this pointer is Null. However, the non-static cast_to() was supposed to be null safe. This patch makes cast_to() Null safe and removes the now redundant Null checks where they existed. It is explained in this article: https://www.viva64.com/en/b/0226/
2017-08-23add SceneTree method to get ID of rpc calling peerQuinn Schwab
2017-08-22Add missing NULL check for the new show_about() callMarcelo Fernandez
2017-08-22Fix build after merge of #10254Rémi Verschelde