Rémi Verschelde
98e4bda9f9
Merge pull request #26007 from marxin/fix-23015-cast
...
Make direct casting among Error and godot_error enums (#23015 ).
2019-02-18 13:51:16 +01:00
Rémi Verschelde
f023e40f6e
Merge pull request #26011 from AndreaCatania/bugfix
...
Added support to scale areas, fixes #23448
2019-02-18 13:21:02 +01:00
Andrea Catania
90d05cbe30
Added support to scale areas
2019-02-18 12:57:55 +01:00
marxin
66a43898d4
Make direct casting among Error and godot_error enums ( #23015 ).
2019-02-18 10:26:22 +01:00
Rémi Verschelde
1ffd1bc8f3
doc: Sync classref with current source
2019-02-18 09:35:29 +01:00
Rémi Verschelde
fd60724c3d
Merge pull request #25715 from hpvb/fix-25598
...
Add a maximum recusion depth to _guess_expression_type
2019-02-16 14:39:57 +01:00
Ignacio Etcheverry
f5477ee36f
Merge pull request #25917 from neikeq/zz
...
Mono: Get rid of irrelevant error and fix export template build errors
2019-02-15 20:08:41 +01:00
Ignacio Etcheverry
a8dfe9ff7f
Don't print 'Cannot find Mono in the registry' if bundled with Godot
...
Closes #24753
2019-02-15 19:52:32 +01:00
Ignacio Etcheverry
d17ba9a140
Mono: Fix export template build errors
...
Fixes #25903
2019-02-15 19:52:22 +01:00
Ignacio Etcheverry
b41a793592
Fix Godot.Reference marshalling from MonoObject* to Variant
...
Need to cast Ref<T> to Variant instead of constructing Variant from Object*, otherwise the Variant won't hold a reference.
2019-02-14 22:54:15 +01:00
Rémi Verschelde
89ca15693e
Merge pull request #25866 from neikeq/issue-25121
...
Fix exported property values being lost if base GDScript fails to parse
2019-02-14 09:21:19 +01:00
Ignacio Etcheverry
2f8d1a321a
Fix exported property values being lost if base GDScript fails to parse
2019-02-14 02:36:19 +01:00
Rémi Verschelde
5fc86026ca
Fix typos with codespell
...
Using codespell 1.14.0.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
doubleclick
lod
nd
numer
que
te
unselect
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-02-13 09:23:29 +01:00
Rémi Verschelde
55ca2a7c88
Merge pull request #25821 from akien-mga/sync-class-and-filenames
...
Ensure classes match their header filename
2019-02-13 08:49:39 +01:00
Aaron Franke
f97eb6d881
[Mono] Fix Transform2D rotation and scale
2019-02-12 17:59:29 -05:00
Rémi Verschelde
322fad70bd
Fix copyright year in VideoStreamGDNative
2019-02-12 23:05:30 +01:00
Rémi Verschelde
fe7e11e008
Modules: Ensure classes match their header filename
...
Renamed:
- `modules/mono/mono_gd/gd_mono_class_member.h` -> `i_mono_class_member.h`
- `modules/upnp/upnpdevice.h` -> `upnp_device.h`
- `modules/websocket/websocket_multiplayer.h` -> `websocket_multiplayer_peer.h`
2019-02-12 22:59:56 +01:00
Rémi Verschelde
c5dcbeb160
Scene: Ensure classes match their header filename
...
Also drop some unused files.
Renamed:
- `scene/2d/navigation2d.h` -> `navigation_2d.h`
- `scene/2d/screen_button.h` -> `touch_screen_button.h`
- `scene/3d/scenario_fx.h` -> `world_environment.h`
- `scene/audio/audio_player.h` -> `audio_stream_player.h`
- `scene/resources/bit_mask.h` -> `bit_map.h`
- `scene/resources/color_ramp.h` -> `gradient.h`
- `scene/resources/shape_line_2d.h` -> `line_shape_2d.h`
- `scene/resources/scene_format_text.h` -> `resource_format_text.h`
- `scene/resources/sky_box.h` -> `sky.h`
Dropped:
- `scene/resources/bounds.h`
2019-02-12 17:21:48 +01:00
Rémi Verschelde
c4835c4345
Merge pull request #25721 from neikeq/ww
...
Use script instance binding for objects constructed from C#
2019-02-12 15:29:25 +01:00
Rémi Verschelde
75dae1b9a9
Drivers, main, servers: Ensure classes match their header filename
...
Renamed:
- `drivers/alsamidi/alsa_midi.h` -> `midi_driver_alsamidi.h`
(same for `coremidi` and `winmidi`)
- `main/timer_sync.h` -> `main_timer_sync.h`
- `servers/visual/visual_server_global.h` -> `visual_server_globals.h`
2019-02-12 14:39:47 +01:00
Rémi Verschelde
b7cc2bb1e2
Core: Ensure classes match their header filename
...
Also drop some unused files.
Renamed:
- `core/dvector.h` -> `pool_vector.h`
- `core/io/resource_import.h` -> `resource_importer.h`
- `core/sort.h` -> `sort_array.h`
- `core/string_db.h` -> `string_name.h`
Dropped:
- `core/allocators.h`
- `core/os/shell.h`
- `core/variant_construct_string.cpp`
2019-02-12 13:34:25 +01:00
Rémi Verschelde
13c50e8aa5
Merge pull request #25481 from hpvb/fix-ubsan-asan-reports
...
Fix many asan and ubsan reported issues
2019-02-12 12:21:01 +01:00
Rémi Verschelde
e40395669c
Merge pull request #25550 from DualMatrix/fix-25357
...
Fixed Null appearing inside export variables with type hints and no default value
2019-02-12 12:01:22 +01:00
Rémi Verschelde
f12b47b65e
Merge pull request #25783 from Xrayez/csg-shapes-visibility
...
Fix CSGShape not updating on changing visibility
2019-02-12 11:18:25 +01:00
Carter Anderson
22bf89e970
Use "origin" instead of "o" in Transform2D.Rotation
2019-02-11 23:46:55 -08:00
Ignacio Etcheverry
be98a6ebbc
Merge pull request #25724 from aaronfranke/mono-transform
...
[Mono] Fix Transform2D origin
2019-02-11 22:27:49 +01:00
Ignacio Etcheverry
9115c6ab15
Merge pull request #25803 from neikeq/yy
...
Windows: Default to system MSBuild and add VSCode hint path
2019-02-11 22:25:11 +01:00
Ignacio Etcheverry
da00c338a3
Add VSCode hint path for Windows
2019-02-11 22:03:51 +01:00
Ignacio Etcheverry
9a08b90472
Default to MSBuild from VS Build Tools instead of Mono's
...
Don't pass FrameworkPathOverride to MSBuild. It's causing issues with some nuget packages.
2019-02-11 22:03:37 +01:00
Andrii Doroshenko (Xrayez)
095f472a0b
Fix CSGShape not updating on changing visibility
...
Hiding CSGShape should force the CSG operation to skip it which is intented
behaviour according to how CSGBrush is created for each shape.
2019-02-10 23:53:31 +02:00
Ignacio Etcheverry
eda4be193f
Merge pull request #25773 from neikeq/xx
...
Do not initialize Mono if 'res://.mono/' and mscorlib are missing
2019-02-10 19:08:28 +01:00
Ignacio Etcheverry
3afd9deded
Merge pull request #25774 from neikeq/fix-noreturn-attr-check
...
Fix check to determine if [[noreturn]] attribute is usable
2019-02-10 19:08:15 +01:00
Ignacio Etcheverry
b67955afca
Fix check to determine if [[noreturn]] attribute is usable
2019-02-10 18:45:18 +01:00
Ignacio Etcheverry
7f596270f3
Fix exporting assemblies from wrong output path
...
This is the whole reason 'fill_search_dirs' was added for, yet somehow I forgot to pass the config parameter.
2019-02-10 18:37:42 +01:00
Ignacio Etcheverry
24a2ae7f3c
Do not initialize Mono if 'res://.mono/' and mscorlib are missing
...
This is needed to avoid aborting due to missing mscorlib for projects that do not use C#.
If 'res://.mono/' exists, then we assume the project uses C#, in which case a missing mscorlib should still abort.
2019-02-10 18:34:37 +01:00
Rémi Verschelde
f614f15506
doc: Misc formatting fixes
2019-02-10 13:30:48 +01:00
Rémi Verschelde
74932b905e
doc: Sync classref with current source
2019-02-10 13:01:03 +01:00
Aaron Franke
25a90bcf1a
[Mono] Fix Transform2D origin
2019-02-09 14:56:14 -05:00
Aaron Franke
3f837d5cc5
[Core] Rename Matrix3 file to Basis
...
The code already referred to "Basis", it's just the file name that was different for some reason.
2019-02-09 14:42:23 -05:00
Rémi Verschelde
2a0c9faac2
Merge pull request #25614 from QbieShay/issue_25425
...
Fix generating GDNative API struct for 1.1
2019-02-09 13:09:13 +01:00
Rémi Verschelde
6c243326bd
Merge pull request #25650 from willnationsdev/script-icon
...
Fix script class icons looking for paths at runtime
2019-02-09 12:22:51 +01:00
Ignacio Etcheverry
9df44c2d2c
Use script instance binding for objects constructed from C#
...
Only possible if the object class is a "native type". If the object class is a user class (that derives a "native type") then a script is needed.
Since CSharpLanguage does cleanup of script instance bindings when finished, cases like #25621 will no longer cause problems.
Fixed ~Object() trying to free script instance bindings after the language has already been removed, which would result in a NULL dereference.
2019-02-09 00:32:18 +01:00
Ignacio Etcheverry
5f8c30fbca
Mono: Create player script metadata when building manually
...
Previously this was only done when building the script for running the game. This was a problem because the user could want to build the project manually with the "Build project" button, to then run the game from the command line or similar.
2019-02-08 22:49:27 +01:00
Hein-Pieter van Braam
e937e74b69
Add a maximum recusion depth to _guess_expression_type
...
When a recursive declaration ends up in a GDScript file the
_guess_expression_type function would start looping and eventually run
out of stack space.
We now cap recusion for this function to 100 frames.
This fixes #25598
2019-02-08 22:39:08 +01:00
Karroffel
682bc07035
Fix generating GDNative API struct for 1.1
...
Fixes #25425 .
2019-02-08 19:28:40 +01:00
Rémi Verschelde
9dcbf961e5
Merge pull request #25500 from daniel-abbott/BT_Debug_disable
...
Disable BT_DEBUG, works around #25476 and #25431
2019-02-08 12:02:09 +01:00
Rémi Verschelde
7fcdadadf4
Merge pull request #25518 from bojidar-bg/25505-wrong-type-error-message
...
Fix wrong error messages for invalid arguments when calling functions through call
2019-02-08 11:18:30 +01:00
Daniel Abbott
b3c0cb08b0
Disable BT_DEBUG, works around #25476 and #25431
2019-02-08 11:11:01 +01:00
Will Nations
c4ff433b17
Fix script class icon filepath lookups at runtime.
2019-02-06 16:17:56 -06:00
Ignacio Etcheverry
4aa4916b11
Mono: Workaround to fix 'flushing' errors when building at editor startup
2019-02-05 18:51:24 +01:00
Ignacio Etcheverry
919fa75803
Merge pull request #25574 from neikeq/ss
...
Mono: Lifetime fixes for CSharpInstance and instance binding data
2019-02-03 07:36:33 +01:00
Ignacio Etcheverry
d8593747e0
Mono: Fix default debugger agent argument never being used
2019-02-03 06:51:07 +01:00
Ignacio Etcheverry
3233083f63
Mono: Lifetime fixes for CSharpInstance and instance binding data
...
Avoid CSharpInstance from accessing its state after self destructing (by deleting the Reference owner).
It's now safe to replace the script instance without leaking or crashing.
Also fixed godot_icall_Object_weakref return reference being freed before returning.
2019-02-03 06:47:25 +01:00
Ignacio Etcheverry
4e4e889c75
Merge pull request #25478 from neikeq/rr
...
Mono: Fix MonoPosixHelper not being found
2019-02-03 06:31:52 +01:00
Ignacio Etcheverry
065828d159
Mono: Fix MonoPosixHelper not being found
2019-02-03 05:38:47 +01:00
Ignacio Etcheverry
d3c51a5dfb
Mono: Cleanup
2019-02-03 05:38:40 +01:00
DualMatrix
ff508dfede
Fixed Null appearing inside export variables with type hints and no default value
...
The default value of the type is now used to initialise it.
export(int) A
Will now have A be 0 istead of Null even though it still showed as 0 before in the inspector, fixes #25357
2019-02-01 21:18:14 +01:00
Bojidar Marinov
d2e43475b5
Fix wrong error messages for invalid arguments when calling functions through call
...
Fixes #25505
2019-01-31 17:02:18 +02:00
Andrea Catania
5a26c7e0e5
Avoid inertia calculation for empty shape - Bullet
2019-01-30 10:33:33 +01:00
Hein-Pieter van Braam
d308eb091a
Fix many asan and ubsan reported issues
...
This allows most demos to run without any ubsan or asan errors. There
are still some things in thirdpart/ and some things in AudioServer that
needs a look but this fixes a lot of issues. This should help debug less
obvious issues, hopefully.
This fixes #25217 and fixes #25218
2019-01-30 06:43:56 +01:00
Rémi Verschelde
cc0842f9a6
Prevent upscaled SVG from exceeding Image bounds
...
Also expose Image MAX_WIDTH and MAX_HEIGHT.
Fixes #24455 .
2019-01-28 16:00:15 +01:00
Rémi Verschelde
7fe66bc70f
Merge pull request #25401 from capnm/capnm-cleanup
...
Cleanup unused header file
2019-01-28 09:53:16 +01:00
Rémi Verschelde
de1c3f3c89
Merge pull request #25379 from Faless/net/ws/mp_docs
...
Update docs and errors for WebSocket module
2019-01-28 09:35:05 +01:00
Andrea Catania
8d4617439c
Fixed Rigidbody first frame center spawn
2019-01-28 08:30:26 +01:00
Martin Capitanio
e07e154ebf
Cleanup unused header
2019-01-28 06:29:39 +01:00
Fabio Alessandrelli
14e59ff112
Update docs and errors for WebSocket module
2019-01-28 02:12:50 +01:00
Juan Linietsky
0d438c7b18
Make CSG Shape work with GIProbe, fixes #20465
2019-01-27 18:29:17 -03:00
Rémi Verschelde
d0f289b0d9
Merge pull request #25314 from marxin/fix-24417-class-memaccess
...
Fix class memaccess
2019-01-27 21:32:26 +01:00
Rémi Verschelde
57c0082533
Mono: Test Windows binaries with lowercase extension
...
To help users writing good cross-platform code, Godot's
`FileAccessWindows:open()` will issue a warning on case mismatch, which
happens here with capitalized extensions given by `PATHEXT` compared to
actual file extensions which are lowercase 99% of the time.
Fixes #25368 .
2019-01-27 11:54:32 +01:00
Rémi Verschelde
3e78a55e14
Bullet: Enable BT_DEBUG on debug builds
...
Fixes #25301 .
2019-01-27 11:08:01 +01:00
Rémi Verschelde
2211d73300
Workaround GCC 6 & 7 ICE on armv7hl
...
Fixes #16100 .
2019-01-26 14:37:36 +01:00
Juan Linietsky
6504b88547
Ensure get script method list also checks base classes, fixes #23384
2019-01-25 10:09:44 -03:00
marxin
32713e60ab
Use placement new in texture_loader_pvr.cpp ( #24417 ).
...
Use constructor via placement new and swap colors directly.
2019-01-25 12:41:54 +01:00
George Marques
587c1c90cf
GDScript: do second pass of parsing on release
...
Some construct (like match) actually depends on the second pass. This
adds some extra checks to not perform specific type-checks on release
since not all type information is available.
2019-01-23 18:45:33 -02:00
George Marques
8464cce857
GDScript: fix default value for autoexported typed vars
2019-01-23 18:06:58 -02:00
George Marques
f439397126
GDScript: read constants from parent scripts
...
This is needed to create export variables from enums defined in a parent
class.
2019-01-23 17:42:06 -02:00
George Marques
f4546fc0cd
GDScript: don't allow calling non-static function from script
2019-01-23 17:42:06 -02:00
George Marques
ba13aae9af
GDScript: allow local classes to be used as types
2019-01-23 17:42:06 -02:00
Allan Daemon
465842d8ea
Fix #24895 (support for optional parameters in setters)
2019-01-23 14:01:49 -02:00
Ignacio Etcheverry
bc8b61bb06
Mono: Fix hot reload build errors and cleanup
2019-01-22 18:33:36 +01:00
Ignacio Etcheverry
077e489773
Mono: Add assembly reloading to running games
...
Add environment variable to specify a custom --debugger-agent for mono.
2019-01-21 22:44:09 +01:00
Rémi Verschelde
a0730652fc
Merge pull request #25180 from AndreaCatania/arov
...
Fixed area overlaps if not move
2019-01-21 10:39:41 +01:00
Andrea Catania
a9214bcee7
Fixed area overlaps if not move
2019-01-21 08:30:49 +01:00
Ignacio Etcheverry
0ac5be8368
Fix C# script metadata creation error due to missing directory
2019-01-21 00:57:03 +01:00
Ignacio Etcheverry
ca8100f29f
Workaround for bug with Mono's MSBuild and BaseIntermediateOutputPath
...
BaseIntermediateOutputPath seems to be empty by default. The workaround is to explicitly set it.
Also fixed passing char instead of char[] to String.Split. Why was this even working with Mono?
2019-01-21 00:38:28 +01:00
Rémi Verschelde
d024979e84
GDScript: Fix return value of "lerp" builtin
...
Fixes #25082 , fixes #24709 .
2019-01-18 10:47:04 +01:00
Ignacio Etcheverry
ce36351065
Merge pull request #25080 from neikeq/mm-c
...
C# Bindings Generator: Fix vararg methods with custom return type
2019-01-18 01:30:43 +01:00
Ignacio Etcheverry
e8a1d4babd
Merge pull request #25079 from neikeq/mm-b
...
C#: Fix trying to build when there's no solution
2019-01-18 01:23:15 +01:00
Ignacio Etcheverry
938a2515cb
Merge pull request #25078 from neikeq/mm-a
...
C#: Fix crash due to missing gchandle ref null check
2019-01-18 01:19:51 +01:00
Ignacio Etcheverry
8f26c54c40
C# Bindings Generator: Fix vararg methods with custom return type
2019-01-18 01:03:44 +01:00
Ignacio Etcheverry
9cd24b4f6d
C#: Fix trying to build when there's no solution
...
This would cause errors that shouldn't happen unless there was something to build.
2019-01-18 01:03:15 +01:00
Ignacio Etcheverry
b48dd1bdaf
C#: Fix crash due to missing gchandle ref null check
2019-01-17 23:15:20 +01:00
Hein-Pieter van Braam
f958ba5abc
Merge pull request #25069 from vnen/gdscript-fixes
...
A bit more of GDScript fixes
2019-01-17 18:54:42 +01:00
George Marques
30f02dd421
GDScript compiler: check if subclass exists before comparison
...
Otherwise these checks might trigger the insertion of an empty value,
leading to crashes.
2019-01-17 14:38:28 -02:00
George Marques
ced9fcafd4
GDScript: clarify error message about cycles
...
They may happen with any cyclic dependency, not only with inheritance.
2019-01-16 16:39:44 -02:00
George Marques
20e6ff263a
GDScript: fix type-check of indexed values
2019-01-16 16:02:56 -02:00
Rémi Verschelde
b910b22d74
Merge pull request #25001 from jlahman/gdscript-export-var-fix
...
Fixes export PackedScene "reset to default" throwing errors
2019-01-16 13:17:53 +01:00
Rémi Verschelde
7f4ee36469
Android: Add support for x86_64 architecture
...
Like arm64v8, this is only supported by API 21 and later,
so we enforce 21 as min API for x86_64.
Part of #25030 .
2019-01-16 11:39:39 +01:00
Rémi Verschelde
f0893235a5
Merge pull request #25032 from akien-mga/static-analysis
...
Fix some errors found by static analysis
2019-01-16 11:18:53 +01:00
Rémi Verschelde
053d7f3765
Fix some errors found by static analysis
...
Fixes items 10, 16 and 19 from PVS-Studio blog post
in #24014 .
2019-01-16 10:59:45 +01:00
jlahman
6661ceadcc
Fixes export PackedScene "reset to default" throwing errors
...
When exporting variables from a gdscript, default values of uninitialized variables would never be set. This caused the default value to be Variant::NIL, and when a user tried to reset the variable through the editor, an error would be thrown because too few arguments would be counted(end of argument list for calls are detected by NIL values).
Fixed by simply setting default value to an empty variant of the proper type in gdscript parser.
2019-01-15 22:20:36 -05:00
George Marques
31433ae8e4
GDScript: check for underscore prefix when type-checking
...
Some classes are represented internally with an underscore prefix, so we
need to make sure we match this representation when type-checking,
otherwise the check might fail on a valid scenario.
2019-01-15 19:50:48 -02:00
George Marques
4f72c6be8a
GDScript: consider constructors as always existing
...
There's always a constructor, even if implicit, especially for native
types.
Also don't check for signature match on function call, since this
information is not available in release builds.
2019-01-15 19:15:19 -02:00
George Marques
b0c3a3f2da
GDScript: allow objects to be keys of dictionaries
...
The engine allows this already, so the parser should not fail in this
case.
2019-01-15 18:18:03 -02:00
George Marques
573fab7447
GDScript: don't check types on release builds
...
A lot of information is missing on release, and the checks might take a
performance hit. Also, having GDScript more lenient on release is
usually desirable.
2019-01-15 17:02:15 -02:00
George Marques
4d1551dbb5
GDScript autocomplete: don't carry values when guessing from is
...
Guessing the type from an `is` operator should no be considered an
assigment. This would cause crashes in certain scenarios.
2019-01-15 16:03:56 -02:00
Anish
8c1677fc3f
Fixed infinite loop at end of video.
...
A missing condition caused infinite looping, despite
the video playing flag being set to false.
Small change to fix.
Fixes : #20552
2019-01-12 00:51:59 +05:30
Rémi Verschelde
658296856c
Merge pull request #24877 from neikeq/issue-24280
...
Fix properties being lost when reloading placeholder GDScript instance
2019-01-10 18:02:57 +01:00
Rémi Verschelde
9eb9335608
doc: Sync classref with current source + AUTHORS edit
2019-01-10 14:34:29 +01:00
Rémi Verschelde
899ad484e3
Merge pull request #24883 from akien-mga/resourceformat-unregister
...
Consistency in resource format saver/loader de-registration
2019-01-10 14:25:09 +01:00
Rémi Verschelde
5bf8bdc971
Merge pull request #24884 from Xrayez/fix-#24881
...
Fix broken encrypted scripts during export
2019-01-10 13:12:33 +01:00
Andrii Doroshenko (Xrayez)
c0cc032799
Fix broken encrypted scripts during export
...
Use temporary cache directory instead of editor settings directory
in order to resolve encrypted file access needed for encrypting scripts
on all platforms.
2019-01-10 13:53:12 +02:00
Rémi Verschelde
e5f1d19352
Consistency in resource format saver/loader de-registration
...
Some used 'is_valid()' checks, others not. Validity is already checked in 'unref()',
and 'remove_resource_format_*()' has an ERR_FAIL condition on 'is_null()' already
(which shouldn't happen since we're only unregistering things that we previously
registered.
Also add missing GDCLASS statement in ResourceFormatLoaderVideoStreamGDNative,
missed in #20552 which was last amended before #19501 was merged.
2019-01-10 12:45:57 +01:00
Marcin Zawiejski
7860b74b0f
Remove vsgdnative loader on exit
2019-01-10 07:19:16 +01:00
Ignacio Etcheverry
ea85ff0dc2
Fix properties being lost when reloading placeholder GDScript instance
...
During reloading in `GDScriptLanguage::reload_all_scripts` a placeholder instance that must remain so is replaced with a new placeholder instance. The state is then restored by calling `ScriptInstance::set` for each property. This does not work if the script is missing the properties due to build/parse failing.
The fix for such cases is to call `placeholder_set_fallback` instead of `set` on the script instance.
I took this chance to move the `build_failed` flag from `PlaceHolderScriptInstance` to `Script`. That improves the code a lot. I also renamed it to `placeholder_fallback_enabled` which is a much better name (`build_failed` could lead to misunderstandings).
2019-01-10 01:58:50 +01:00
Rémi Verschelde
fe8cdafbf4
Merge pull request #20552 from KidRigger/gsoc-peer
...
Added interface for GDNative Videodecoder.
2019-01-09 17:30:09 +01:00
Hein-Pieter van Braam
e5b335d367
Don't use -ffast-math or other unsafe math optimizations
...
Godot supports many different compilers and for production releases we
have to support 3 currently: GCC8, Clang6, and MSVC2017. These compilers
all do slightly different things with -ffast-math and it is causing
issues now. See #24841 , #24540 , #10758 , #10070 . And probably other
complaints about physics differences between release and release_debug
builds.
I've done some performance comparisons on Linux x86_64. All tests are
ran 20 times.
Bunnymark: (higher is better)
(bunnies) min max stdev average
fast-math 7332 7597 71 7432
this pr 7379 7779 108 7621 (102%)
FPBench (gdscript port http://fpbench.org/ ) (lower is better)
(ms)
fast-math 15441 16127 192 15764
this pr 15671 16855 326 16001 (99%)
Float_add (adding floats in a tight loop) (lower is better)
(sec)
fast-math 5.49 5.78 0.07 5.65
this pr 5.65 5.90 0.06 5.76 (98%)
Float_div (dividing floats in a tight loop) (lower is better)
(sec)
fast-math 11.70 12.36 0.18 11.99
this pr 11.92 12.32 0.12 12.12 (99%)
Float_mul (multiplying floats in a tight loop) (lower is better)
(sec)
fast-math 11.72 12.17 0.12 11.93
this pr 12.01 12.62 0.17 12.26 (97%)
I have also looked at FPS numbers for tps-demo, 3d platformer, 2d
platformer, and sponza and could not find any measurable difference.
I believe that given the issues and oft-reported (physics) glitches on
release builds I believe that the couple of percent of tight-loop
floating point performance regression is well worth it.
This fixes #24540 and fixes #24841
2019-01-09 02:06:13 +01:00
Hein-Pieter van Braam
ee0c4a97b3
Use 'release_debug' for mono export templates
...
This fixes the previously wrong PR
Because we don't actually ship 'debug' templates to users make sure
the mono exporter picks the correct 'data' directory for export
templates.
This fixes #24752
2019-01-08 01:44:54 +01:00
Hein-Pieter van Braam
dd766bae78
Use 'release_debug' for mono export templates
...
Because we don't actually ship 'debug' templates to users make sure
the mono exporter picks the correct 'data' directory for export
templates.
This fixes #24752
2019-01-07 18:19:35 +00:00
Rémi Verschelde
a15620c83e
doc: Fix wrong references found by Sphinx and new makerst.py
2019-01-07 12:15:01 +01:00
Rémi Verschelde
26fddb77be
doc: Fix wrong references found by new makerst.py
...
Thanks @PJB3005
2019-01-07 10:06:12 +01:00
Timo Schwarzer
56000929fd
Fix code completion on nodes in current scene
2019-01-05 23:17:02 +01:00
Rémi Verschelde
1ba0b2bc0b
Merge pull request #24741 from timoschwarzer/24697-fix-autocomplete-segfault-in-inner-classes
...
Fix segfault when trying to autocomplete in inner classes
2019-01-04 19:41:24 +01:00
Rémi Verschelde
5809be9641
Merge pull request #24582 from Xrayez/script-encrypt
...
Bring back script encryption in export preset
2019-01-04 16:34:38 +01:00
Rémi Verschelde
1808241d16
Merge pull request #24688 from Supatier/add-additional-vscode-name
...
Add code-oss, vscode-oss, and visual-studio-code-oss to vscode path
2019-01-03 21:32:41 +01:00
Timo Schwarzer
d77643562b
Fix segfault when trying to autocomplete in inner classes
...
Fixes #24697
2019-01-03 15:51:34 +01:00
supatier
ab7f102b14
Add code-oss, vscode-oss, and visual-studio-code-oss to vscode path
2019-01-02 05:40:34 +07:00
Rémi Verschelde
b16c309f82
Update copyright statements to 2019
...
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Rémi Verschelde
d1f3b622f0
Fix missing/malformed license headers
2019-01-01 12:46:36 +01:00
Rémi Verschelde
ac46862097
Merge pull request #24506 from JFonS/expose_gizmos
...
Expose the new gizmo plugin system to scripting
2018-12-30 15:42:30 +01:00
Rémi Verschelde
dcc7f2b54b
Merge pull request #24545 from akien-mga/osxcross-mono
...
SCons: Allow building Mono module with OSXCross
2018-12-30 15:07:18 +01:00
Rémi Verschelde
08f71baca5
Fix loading EXR with alpha channel
...
Fixes #24659 .
2018-12-30 14:35:15 +01:00
Rémi Verschelde
95e96947f6
SCons: Drop ios_sim option forcing x86, simulator needs x86_64
2018-12-27 14:11:13 +01:00
Rémi Verschelde
2e39e38c10
doc: Sync classref with current source
...
Fix various code formatting issues and argument names.
2018-12-27 11:10:18 +01:00
Rémi Verschelde
de4d7a785e
Fix size in HeightMapShapeBullet::set_data
2018-12-27 10:29:25 +01:00
Ignacio Etcheverry
ac118434ee
Merge pull request #24622 from Supatier/fix-vscode-w-uncommon-exec-name
...
Fix: Cannot find code editor: VSCode; although installed on linux
2018-12-27 10:13:04 +01:00
Rémi Verschelde
32a7c05eb4
Merge pull request #24610 from Faless/emws_buf_size_fixes
...
Fix HTML5 WebSocket client buffers size.
2018-12-27 09:45:25 +01:00
Supatier
b173eed8aa
Fix Godot unable to find VSCode binary
...
VSCode's executable name is not uniform and godot only search for "code".
2018-12-27 15:16:29 +07:00
Rémi Verschelde
a1fa614e78
Merge pull request #24561 from KellyThomas/fix-antiquewhite
...
fix capitalization for antiquewhite
2018-12-27 08:52:10 +01:00
Fabio Alessandrelli
77466285f2
Fix HTML5 WebSocket client buffers size.
2018-12-26 17:51:12 +01:00
Andrii Doroshenko (Xrayez)
ba13a2bc05
Bring back script encryption in export preset
...
Retrieved working implementation from 2.1 branch and adapted to
existing export preset system.
Added Script tab in export preset to export script as raw text,
compiled, or encrypted (same as in 2.1). The script encryption key is
visually validated. The script export mode and the key is saved per
per preset in `export_presets.cfg`, so it makes sense to ignore this
file in version control system.
Each custom exporting procedure can retrieve an export preset set
during project exporting. Refactored project export dialog a bit to
allow easier code comprehension.
2018-12-24 17:16:14 +02:00
Daniel Abbott
572367552c
GodotRestInfoContactResultCallback::addSingleResult
now returns normal
...
`PhysicsDirectSpaceState.get_rest_info()` now provides normals in result
Addresses issue 24558
2018-12-22 19:26:18 -07:00
Kelly Thomas
a5e38586ce
fix capitalization for antiquewhite
2018-12-23 08:00:35 +08:00
Rémi Verschelde
d52100f4ff
SCons: Allow building Mono module with OSXCross
...
Improve the test logic to only assume that we're building for macOS
if OSXCROSS_ROOT is defined *and* we requested p=osx.
Supersedes #24480 .
2018-12-22 12:36:19 +01:00
JFonS
6b15b4f904
Expose the new gizmo plugin system to scripting
2018-12-21 23:56:39 +01:00
Kelly Thomas
09496d93b1
[Mono] Color - add ColorN(), Colors - add named color properties
2018-12-21 15:01:32 +08:00
Rémi Verschelde
2709113c83
Merge pull request #24499 from akien-mga/android-thirdparty
...
Android: Better identify thirdparty C/C++ code
2018-12-20 19:12:58 +01:00
Rémi Verschelde
6cdcde7114
doc: Add missing commas after "If true/false"
2018-12-20 13:47:12 +01:00
Rémi Verschelde
6770357e47
Android: Better identify thirdparty C/C++ code
...
- The `cpu-features.{c,h}` code was only used by chance by the webm
(libvpx) code, so I moved it there. It was actually introduced before
that and wasn't in use, and libvpx just happened to be able to
compile thanks to it being bundled.
It could potentially be compiled on the fly from the Android NDK, but
since we plan to replace the webm module by a GDNative plugin in the
near future, I went the bundling route.
- `ifaddrs_android.h` is already provided in the Android NDK as
`ifaddrs.h`, same as on other Unixes. Yet we cannot use it until we
up the min API level to 24, where `getifaddrs` is first defined.
I moved the files to `thirdparty/misc` and synced them with upstream
WebRTC (only indentation changes and removal of `static` qualifiers).
Also removes dropped thirdparty files from COPYRIGHT.txt after changes
in #24105 and #24145 .
2018-12-20 13:07:54 +01:00
Rémi Verschelde
830232f130
Merge pull request #23615 from buresu/pluginscript-new
...
PluginScript: Add support for the new() method
2018-12-18 09:29:04 +01:00
Rémi Verschelde
9c7bc127b9
Merge pull request #24385 from hpvb/reduce-string-coew
...
Reduce String CoW
2018-12-16 19:13:35 +01:00
Hein-Pieter van Braam
4e25e5066b
Reduce String CoW
...
By introducing an intermediate proxy class for the array subscript
operator for String and CharString we can control better when CowData
will actually CoW.
This should improve performance of String usage for most cases.
2018-12-16 16:51:38 +01:00
Rémi Verschelde
9df7ed59fb
Merge pull request #19501 from Zylann/custom_loaders
...
Added basic support for custom resource savers and loaders
2018-12-16 14:26:56 +01:00
Marc Gilleron
065e2670af
Added basic support for custom resource savers and loaders
2018-12-15 05:34:53 +00:00
Rémi Verschelde
4629152d68
doc: Sync classref with current source
2018-12-15 01:39:02 +01:00
meditator
0059930644
Add support for collision layers and masks in CSG shapes
2018-12-15 00:36:47 +01:00
corrigentia
0a4a3f7157
doc: Grammar and punctuation fixes for CSGMesh and CSGCombiner
2018-12-14 14:00:11 +01:00
Rémi Verschelde
72feccf205
Adapt GDNative VideoStream to use ResourceFormatLoader
...
Same logic as used for Webm and Theora support in #19937 and #21084 ,
fixing issues when exporting projects.
2018-12-13 15:33:28 +01:00
Rémi Verschelde
012dac9aad
Fix includes and initialization for GDNative Videodecoder
...
Fixes warnings and a crash when running the destructor with an
uninitialized pcm pointer.
2018-12-13 15:31:13 +01:00
Anish
7199b7b5dd
Added interface for GDNative Videodecoder.
...
Interface and callback api added for Videodecoder support.
Should be able to construct any format videodecoder using
only the given interface.
GSoC 2018 project.
2018-12-13 15:19:09 +01:00
Rémi Verschelde
17c3c64a80
i18n: Sync translation template with current source
...
Also French translation update and misc fixes to source strings.
2018-12-13 14:47:24 +01:00
Rémi Verschelde
55089d0b1a
Merge pull request #24224 from BastiaanOlij/flip_bitangent
...
Reverse bitangent on everythings
2018-12-11 15:21:43 +01:00
volzhs
d4133ac844
Update libwebp to 1.0.1
2018-12-10 22:34:39 +09:00
Rémi Verschelde
bf59b73250
Merge pull request #20609 from YeldhamDev/menu_hover_explicit
...
Make opening menus with the same parent on mouse focus explicit
2018-12-09 23:15:33 +01:00
Rémi Verschelde
286f52c70a
Merge pull request #20745 from Zylann/heightmap_from_image
...
Allow to create a heightmap collision shape from an image
2018-12-09 23:08:51 +01:00
Rémi Verschelde
a3ffc8bc20
Merge pull request #24223 from vnen/gdscript-better-type-compatible
...
Fix type-compatibilty check in GDScript
2018-12-09 11:41:00 +01:00
Ben Rog-Wilhelm
b26487a2b4
Tweaks after feedback
2018-12-08 00:54:12 -08:00
Ben Rog-Wilhelm
f13f2d512f
Implement CSharpScript::get_script_method_list and related functionality.
2018-12-07 23:54:40 -08:00
Bastiaan Olij
fa63a0fe83
Reverse bitangent on everythings to ensure default normal map behavriour is consistent
2018-12-08 13:43:46 +11:00
George Marques
74a3bf72f0
Fix type-compatibilty check in GDScript
...
Objects and PoolArrays are properly tested for conversion.
2018-12-07 23:53:45 -02:00
Rémi Verschelde
19f2a188bb
Merge pull request #22934 from SeleckyErik/issue-11457
...
GDscript function str2var now returns null on invalid input
2018-12-07 15:43:47 +01:00
Aron Castro
3aeeaa9318
Fix csgshape collider without object id
2018-12-03 16:06:30 -02:00
Ignacio Etcheverry
f6f2be7577
Fix crash due to ~CSharpInstance() being called on freed instance
...
This would be the case when calling SetScript on an object with a C# script.
2018-12-01 02:28:24 +01:00
Ignacio Etcheverry
5fd3ef4e78
Implement CSharpScript::is_valid()
2018-11-30 21:45:44 +01:00
Ignacio Etcheverry
989b93d6a4
Merge pull request #24091 from neikeq/ii
...
C#: Improve tool script support and fix reloading issues
2018-11-30 21:39:13 +01:00
Ignacio Etcheverry
b9b7dcdf00
C#: Improve tool script support and fix reloading issues
2018-11-30 20:43:06 +01:00
Erik
78c9677816
GDscript function str2var now returns input string on invalid input
...
str2var used to raise a blocking error when invalid input was passed. Now it logs an error message and
returns the input string. This solution was proposed in #13021 .
Closes #11457 and #13021 .
2018-11-28 14:47:40 +01:00
Rémi Verschelde
06db076fc6
Merge pull request #24025 from aaronfranke/analyzer-errors
...
Fix many errors found by PVS-Studio
2018-11-28 14:08:50 +01:00
Rémi Verschelde
b47d4e1ba5
Merge pull request #24017 from eska014/rt-squish
...
Enable squish decompression in runtime builds
2018-11-28 12:40:43 +01:00
Leon Krause
32751e09ac
Build squish decompression in runtime
2018-11-28 11:11:58 +01:00
Aaron Franke
cb01268562
Fix many errors found by PVS-Studio
...
Fix errors 2, 3, 4, 6, 8, 9, 11, 12, 13, 14, and 15.
2018-11-28 05:03:24 -05:00
Rémi Verschelde
78cdbc54b0
Merge pull request #23994 from AndreaCatania/prec
...
Added function to control 6DOF precision
2018-11-28 10:30:47 +01:00
Rémi Verschelde
3f41bd1522
Merge pull request #23996 from Windfisch/bulletfix
...
Add more max-checking to physics queries
2018-11-28 10:30:09 +01:00
Juan Linietsky
3a93499f89
Allow signal connecting even if script is invalid (only when compiled with tools), fixes #17070
2018-11-27 19:55:37 -03:00
Andrea Catania
a395d809a5
Added function to control 6DOF precision
2018-11-27 07:11:28 +01:00
Florian Jung
e10c3e7ec5
Add more max-checking to physics queries
...
Fixes some out-of-bounds problems when there are more collisions than
have been requested for. This extends what has been done in 444b8471a3
.
Fixes godotengine/godot#23990
2018-11-26 18:15:58 +01:00
Rémi Verschelde
942855a9ee
Merge pull request #23961 from Faless/lws_poll_all
...
Websocket LWS keep servicing till no CB are left
2018-11-26 11:48:31 +01:00
Rémi Verschelde
7b2ac28326
Merge pull request #23959 from RandomShaper/fix-dangling-script-fix
...
Fix dangling script fix
2018-11-26 10:13:00 +01:00
Fabio Alessandrelli
c3d3f1dedb
Websocket LWS keep servicing till no CB are left
...
Apparently, only a single WRITABLE/READABLE callback is called at each
servicing. For this reason, we want to keep servicing until we end up
not receiving any callback.
When that happens, we can assume that we can't (or don't want to) write
more, and that there is nothing left to read in the socket buffer.
2018-11-25 17:25:03 +01:00
Pedro J. Estébanez
06b6cea62e
Fix crash on signal/resume to dangling target
2018-11-25 13:16:45 +01:00
Carter Anderson
d339824f15
Parse C# generics and type constraints correctly
2018-11-24 18:29:23 -08:00
Pedro J. Estébanez
b499537e68
Revert "Fix crash on signal/resume to dangling target"
...
This reverts commit 54bdc1e1f6
.
2018-11-24 23:46:13 +01:00
Rémi Verschelde
1c169413ff
Merge pull request #23740 from ttencate/unused_argument_22139
...
Prevent unused_argument warning when passing arg to parent constructor
2018-11-23 01:07:22 +01:00
Rémi Verschelde
7a9e4c2602
Merge pull request #22953 from DualMatrix/properties_gone
...
Fixed parents export vars not appearing in inspector if parent is class_name.
2018-11-22 19:34:41 +01:00
Andrea Catania
c6e6249143
Improved algorithm that check collision
2018-11-22 09:03:21 +01:00
Liangdi
dced53b4d9
add undeclared function params of VisualScriptEditor::_selected_method , Fixes #23475
2018-11-21 21:25:19 +08:00
Michael Alexsander Silva Dias
da7d3c5a58
Make opening menus with the same parent on mouse focus explicit
2018-11-20 20:37:45 -02:00
Ignacio Etcheverry
d275d848b3
C#: Replace calls to old of old Basis(Vec3,Vec3,Vec3) constructor
2018-11-20 22:23:09 +01:00
Rémi Verschelde
477e89a8a2
Merge pull request #23760 from BastiaanOlij/fix_tangent_direction
...
Fixing tangent and binormal logic
2018-11-20 14:13:36 +01:00
Rémi Verschelde
84dcf9ca19
Merge pull request #23824 from BastiaanOlij/polygon_caps
...
Adding UVs on end caps for CSGPolygon
2018-11-20 13:59:46 +01:00