This one allows for complex shaders paired with a simple lighting shader to skip code that would otherwise be pointlessly (and wastefully) run during the light pass.
You can use `if (AT_LIGHT_PASS) , negated or not, and that will be converted to a preprocessed #if when the shader is compiled.
Depending on your game (number of items and lights), this can be a *significant* performance gain, or at least avoids relying on the driver's optimizing abilities.
- Refactor touch acceptance logic so the same is used whether passby is enabled or not.
- Remove the check for visibility during input handling as it should never fail; instead using now an ERR_FAIL_COND() just in case since we have been checking for that so far.
Fixes#9159.
since the malloc() suite is nowadays thread-safe by itself (from MSVC 2010 you don't even have a non-MT runtime and for POSIX-based OSs it's mandatory by the spec.
Bonus: Clear about-to-be-released blocks with a better magic number for better debugging of dangling pointers.
Now it does not try to build if the solution is not found. This way it's
possible to provide a minimal package with includes and libs and make it
build correctly.
Also remove messages from detect.py since it is ran for every platform
target.
- Add a proper function to retrieve IP addresses.
- Solve issues with Windows FileAccess and DirAccess to use the same code
for WinRT.
- Add patches to the GLES2 rasterizer to workaround ANGLE issues.
- Fix buildsystem for WinRT/UWP platform.
- Add audio driver and joystick mapping for WinRT.
- Enable thread class for WinRT.
- Refactor MSVC compiler architecture detection to methods.py, so it can
be used by Windows and WinRT.
Now you have: extra, all (the default), moderate, no.
The old 'yes' option is still supported, but a warning will be printed and 'all' will be assumed.
The different options will translate to the following:
MSVC:
extra -> /Wall (implies /W4)
all -> /W3 + disable non-essential (*)
moderate -> /W2 + disable non-essential (*)
no -> /w
GCC/Clang:
extra -> -Wall -Wextra
all -> -Wall
moderate -> -Wall -Wno-unused
no -> -w
* = Truncations, narrowing conversions...: /wd4267 /wd4244 /wd4305 /wd4800
This is a necessary condition for finding optimal solutions.
This is achieved by simply requiring/ensuring that no weights are smaller than 1.
Fixes#8584.
(cherry picked from commit e4eb093c62)
The Tree node column/table form is missing the ability to
capture column title clicks easily.
Adding this functionality will give us the ability to
create functions such as sort by column, which is a common
table manipulation ability in games/apps.
https://godotengine.org/qa/7699
(cherry picked from commit 7b00ad22b9)
Uses the machine-readable debian/copyright standard to be explicit
about both the licenses and the corresponding copyright attributions
for Godot source files and thirdparty libraries bundled in the source
repository.
(cherry picked from commit e776a1ebb2)
There's been some inconsistency between the ProjectSettings and EditorSettings:
One would use "snake_case_properties", the other "Capitalized Properties".
This fixes that by also using capitalized properties for the project settings.
(It's actually the default, so the line setting it to false was just removed..)
Was there a strong reason for using snake_case here in the first place?
(cherry picked from commit 162068640b)