Rémi Verschelde
dcd1151d77
Enforce use of bool literals instead of integers
...
Using clang-tidy's `modernize-use-bool-literals`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2020-05-14 13:45:01 +02:00
Rémi Verschelde
1a8167867b
Modernize remaining uses of 0/NULL instead of nullptr (C++11)
...
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2020-05-14 13:45:01 +02:00
Rémi Verschelde
1f6f364a56
Port member initialization from constructor to declaration (C++11)
...
Using `clang-tidy`'s `modernize-use-default-member-init` check and
manual review of the changes, and some extra manual changes that
`clang-tidy` failed to do.
Also went manually through all of `core` to find occurrences that
`clang-tidy` couldn't handle, especially all initializations done
in a constructor without using initializer lists.
2020-05-14 10:01:56 +02:00
qarmin
d27f640a32
Fixes memory leak with lightmap part 2
2020-05-12 10:11:17 +02:00
qarmin
84867275bb
Fix memory leak with light maps
2020-05-11 21:04:39 +02:00
Juan Linietsky
1bea8e1eac
New lightmapper
...
-Added LocalVector (needed it)
-Added stb_rect_pack (It's pretty cool, we could probably use it for other stuff too)
-Fixes and changes all around the place
-Added library for 128 bits fixed point (required for Delaunay3D)
2020-05-10 15:59:09 -03:00
Rémi Verschelde
94721f5ab8
Revert "Renamed plane's d to distance"
...
This reverts commit ec7b481170
.
This was wrong, `d` is not a distance but the `d` constant in the
parametric equation `ax + by + cz = d` describing the plane.
2020-05-10 16:47:11 +02:00
Rémi Verschelde
69de7ce38c
Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine
...
Part of #33027 .
2020-05-10 13:13:54 +02:00
Rémi Verschelde
e956e80c1f
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine
...
Part of #33027 , also discussed in #29848 .
Enforcing the use of brackets even on single line statements would be
preferred, but `clang-format` doesn't have this functionality yet.
2020-05-10 13:12:16 +02:00
Marcus Elg
ec7b481170
Renamed plane's d to distance
2020-05-10 12:12:51 +02:00
Hugo Locurcio
3a11baaeac
Turn the anisotropic filtering setting into an enum
...
Since it only accepts power-of-two values, exposing it as an enum
makes more sense. This also allows for adding property hints to indicate
the performance cost of each value.
This also improves property hints for MSAA and FXAA.
2020-05-08 12:07:35 +02:00
clayjohn
34ee273e20
Calculate sun diameter even when not using shadows
2020-05-01 22:22:35 -07:00
Pedro J. Estébanez
f7706659b5
Improve shader time roll over
...
- Resurrect it for GL ES 2
- Add it to the Vulkan rasterizer
- Expose the setting from the `RenderingServer`, since it does not belong in any specific rasterizer
2020-04-30 11:42:11 +02:00
Rémi Verschelde
1d45a269f8
Merge pull request #38302 from qarmin/format_set
...
RasterizerStorageRD: Don't override format value
2020-04-29 14:16:52 +02:00
Rémi Verschelde
0bf6a86db4
Merge pull request #37795 from Chaosus/shader_fix_const_order2
...
Fix shader constant sorting
2020-04-29 09:41:34 +02:00
qarmin
ad6bcea49d
Don't override format value
2020-04-28 18:51:17 +02:00
qarmin
0e9942a671
Fix copy paste array index bug
2020-04-28 18:26:57 +02:00
bruvzg
2bb119c088
Fix "redefinition of 'ssr' with a different type" shader compile error.
2020-04-23 13:56:04 +03:00
Juan Linietsky
f8ef38efed
Add proper type to most public API uses of Array
2020-04-21 12:16:45 -03:00
Rémi Verschelde
17304f1aae
Merge pull request #37949 from reduz/implement-global-shader-uniforms
...
Implement global and per instance shader uniforms.
2020-04-17 18:36:06 +02:00
Rémi Verschelde
cfda0e3770
Merge pull request #37953 from clayjohn/VULKAN-sky-sun-size
...
Add light size to Sky Shaders
2020-04-17 18:35:45 +02:00
clayjohn
7cd2ff309c
Add light size to Sky Shaders
2020-04-17 09:32:24 -07:00
Juan Linietsky
0e1c66d9fc
Implement global and per instance shader uniforms.
...
Adds two keywords to shader language for uniforms:
-'global'
-'instance'
This allows them to reference values outside the material.
2020-04-17 12:35:41 -03:00
clayjohn
0ff929a926
Use sky properly for ambient and reflections
2020-04-16 23:45:30 -07:00
clayjohn
61d86190e0
Fix texture check in decal setup
2020-04-15 12:06:02 -07:00
Juan Linietsky
6f293ed795
Add support for projectors in spot and omni lights.
2020-04-14 17:05:45 -03:00
Rémi Verschelde
5e5103f460
Merge pull request #37861 from reduz/implement-decals
...
Implement decals
2020-04-14 17:13:20 +02:00
Juan Linietsky
5944eb6e7f
Implement decals
...
Also implemented decal atlas, so projectors and other stuff can be added.
Sidenote: Had to make RID hashable, so some unrelated includes changed
in order to include it in hashfuncs.h
2020-04-14 11:13:34 -03:00
qarmin
88c0a9e3de
Fixes leak with CopyToFbShaderRD
2020-04-13 11:39:44 +02:00
Rémi Verschelde
06748a2b5f
Merge pull request #37749 from clayjohn/Vulkan-improved-ss
...
Add vogel filter and settings to soft shadows
2020-04-13 00:39:37 +02:00
Juan Linietsky
a57dc398db
Implement MSAA
2020-04-12 15:33:57 -03:00
Juan Linietsky
16ae2cc1bf
Add screen space AA option, with FXAA implementation.
2020-04-12 10:57:18 -03:00
Juan Linietsky
9dc19f7619
Merge pull request #37808 from reduz/port-effects-to-compute
...
Moved most of the effect code to compute.
2020-04-11 23:38:05 -03:00
Juan Linietsky
d81911490b
Moved most of the effect code to compute.
...
Simplifies it and improves performance.
Improves image barrier handling per mipmap on RenderingDeviceVulkan
2020-04-11 19:44:07 -03:00
Rémi Verschelde
636d4bad99
Merge pull request #37794 from clayjohn/VULKAN-SSS-sky
...
Fix SSS affecting Sky
2020-04-11 16:30:51 +02:00
Yuri Roubinsky
bc30f541e6
Fix shader constant sorting
2020-04-11 12:40:17 +03:00
clayjohn
e3a9af2db1
Fix SSS affecting Sky
2020-04-11 01:20:24 -07:00
clayjohn
621f6f09a8
Add proper quality settings to soft shadows
2020-04-10 23:09:17 -07:00
Juan Linietsky
6a730ffeab
Support light size and soft shadows
2020-04-09 15:11:15 -03:00
Juan Linietsky
4ffc0d6b3f
Refactored shadowmapping.
...
- Made shadow bias size independent, so it will remain when changing light or camera size.
- Implemented normal offset bias, which greatly enhances quality.
- Added transmission to subsurface scattering
- Reimplemented shadow filter modes
Closes #17260
2020-04-08 11:19:43 -03:00
qarmin
853f677c7e
Fixed leak with SpecularMergeShaderRD
2020-04-04 17:48:30 +02:00
Juan Linietsky
c54f80d35c
Re-implement subsurface scattering.
...
The size settings are more "just works", with default scale and depth scale
values that don't need much tweaking.
Additionally, a "skin" mode was added so skin looks better.
EDIT: Cleaned up SSR filter shader a bit.
2020-04-04 11:44:28 -03:00
Rémi Verschelde
aeb95ef006
Merge pull request #37438 from clayjohn/VULKAN-sky-invert
...
Invert Sky subpass cubemap z direction
2020-04-03 15:59:26 +02:00
Rémi Verschelde
6a38ce1b31
Merge pull request #37512 from reduz/implement-ssr
...
Re-Added screen space reflection.
2020-04-02 17:17:27 +02:00
Juan Linietsky
87c658b304
Re-Added screen space reflection.
2020-04-02 11:25:21 -03:00
lupoDharkael
95a1400a2a
Replace NULL with nullptr
2020-04-02 13:38:00 +02:00
Rémi Verschelde
5f11e15571
Merge pull request #37504 from qarmin/out_of_bound_cursor
...
Fix array out of bounds access caused by uninitialised variables
2020-04-02 13:07:55 +02:00
Rafał Mikrut
359bebd8c0
Fix out of bound array access caused by unassigned variable
2020-04-01 19:29:35 +02:00
Rémi Verschelde
0a2fa4d892
Fix more -Wmaybe-uninitialized warnings with target=release_debug
...
I have no idea why those don't get triggered in target=debug builds.
Fixes #37461 .
2020-03-31 13:52:42 +02:00
clayjohn
be9235e499
Invert subpass cubemap z direction
2020-03-30 10:42:45 -07:00