Rémi Verschelde
386968ea97
Remove obsolete GLES3 backend
...
Due to the port to Vulkan and complete redesign of the rendering backend,
the `drivers/gles3` code is no longer usable in this state and is not
planned to be ported to the new architecture.
The GLES2 backend is kept (while still disabled and non-working) as it
will eventually be ported to serve as the low-end renderer for Godot 4.0.
Some GLES3 features might be selectively ported to the updated GLES2
backend if there's a need for them, and extensions we can use for that.
So long, OpenGL driver bugs!
2020-02-13 10:36:44 +01:00
Relintai
cb29ce8a3b
Fix startGame's logic in engine.js.
2020-02-12 23:13:53 +01:00
Juan Linietsky
525c40a488
Force vulkan driver until OpenGL is implemented
2020-02-12 11:45:40 -03:00
Rémi Verschelde
db81928e08
Vulkan: Move thirdparty code out of drivers, style fixes
...
- `vk_enum_string_helper.h` is a generated file taken from the SDK
(Vulkan-ValidationLayers).
- `vk_mem_alloc.h` is a library from GPUOpen:
https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
2020-02-11 14:08:44 +01:00
bruvzg
0ce4433686
Restore parts of #33783 and #32809 missing after rebase.
2020-02-11 12:06:30 +01:00
Rémi Verschelde
fff4240bb4
Fix code formatting issues and VS compilation
...
Also temporarily disable multicheck build so that we get a full build
even when there are style issues on Vulkan.
Fixes #33356 .
2020-02-11 12:05:19 +01:00
Rémi Verschelde
a8e14bee58
Merge pull request #32821 from bruvzg/vlk_fix_macos_exit
...
[Vulkan, macOS] Fix RID leaks and crashes on exit.
2020-02-11 12:04:20 +01:00
bruvzg
a85923b972
Move Vulkan context/rendering_device destruction to windowWillClose notification.
2020-02-11 12:04:16 +01:00
bruvzg
d5df1b651c
Improve HiDPI handling, fix incorrect window viewport clipping.
2020-02-11 12:04:04 +01:00
Juan Linietsky
6ee2f5e6b6
More GIProbe work and fixes
2020-02-11 12:03:49 +01:00
Rémi Verschelde
65ad12e79a
glslang: Disable warnings and allow unbundling
2020-02-11 12:02:50 +01:00
Rémi Verschelde
511f65214f
SCons: Streamline Vulkan buildsystem + fixups
...
- Renamed option to `builtin_vulkan`, since that's the name of the
library and if we were to add new components, we'd likely use that
same option.
- Merge `vulkan_loader/SCsub` in `vulkan/SCsub`.
- Accordingly, don't use built-in Vulkan headers when not building
against the built-in loader library.
- Drop Vulkan registry which we don't appear to need currently.
- Style and permission fixes.
2020-02-11 11:59:04 +01:00
Rémi Verschelde
6289e7d147
Merge pull request #29993 from bruvzg/vulkan
...
Initial Vulkan support for macOS (MoltenVK) and Windows
2020-02-11 11:57:40 +01:00
bruvzg
b456bfad5c
Add runtime GLES2 / Vulkan context selection.
2020-02-11 11:57:34 +01:00
bruvzg
eb48be51db
Add static Vulkan loader.
...
Initial Vulkan support for Windows.
Initial Vulkan support for macOS.
2020-02-11 11:57:11 +01:00
Juan Linietsky
c613ead5fa
Added a spinlock template as well as a thread work pool class.
...
Also, optimized shader compilation to happen on threads.
2020-02-11 11:53:29 +01:00
Juan Linietsky
0586e18449
Custom material support seems complete.
2020-02-11 11:53:29 +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
9b0dd4f571
A lot of progress with canvas rendering, still far from working.
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
Juan Linietsky
9ffe57a10e
Modify RenderingDevice to use RIDs, now that they are O(1)
2020-02-11 11:53:26 +01:00
Juan Linietsky
1522d8c3ee
Added support for push constants
2020-02-11 11:53:26 +01:00
Juan Linietsky
fd188ddd51
Initial work on Vulkan:
...
-Added VulkanContext
-Added an X11 implementation
-Added a rendering device abstraction
-added a Vulkan rendering device abstraction
-Engine does not work, only shows Godot logo (run it from bin/)
2020-02-11 11:53:26 +01:00
muiroc
e51c6a0d28
Allow per pixel transparency in javascript platform
2020-02-10 14:27:30 +01:00
Rémi Verschelde
a832776262
Merge pull request #34140 from bruvzg/ios_auto_icons_and_loadscreens
...
[iOS] Option to automatically generate icons and launch screens
2020-02-10 11:27:47 +01:00
Rémi Verschelde
0ead0eeabb
Merge pull request #35301 from Calinou/improve-console-error-logging
...
Improve the console error logging appearance
2020-02-10 11:16:01 +01:00
Rémi Verschelde
052118afa6
Merge pull request #35802 from bruvzg/linux_tablet_ranges
...
Fix pressure / tilt ranges on Linux.
2020-02-10 10:47:54 +01:00
Rémi Verschelde
e4ddbe8fd8
Merge pull request #36003 from MennoMax/linux-cursor-fallback
...
Adjusted linux cursors and added fallbacks
2020-02-10 10:40:31 +01:00
MennoMax
a9946b9515
adjusted linux cursors, added fallbacks
2020-02-10 01:52:19 +01:00
Rémi Verschelde
8e674ea70c
Merge pull request #35701 from AlexHolly/fix-double_tap-pressed-regression
...
Fix double tap pressed event regression
2020-02-09 13:12:16 +01:00
Rémi Verschelde
42f04cbc1a
Merge pull request #35982 from akien-mga/scons-modules-enabled-header-and-split
...
SCons: Split libmodules.a in folder-based libs
2020-02-08 15:43:10 +01:00
Fabio Alessandrelli
343b29a651
Merge pull request #35381 from Calinou/html5-export-favicon
...
Export and reference the icon as favicon when exporting to HTML5
2020-02-08 04:45:53 +01:00
Rémi Verschelde
4e2dbb1bc0
SCons: Split libmodules.a in folder-based libs
...
This removes the need for the hacky split_libmodules logic on Windows,
since all libs are now of manageable size.
2020-02-07 14:19:51 +01:00
muiroc
e563b47dbe
Fix javascript platform build
2020-02-07 01:46:15 +01:00
Rémi Verschelde
17ce184921
Merge pull request #35886 from doot24/fix_#35871
...
Fixed Godot not recognising 150x150 icon for uwp export #35871
2020-02-06 10:31:31 +01:00
Hugo Locurcio
2dd3a01d11
Remove per-file progress reporting when exporting to Android
...
Calling `step()` on EditorProgress too often will slow down the
rest of the editor, so it's best avoided. This is also more consistent
with other exporters, as most of them don't report per-file progress
either.
Exporting a 2D project with ~1,100 files to Android now takes
about 10 seconds from a debug editor build instead of 65 seconds.
This closes #30850 .
2020-02-05 22:24:39 +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
D00T24
88bd3227ac
fixed godot not recognising 150x150 icon for uwp export
2020-02-03 20:40:10 +04:00
Yuri Roubinsky
90f00c0813
Restores correct window position after fullscreen toggling off on Linux
2020-02-03 18:16:20 +03:00
Yuri Roubinsky
8737269275
Fix restoring window from fullscreen to normal on Linux
2020-02-03 17:15:24 +03:00
Hugo Locurcio
4492cf856b
Export and reference the icon as favicon when exporting to HTML5
...
This makes the project icon display immediately as a favicon when
opening the page, without having to wait for the project to finish
loading.
2020-02-01 10:33:23 +01:00
bruvzg
d552f93f8b
Fix pressure / tilt ranges on Linux.
2020-01-31 22:40:14 +02:00
Rémi Verschelde
8eef6d280b
Merge pull request #35451 from Calinou/html5-web-environment-only
...
Only emit the JavaScript support code for Web when building for HTML5
2020-01-31 18:36:29 +01:00
Rémi Verschelde
6f092c299e
Merge pull request #35785 from nekomatata/android-line-edit-length-fix
...
Fixed LineEdit virtual keyboard inputs on Android
2020-01-31 16:38:37 +01:00
PouleyKetchoupp
196860508a
Fixed LineEdit virtual keyboard inputs on Android
...
Changed the condition to add a length filter to make it consistent with the documentation (0 means no character limit). Otherwise the default value in LineEdit causes the virtual keyboard to be non-fonctional on Android.
2020-01-31 16:24:09 +01:00
Hugo Locurcio
e818b51f32
Only emit the JavaScript support code for Web when building for HTML5
...
Excluding other unused environments like Node.js makes the support code
about 4 KB smaller.
2020-01-31 12:33:16 +01:00
Rémi Verschelde
fa7e2dd2ad
Merge pull request #35684 from timothyqiu/macos-sanitizers
...
Adds sanitizer options for macOS
2020-01-31 09:03:20 +01:00
Haoyu Qiu
8f881847c0
Adds extra cursors for macOS
...
Before, plain arrow cursor or unsuitable ones were used.
2020-01-31 14:16:06 +08:00
Alexander Holland
d2a5b7367b
Fix double tap pressed event regression
2020-01-29 16:24:40 +01:00