bruvzg
1af06d3d46
Rename `scancode` to `keycode`.
...
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-25 12:30:33 +02:00
Juan Linietsky
3c0059650d
Added StringName as a variant type.
...
Also changed all relevant properties defined manually to StringName.
2020-02-21 14:25:29 +01:00
Fabio Alessandrelli
cbc450c0e5
Huge Debugger/EditorDebugger refactor.
2020-02-21 11:12:03 +01:00
Juan Linietsky
69c95f4b4c
Reworked signal connection system, added support for Callable and Signal objects and made them default.
2020-02-20 08:24:50 +01:00
Andrii Doroshenko (Xrayez)
fa766265a7
Fix MIMPAMPS typos in constants throughout the engine
2020-02-20 01:31:43 +02:00
Rémi Verschelde
49fec646cb
Fix compilation warnings and re-enable werror=yes on Travis
...
Fix -Wunused-variable, -Wunused-but-set-variable and -Wswitch warnings
raised by GCC 8 and 9.
Fix -Wunused-function, -Wunused-private-field and
-Wtautological-constant-out-of-range-compare raised by Clang.
Fix MSVC 2019 warning C4804 (unsafe use of type 'bool' in comparison
operation).
GCC -Wcpp warnings/Clang -W#warnings (`#warning`) are no longer raising
errors and will thus not abort compilation with `werror=yes`.
Treat glslang headers are system headers to avoid raising warnings.
Re-enables us to build with `werror=yes` on Linux and macOS, thus
catching warnings that would be introduced by new code.
Fixes #36132 .
2020-02-18 20:51:25 +01:00
Juan Linietsky
3205a92ad8
PoolVector is gone, replaced by Vector
...
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are
sugar for `Vector<Type>`.
2020-02-18 10:10:36 +01:00
Rémi Verschelde
54ac8eaba6
Remove more deprecated methods and code
2020-02-13 12:37:45 +01:00
Juan Linietsky
cf8c679a23
ObjectID converted to a structure, fixes many bugs where used incorrectly as 32 bits.
2020-02-12 14:24:54 -03:00
Andrea Catania
eb07e87981
Optmized data sent during RPC and RSet calls.
...
- Now is sent the method ID rather the full function name.
- The passed IDs (Node and Method) are compressed so to use less possible space.
- The variant (INT and BOOL) is now encoded and compressed so to use much less data.
- Optimized RPCMode retrieval for GDScript functions.
- Added checksum to assert the methods are the same across peers.
This work has been kindly sponsored by IMVU.
2020-02-12 13:36:47 +01:00
Juan Linietsky
2049dec79e
Added normalmap guided roughness mipmap generator, and a global roughness limiter.
2020-02-11 12:16:01 +01:00
Juan Linietsky
bed8980ca5
Re-implemented screen space ambient occlusion
2020-02-11 12:15:46 +01:00
Juan Linietsky
bd364d1447
Auto exposure re-implemented in Vulkan
2020-02-11 12:14:23 +01:00
Juan Linietsky
6ee2f5e6b6
More GIProbe work and fixes
2020-02-11 12:03:49 +01:00
Juan Linietsky
fb739f9da7
Fixed display menu visualizations.
2020-02-11 12:03:24 +01:00
Juan Linietsky
acf0f6c8a7
GIProbes working.
2020-02-11 12:03:20 +01:00
Juan Linietsky
dd3682e5fe
Modernized default 3D material, fixes material bugs.
2020-02-11 12:01:24 +01:00
Juan Linietsky
6deffa62fb
Several fixes to 3D rendering, and multimesh implementation.
2020-02-11 12:01:22 +01:00
Juan Linietsky
920db604d2
Rewrote large part of rendering, omni and spot shadows now work.
2020-02-11 12:01:18 +01:00
Juan Linietsky
449df8f688
Base 3D engine done, still untested, though.
2020-02-11 11:59:25 +01:00
Juan Linietsky
dc3b47f3ab
Vulkan/RD rasterizer now does clean exit.
2020-02-11 11:58:16 +01:00
Juan Linietsky
e1b3444415
Bugfixes and ability to better specify filter and repeat modes everywhere.
...
Removes antialiased flag for draw_* methods.
2020-02-11 11:53:28 +01:00
Juan Linietsky
1b4281b895
basic 2D engine is more or less working with Vulkan, including editor.
...
Still a lot to do
2020-02-11 11:53:27 +01:00
Juan Linietsky
3f335ce3d4
Texture refactor
...
-Texture renamed to Texture2D
-TextureLayered as base now inherits 2Darray, cubemap and cubemap array
-Removed all references to flags in textures (they will go in the shader)
-Texture3D gone for now (will come back later done properly)
-Create base rasterizer for RenderDevice, RasterizerRD
2020-02-11 11:53:26 +01:00
Andrea Catania
e6be3f68da
- Integrated NavigationServer and Navigation2DServer.
...
- Added Navigation Agents and Obstacles.
- Integrated Collision Avoidance.
This work has been kindly sponsored by IMVU.
2020-02-10 14:38:52 +01:00
Marcel Admiraal
6d69cd40bd
Add do..while(0) wrappers to macros without one.
...
- Add do..while(0) wrapper to ERR_FAIL_NULL macros.
- Add do..while(0) wrapper to ERR_FAIL_COND macros.
- Add do..while(0) wrapper to ERR_CONTINUE macros.
- Add do..while(0) wrapper to ERR_BREAK macros.
- Add do..while(0) wrapper to CRASH_COND macros.
- Add do..while(0) wrapper to ERR_FAIL macros.
- Add do..while(0) wrapper to ERR_PRINT macros.
- Add do..while(0) wrapper to WARN_PRINT macros.
- Add do..while(0) wrapper to WARN_DEPRECATED macros.
- Add do..while(0) wrapper to CRASH_NOW macros.
2020-02-05 11:19:12 +01:00
Marcel Admiraal
f0db13502a
Remove duplicate WARN_PRINT macro.
2020-02-05 11:13:24 +01:00
Marcel Admiraal
5af3b4ca27
Remove duplicate ERR_PRINT macro.
2020-02-05 11:13:24 +01:00
Rémi Verschelde
6472e09a85
SceneTree: Abort change_scene if we're quitting
...
Otherwise we can have a segmentation fault if we try to call
`add_child` on an already freed node.
Fixes #35323 .
2020-01-19 22:08:40 +01:00
Rémi Verschelde
eb89254690
Fix crash when confirming dialogs with Return key
...
Regression from #34040 , apparently making this a const reference
introduces issues (not sure why, but previous code worked fine).
Fixes #34691 .
Co-authored-by: dankan1890 <mewuidev2@gmail.com>
2020-01-17 12:47:23 +01:00
Tomasz Chabora
bbc36dbc67
Don't show conf warning if script is not tool
2020-01-07 21:28:16 +01:00
Rémi Verschelde
ce75a2f33d
Merge pull request #33987 from nekomatata/own-world-environment
...
Viewport environment is updated properly when set to own world
2020-01-06 15:26:52 +01:00
Hugo Locurcio
cc626acf45
Add a shorthand for setting the exit code using `SceneTree::quit()`
...
This reduces the amount of code required to exit a process with a
non-zero exit code. This pattern is also found in most other
programming languages.
2020-01-03 11:41:46 +01:00
Rémi Verschelde
a7f49ac9a1
Update copyright statements to 2020
...
Happy new year to the wonderful Godot community!
We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.
Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Hugo Locurcio
f1052aa893
Improve the Timer wait time property hint
...
- Make it possible to enter more precise values (up to 3 decimals).
- Make it possible to enter values above 4096.
2019-12-28 22:36:59 +01:00
Rémi Verschelde
3d6f991a17
Revert "Allow tab key to be used for shortcuts"
...
This reverts commit cafb888361
.
Fixes #34405 .
Reopens #8799 , #24064 .
2019-12-18 08:30:39 +01:00
Tomasz Chabora
77a8657633
Scroll ScrollContainer to focused children
2019-12-11 14:29:36 +01:00
Rafał Mikrut
ed1c4bc77d
Removed unused variables, add some constants numbers
2019-12-10 05:13:02 +01:00
PouleyKetchoupp
dc13750189
Viewport environment is updated properly when set to own world
...
When own_world property is set, the viewport stores a unique resource for the world. With this change it keeps being updated from changes made to the world property instead of storing a default empty world with environment settings that can't be modified.
Fixes #23412
2019-11-29 11:50:10 +01:00
x2f
f085110b20
Added more details in Timer.start() error message.
2019-11-27 14:11:15 -05:00
Rémi Verschelde
967cc2c014
Merge pull request #33862 from Faless/net/http_request_chunk_size
...
Add download_chunk_size property to HTTPRequest.
2019-11-25 14:29:59 +01:00
Fabio Alessandrelli
ed19b4076e
Add download_chunk_size property to HTTPRequest.
...
This allows setting the `read_chunk_size` of the internal HTTPClient.
This is important to reduce the allocation overhead and number of file
writes when downloading large files, allowing for better download speed.
2019-11-24 19:32:20 +01:00
Martin Capitanio
a7df198c94
Setting the node process priority should not trigger an error
...
Fixes #33749
This function can be called outside the scene tree.
2019-11-21 18:08:52 +01:00
volzhs
cdae65c4a6
Rename External MSAA to AndroidVR MSAA on Viewport property
...
following up f392c4ea7a
2019-11-20 03:02:11 +09:00
Rémi Verschelde
cc025fc8e7
Merge pull request #33663 from Calinou/add-node-get-process-priority
...
Implement `Node::get_process_priority()` and its associated property
2019-11-17 21:43:28 +01:00
Hugo Locurcio
ae76c62601
Implement `Node::get_process_priority()` and its associated property
...
This closes #33660 .
2019-11-17 17:48:50 +01:00
Holger Dammertz
1b9c2ec92e
Rename External MSAA to AndroidVR MSAA
...
A new external MSAA setting was introduced in https://github.com/godotengine/godot/pull/33518
that fixed issues on GLES2 and Oculus Mobile VR. To avoid misunderstanding it was suggested
by @BastiaanOlij and discussed on discord to rename it to AndroidVR.
2019-11-16 15:36:43 +01:00
Rémi Verschelde
4b8feff594
Merge pull request #33518 from BastiaanOlij/msaa_ext_modes
...
Add MSAA mode for Quest
2019-11-11 11:46:50 +01:00
Bastiaan Olij
4e2343160c
Add special external MSAA modes for GLES2 Rift S/Quest and OpenXR optimisation
2019-11-11 21:02:06 +11:00
Rémi Verschelde
8ffc56c3ca
Merge pull request #29579 from mrcdk/fix_29575
...
Drop the physics mouseover whenever a input has been handled.
2019-11-11 09:37:27 +01:00
Rémi Verschelde
621dc7022f
Merge pull request #27742 from rxlecky/camera-replication
...
Game camera override
2019-11-08 10:02:18 +01:00
Rémi Verschelde
2d3fcd0ff0
Merge pull request #30721 from NilsIrl/tab_key
...
Allow tab key to be used for shortcuts
2019-11-07 18:32:54 +01:00
Erik
8b0546d93b
Implement game camera override
...
Implemented uniform API in Viewport class to override 2D and/or
3D camera.
Added buttons in 2D and 3D editor viewport toolbars that override
the running game camera transform with the editor viewport camera
transform. Implemented via remote debugger protocol and camera
override API.
Removed LiveEditFuncs function pointers from ScriptDebugger class.
Since the debugger got access to the SceneTree instance (if one
exists), there is no need to store the function pointers. The live
edit functions in SceneTree are used directly instead. Also removed
the static version of live edit functions in SceneTree for the same
reason. This reduced the SceneTree -> Debugger coupling too since
the function pointers don't need to be set from SceneTree anymore.
Moved script_debugger_remote.h/cpp from 'core/' to 'scene/debugger/'.
This is because the remote debugger is now using SceneTree directly
and 'core/' classes should not depend on 'scene/' classes.
2019-10-23 02:51:32 +01:00
PouleyKetchoupp
e3d4b96ba7
Fixed crashes when renaming a state in AnimationNodeStateMachineEditor
...
Recursive calls to Control::_modal_stack_remove could cause a crash because of the list element not being invalidated while being erased from the list.
It happens in the state machine case by hiding a line edit control when it loses focus.
Fixes #23808
2019-10-22 16:28:11 +02:00
Rémi Verschelde
2906cef290
Merge pull request #32922 from nekomatata/fix-scene-timer-yield-leak
...
Fixed leak on exit when using yield with SceneTreeTimer
2019-10-22 14:17:58 +02:00
Rémi Verschelde
3aa5b54330
Merge pull request #32889 from nekomatata/node-update-config-warning
...
Expose Node::update_configuration_warning() to scripts
2019-10-22 12:42:09 +02:00
PouleyKetchoupp
1a9801f700
Fixed leak on exit when using yield with SceneTreeTimer
...
Use case:
yield(get_tree().create_timer(2), "timeout")
Some resources were never released because the SceneTreeTimer was keeping a reference to GDScriptFunctionState in its signal connections, while GDScriptFunctionState was holding a reference to the SceneTreeTimer object. Cleaning all signal connections on game exit fixes the issue.
Fixes #29946
2019-10-19 18:45:17 +02:00
PouleyKetchoupp
139c0a4afe
Expose Node::update_configuration_warning() to scripts
...
This method can be used to generate custom node warnings by script.
Node::_get_configuration_warning was already exposed to generate custom warnings, but it wasn't fully usable without being able to notify the scene tree when the warning needs to appear or change.
2019-10-17 12:20:35 +02:00
qarmin
616ab4fac2
Small fixes to redundand code, copy paste bugs
2019-10-14 11:40:55 +02:00
Michael Alexsander
82863b32de
Make tooltips have the same scale as their Controls
2019-10-05 02:04:40 -03:00
Rémi Verschelde
7e3dcf54ea
Merge pull request #30919 from nekomatata/timer-update-transform-fix
...
Fix GPU particle transform delay when created on SceneTree timer timeout
2019-10-01 06:54:09 +02:00
Nils ANDRÉ-CHANG
0024dd7bb5
Merge branch 'master' into tab_key
2019-09-26 20:36:12 +01:00
Rémi Verschelde
351c45a461
Merge pull request #32047 from codecustard/fix_scrollwheel_triggering_focus_change
...
Fix scrollwheel triggering focus change
2019-09-25 15:23:47 +02:00
Rémi Verschelde
dec10dd776
Merge pull request #32051 from qarmin/some_error_explanation
...
Added some obvious errors explanations
2019-09-25 11:51:54 +02:00
qarmin
17732fe698
Added some obvious errors explanations
2019-09-25 10:28:50 +02:00
fhuya
a7712cc9e4
Add new events and accompanying logic to notify when the app is paused and resumed on Android devices.
2019-09-19 13:29:49 -07:00
Emmanuel Barroga
b8007b3947
Fix scrollwheel triggering focus change
...
Clicking or using the scrollwheel outside of the focused control triggers a focus change. This makes sense for mouse clicks, but scrollwheeling outside the focuses control does not. This PR ignores scrollwheeling outside of the focused control.
2019-09-08 18:13:44 -07:00
Fabio Alessandrelli
768d637a1b
Merge pull request #31870 from JFonS/add_network_profiler
...
Add network profiler
2019-09-05 16:34:36 +02:00
jfons
8244f535cd
Add network profiler
2019-09-05 09:48:36 +02:00
Rémi Verschelde
750f8d4926
Merge pull request #31844 from 2shady4u/TweenInSceneTree
...
Timer and Tween check if they are in SceneTree when starting
2019-09-03 18:35:20 +02:00
shaderbeast
5e337b31eb
Added is_inside_tree() check in both Timer and Tween
...
Tween now throws error and doesnt even execute.
2019-09-03 13:26:41 +02:00
Rémi Verschelde
4dfea5fc9c
Merge pull request #31389 from Calinou/add-node-comments
...
Add an `editor_description` property to Node for documentation purposes
2019-09-03 12:55:22 +02:00
Rémi Verschelde
a1fe20a57e
Merge pull request #31880 from nekomatata/joystick-ui-navigation
...
Fixed UI navigation using joy axis inputs
2019-09-03 12:02:18 +02:00
Tomasz Chabora
892318f5c7
Add autocomplete support for change_scene()
2019-09-02 19:07:02 +02:00
PouleyKetchoupp
01c9ad1cdf
Fixed UI navigation using joy axis inputs
...
Fixes #31879
2019-09-02 04:36:58 +02:00
merumelu
5c7c7dbcb5
HTTPRequest: include faulty URLs in error texts
2019-08-31 16:57:46 +02:00
bruvzg
db6d4352ea
[macOS] Add methods to modify global and dock menus. Add ability to open multiple editor/project manager instances, recent/favourite project list to project manager dock menu and opened scene list to editor dock menu.
2019-08-26 16:45:49 +03:00
Hugo Locurcio
9eb10f1e4a
Add an `editor_description` property to Node for documentation purposes
...
It is implemented using editor-only metadata, in a way similar to
edit locking or Position2D gizmo extents.
This closes #2082 .
2019-08-23 15:53:07 +02:00
Hugo Locurcio
c62302a432
Improve the scene tree signals/groups tooltip
...
The tooltip now displays the number of connections and groups
that are assigned to the hovered node.
2019-08-17 14:20:16 +02:00
IAmActuallyCthulhu
82b9557803
Remove redundant author doc comments
2019-08-12 04:26:38 -05:00
Tomasz Chabora
af5e0fff66
Remove ERR_EXPLAIN from scene/* code
2019-08-09 13:54:52 +02:00
Rémi Verschelde
4d7439adaa
Merge pull request #31185 from mitchcurtis/get_path
...
Improve error message in Node::get_path()
2019-08-08 14:05:49 +02:00
Rémi Verschelde
f0ad034a1d
Merge pull request #31182 from mitchcurtis/remove_child
...
Improve error message in Node::remove_child()
2019-08-08 11:20:50 +02:00
Mitch Curtis
ae4a382dd2
Improve error message in Node::remove_child()
2019-08-08 09:38:32 +02:00
Mitch Curtis
c332eab864
Improve error message in Node::get_path()
2019-08-07 21:16:54 +02:00
Rémi Verschelde
05d58a4e6a
Merge pull request #31122 from Muller-Castro/enhancement
...
Unnecessary reassignments
2019-08-07 15:23:38 +02:00
Rémi Verschelde
ba541bceca
Merge pull request #31077 from qarmin/coverity_bugs
...
Change some code proposed by Coverity and Cppcheck
2019-08-07 13:49:33 +02:00
qarmin
e0b5b21863
Add some code changes/fixes proposed by Coverity and Clang Tidy
2019-08-07 12:54:30 +02:00
Muller-Castro
ffacd0a148
Removed unnecessary reassigns
...
Those assignments are duplicated since add_to_group() or remove_from_group() aren't changing the state of those members.
2019-08-06 17:40:47 -03:00
merumelu
dcd551bf78
Remove Editor dependency from SceneTree
2019-08-05 19:46:23 +02:00
PouleyKetchoupp
c6b82f108a
Update transforms after timers update to make sure changes are made before render
...
Fixes #29952
2019-07-29 12:44:16 +02:00
qarmin
aab8da25ad
Fix some code found by Coverity Scan and PVS Studio
2019-07-23 09:14:31 +02:00
Nils ANDRÉ-CHANG
cafb888361
Allow tab key to be used for shortcuts
2019-07-20 22:32:49 +01:00
Rémi Verschelde
d15cf7b672
Merge pull request #30576 from qarmin/lgtm_coverage
...
Changed some code reported by LGTM and Coverity
2019-07-20 12:00:13 +02:00
qarmin
6cbaf7662f
Changed some code showed in LGTM and Coverage
2019-07-20 08:09:57 +02:00
Rémi Verschelde
21a2cd1a04
Merge pull request #23270 from silvanocerza/remote_scene_tree_filter
...
Implemented remote scene tree filtering
2019-07-19 15:38:07 +02:00
Rémi Verschelde
7a643acb1f
Merge pull request #30517 from kawa-yoiko/modal-freeze
...
Fix multiple popup freezing
2019-07-12 10:18:02 +02:00
Rémi Verschelde
111154a4a5
Merge pull request #30498 from bojidar-bg/30495-cannot-insert-key
...
Fix inability to insert keys via Insert Key context menu
2019-07-11 19:36:33 +02:00
Shiqing
c16e764bb2
Fix #29478 multiple modals possibly freeze
2019-07-11 17:40:42 +08:00
Bojidar Marinov
8ecbb6a20d
Fix inability to insert keys via Insert Key context menu
...
Fixes #30495
2019-07-10 21:03:04 +03:00