Matias N. Goldberg
4ce41495b1
Fix validation layer warnings
...
1. Validation layers on Windows were complaining w/
VUID-VkSwapchainCreateInfoKHR-surface-01270 that we were not calling
vkGetPhysicalDeviceSurfaceSupportKHR before vkCreateSwapchainKHR.
2. Godot was only calling vkGetPhysicalDeviceSurfaceSupportKHR at
startup, but it should be doing this for every window w/ a new surface
it wants to create, not just the first one.
- In practice this will likely not make a difference. If
vkGetPhysicalDeviceSurfaceSupportKHR returns false after initialization,
there's nothing we can do about it and it is likely because something
else went terribly wrong, which is why the error message is worded like
that.
- This is mostly to shut up validation layers. Though technically,
the layers are right.
3. Do not call vkGetPhysicalDeviceSurfaceSupportKHR on queues we don't
even plan on ever using. We don't know how drivers will react to that
(e.g. they may preemptetively allocate resources to support presentation
on exotic queues, instead of just saying no). Just behave like every
other Vulkan app out there.
2023-07-30 17:07:27 -03:00
Clay John
262d1eaa63
Merge pull request #80034 from darksylinc/matias-fixes
...
Fix uninitialized variable ending up sent to Vulkan
2023-07-30 16:46:26 +02:00
Matias N. Goldberg
472226422e
Fix uninitialized variable ending up sent to Vulkan
...
The first time a shader is compiled Godot performs the following:
```cpp
for (uint32_t i = 0; i < SHADER_STAGE_MAX; i++) {
if
(spirv_data.push_constant_stages_mask.has_flag((ShaderStage)(1 << i))) {
binary_data.push_constant_vk_stages_mask |=
shader_stage_masks[i];
}
}
```
However binary_data.push_constant_vk_stages_mask is never initialized to
0 and thus contains garbage data or'ed with the good data.
This value is used by push constants (and many other things) thus it can
be a big deal.
Fortunately because the relevant flags are always guaranteed to be set
(but not guaranteed to be unset), the damage is restricted to:
1. Performance (unnecessary flushing & over-excessive barriers)
2. Overwriting push descriptors already set (this would be serious,
doesn't seem to be an issue)
3. Driver implementations going crazy when they see bits set they don't
expect (unknown if this is an issue)
This uninitialized value is later saved into the binary cache.
Valgrind is able to detect this bug on the first run, but not on the
subsequent ones because they data comes from a file.
cache_file_version has been bumped to force rebuild of all cached
shaders. Because the ones generated so far are compromised.
2023-07-29 18:28:33 -03:00
Aaron Franke
75f9c97dea
Merge pull request #79981 from RandomShaper/fix_res_imp_life_2
...
Fix life cycle of ResourceImporterTexture better
2023-07-29 10:56:28 -05:00
Clay John
031aa99d31
Merge pull request #79983 from detomon/initialize-msdf-parameters-in-base-material
...
Initialize MSDF parameters in BaseMaterial3D with default
2023-07-28 16:10:53 +02:00
detomon
d275a7487d
Initialize MSDF parameters in BaseMaterial3D with default
2023-07-28 13:24:44 +02:00
Pedro J. Estébanez
abd0dcac88
Fix life cycle of ResourceImporterTexture better
2023-07-28 11:52:09 +02:00
Yuri Sizov
da81ca62a5
Merge pull request #79405 from Calinou/doc-import-options
...
Fill in descriptions for import options in the class reference
2023-07-27 20:32:04 +02:00
Hugo Locurcio
bc58a8a34e
Fill in descriptions for import options in the class reference
2023-07-27 19:18:27 +02:00
Yuri Sizov
6c11fcd01a
Merge pull request #74717 from KoBeWi/tilesetmap_handler_plugin
...
Add separate editor plugin for TileMap and TileSet
2023-07-27 19:11:37 +02:00
Yuri Sizov
1e314d5501
Merge pull request #79941 from KoBeWi/scene_tile_devastation
...
Properly clear scene tiles
2023-07-27 19:09:40 +02:00
Yuri Sizov
a0f572494e
Merge pull request #79954 from RandomShaper/fix_res_imp_life
...
Fix life cycle of ResourceImporterTexture not tracked properly
2023-07-27 15:23:05 +02:00
Yuri Sizov
4e22ce827a
Merge pull request #79953 from RandomShaper/revert_wtp_for_range
...
Revert "Implement parallel foreach() for easier multithreading"
2023-07-27 15:23:01 +02:00
Yuri Sizov
4aae6d3f23
Merge pull request #78944 from bgie/particle_mask
...
Add option to center image when loading particle emission mask
2023-07-27 15:22:58 +02:00
Yuri Sizov
08e1a69897
Merge pull request #79937 from Sauermann/fix-expected-safe-rect-error
...
Disable error condition for accessing safe rect
2023-07-27 15:22:54 +02:00
Yuri Sizov
7a9a0dc51f
Merge pull request #79934 from Sauermann/fix-mousefilter-doc
...
Add note about mouse movement input events in `MouseFilter` constants
2023-07-27 15:22:50 +02:00
Yuri Sizov
b2e2973a67
Merge pull request #79928 from timothyqiu/fonts
...
Sort system font menu in Inspector
2023-07-27 15:22:47 +02:00
Yuri Sizov
6535b7475d
Merge pull request #79908 from YeldhamDev/output_icon_space
...
Fix spacing between icon and "Output" button
2023-07-27 15:22:44 +02:00
Yuri Sizov
cd074f965f
Merge pull request #79904 from KoBeWi/how_to_create_huge_tiles_using_a_simple_trick
...
Add help label about creating multiple/big tiles
2023-07-27 15:22:40 +02:00
Yuri Sizov
f29a0ad21c
Merge pull request #79512 from KoBeWi/tile_expanded_universe
...
Add option to expand tile polygon editors
2023-07-27 15:22:36 +02:00
Yuri Sizov
6bfda7f5c5
Merge pull request #79156 from dsnopek/gdextension-string-resize
...
Allow resizing Strings from GDExtension
2023-07-27 15:22:32 +02:00
Yuri Sizov
1fe49e7271
Merge pull request #79142 from BastiaanOlij/register_render_buffers
...
Expose RenderSceneBuffers(RD) through ClassDB
2023-07-27 15:22:27 +02:00
Yuri Sizov
37c3e2e55b
Merge pull request #68259 from konczg/openxr_extension_wrapper_gdextension
...
Add GDExtension support for OpenXR extension wrappers
2023-07-27 15:22:22 +02:00
Yuri Sizov
0c2399d6ec
Merge pull request #63826 from deakcor/dev_clipboard
...
Add `clipboard_has/get_image` methods to DisplayServer
2023-07-27 15:22:16 +02:00
Pedro J. Estébanez
79c798fa0b
Fix life cycle of ResourceImporterTexture not tracked properly
2023-07-27 13:54:30 +02:00
Pedro J. Estébanez
f34d580861
Revert "Implement parallel foreach() for easier multithreading"
...
This reverts commit e28868e30c
.
2023-07-27 13:41:27 +02:00
David Snopek
e87900970c
Allow resizing String's from GDExtension
2023-07-26 21:31:37 -05:00
kobewi
055b9892d2
Properly clear scene tiles
2023-07-27 01:31:20 +02:00
Yuri Sizov
41a7f6b380
Merge pull request #77537 from henriquelalves/feature/ei_save_all_scenes
...
Expose `save_all_scenes` method to EditorInterface
2023-07-26 23:43:08 +02:00
Michael Alexsander
2883a40aa1
Fix spacing between icon and "Output" button
2023-07-26 15:22:44 -03:00
Markus Sauermann
7fead979d6
Disable error condition for accessing safe rect
...
This PR removes the error-message, which is currently expected to happen.
The task of correctly fixing the underlying problem of window popup
closing is more complex, so this PR solves the immediate
error-notification-problem.
2023-07-26 20:21:30 +02:00
Markus Sauermann
3330f2cf2f
Add note about mouse movement input events in MouseFilter
constants
2023-07-26 19:33:40 +02:00
Yuri Sizov
8367152723
Merge pull request #79916 from smix8/navobstacle_mutex_4.x
...
Update NavObstacle creation to new Mutex style
2023-07-26 18:40:45 +02:00
Yuri Sizov
7305318a88
Merge pull request #79913 from bruvzg/lbl_min_h_line
...
[Label] Remove extra line spacing from Label minimum size calculations.
2023-07-26 18:40:42 +02:00
Yuri Sizov
7fe88c7710
Merge pull request #79899 from KoBeWi/snapped_in_half
...
Improve atlas tile size dragging
2023-07-26 18:40:38 +02:00
Yuri Sizov
d894a2ff57
Merge pull request #79883 from clayjohn/GLES3-shader-cache-dir
...
Check if shader cache directory is available before using cache
2023-07-26 18:40:35 +02:00
Yuri Sizov
d50c52652f
Merge pull request #79805 from kumikumi/fix-subviewport-cursor
...
Prevent SubViewportContainer overriding Subviewport's cursor with its own cursor
2023-07-26 18:40:30 +02:00
Yuri Sizov
712f49ec57
Merge pull request #79766 from Sauermann/fix-window-determinant-zero
...
Add determinant check for minimized windows
2023-07-26 18:40:26 +02:00
Yuri Sizov
951691a9a9
Merge pull request #79763 from mihe/indexed-properties
...
Add support for indexed properties in GDExtension
2023-07-26 18:40:22 +02:00
Yuri Sizov
a68137bf18
Merge pull request #79683 from Zylann/fix_gdext_get_property_list
...
GDExtension: Fix `_get_property_list` not working correctly in parent classes
2023-07-26 18:40:18 +02:00
Yuri Sizov
1de9171c32
Merge pull request #79443 from Sauermann/fix-ingore-hovering
...
Fix physics passive hovering with `MOUSE_FILTER_IGNORE`
2023-07-26 18:40:14 +02:00
Yuri Sizov
e25a368133
Merge pull request #79401 from smix8/navagent_desc_4.x
...
Add detail to NavigationAgent signal descriptions
2023-07-26 18:40:10 +02:00
Yuri Sizov
63411859db
Merge pull request #79351 from Repiteo/dotnet-handle-warnings
...
C#: Fix MSVC dotnet builds failing if running `dev_mode`
2023-07-26 18:40:06 +02:00
Yuri Sizov
d49ea2b7d8
Merge pull request #79288 from BastiaanOlij/custom_texture_api
...
Add custom texture create function
2023-07-26 18:40:01 +02:00
Yuri Sizov
67873d0d5d
Merge pull request #79248 from Sauermann/fix-svc-focus-propagation
...
Make `SubViewportContainer` event propagation aware of focused Control
2023-07-26 18:39:57 +02:00
Yuri Sizov
921776f0a5
Merge pull request #79203 from KoBeWi/visible_confusion
...
Don't grab theme icons for scripts
2023-07-26 18:39:52 +02:00
Yuri Sizov
6f6f7db911
Merge pull request #79129 from smix8/navbase_enabled_4.x
...
Add NavigationServer API to enable regions and links
2023-07-26 18:39:47 +02:00
Yuri Sizov
e8df8c5e2c
Merge pull request #78988 from RandomShaper/fix_change_scene
...
Reimplement scene change
2023-07-26 18:39:43 +02:00
Yuri Sizov
2c8cbcd1a0
Merge pull request #78987 from RandomShaper/err_bad_deferred_target
...
Let user know about dead instances in deferred calls
2023-07-26 18:39:38 +02:00
Yuri Sizov
bc0e646076
Merge pull request #78827 from Rindbee/fix-history-mismatch
...
Fix history mismatch
2023-07-26 18:39:32 +02:00