Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PCF For DirectionalLight/SpotLight Shadows #8006
PCF For DirectionalLight/SpotLight Shadows #8006
Changes from 250 commits
c157cae
b6acf22
715ca65
35093ed
5c9bb20
826b19a
060c52d
14efad2
77ca0c8
8f5fda4
1bb796f
63003f7
0b757e0
f48bb83
1d48c29
3d5c81c
ff68974
e9942d7
0e38fb4
b35586f
cada547
88112be
2cc10d5
bc87f4c
bf89ceb
a545e2a
c44c33a
1ddfa48
e76cd0e
bf36eb0
6b90c2c
a1ca8db
742d0a1
e3f6a7e
f894e83
0ae10d6
bc5574c
dd99d43
2aad44e
d138306
dc291f0
db2e5e5
052817a
8812cd8
7ae829f
9846dd9
b0bed7b
230e5fc
2d3fb83
21bbe66
fe67b5a
ea22039
dbbce60
5091758
d0108eb
c4faea1
bcd0698
bcd7a5d
13e8ea1
e9e0ef6
1455078
039e081
d456a1f
ef0845f
42c3671
9a54c54
c845115
47bf23f
a577c23
5fd9c98
4366dd2
52fc423
4feab0e
69c1dfe
e179e8a
2cae300
87ef413
557a278
0df70a2
e516f88
49e21f6
80ae486
e7e228e
2fb3291
64a52bf
f388878
a10faa3
dd80e7c
af38b4c
9f1a497
5593ef9
0f79160
90725a2
191d1d8
791460d
6de0f46
7c19b60
33012fb
56329de
de7d75b
9891e8a
68dbaf5
ea1840f
c416630
51631c0
b6d8b67
8cbc894
754192d
a7b0103
17771e5
81e9d29
aa0310e
241875b
84cec18
04a9722
415620d
cccb2c2
946f8d8
66960e6
ad4e19f
503deda
554c9a0
4af080c
2fb717e
fd5eeb5
d875e1c
6ec93f7
d0ce763
7537c24
9893d90
e289178
c365924
15b050c
6256fbf
864b348
48b7287
6fd8003
158fea9
4251947
5067c22
4dd6d63
cc72658
968443b
fb4ce64
956d825
02a98d8
4e96e73
d80d102
2031d02
369a12c
a2b7e61
bd3e1ed
f61e294
abb344a
e5b64a6
1295cb0
7feee3b
fd09554
6242fd8
f61be1b
98baa5c
dc22250
b3de57e
765fa48
4c03655
12dd618
4227fa6
769b0af
a438db7
46aadc7
b75aa88
a79cfdf
6bb7fd2
c452322
2479118
8f6e0f7
3ae680c
d4803b1
1d43e47
d0215f0
6a276ca
113ed48
dbe84c7
647a3b1
9b28ae6
03679b2
fa5c456
5502b30
3dc995a
3a0cf98
790ca50
c8afd4e
4141202
c510565
ac62cd9
dec355f
1a1069c
9b62975
902df9c
aa831aa
635ef53
7ff265d
24b9445
1d42314
928de12
4094248
6e8b341
12f6aa8
cf10ba1
6882513
36294d3
5f4befc
935e976
8c98923
c18c106
346577a
e994ca4
8f09028
5118466
d4fdbfd
4f5faaa
97e7c98
4349adb
f44b7c7
7032da8
2241fda
7076dd5
c515fd3
bc5c6a2
711f753
d382a5d
5b2a434
8d8031f
5da5402
a8a4199
18a5571
ebaebe0
7f985bb
6557168
f6c6f6b
4d86b6d
2867d90
c26f643
8234d7d
0e60a90
600b3a8
24eab26
e24e1c5
394fdba
4f9dff2
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think now this is split into its own function that this is no longer true. I have some memory of the control flow only applying within a function scope. Though I also remember thinking that was weird given it sounds like shader compilers generally inline everything? @cwfitzgerald - is the non-uniform control flow for the entire execution of the shader after entering the region of non-uniform control flow? Or is it scoped to functions? Or is the validation scoped to functions but the rule does apply?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cwfitzgerald confirmed that naga should emit validation errors if the texture sampling is done inside non-uniform control flow even if the code calls to another function.
Still, I think the
Level
variant makes sense regardless for shadow maps as they are not mipmapped and don't need gradients / mip level calculation to be done.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This implements the 5x5 filter size but the implementation in MJP's has code for 3, 5, 7. We could add options for 3 and 7 later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
5x5 I found to give good results, didn't feel the need to do 3 or 7 atm, but yeah we can add it trivially in the future (at the cost of more pipeline key bits).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or some view flags or something.