-
Notifications
You must be signed in to change notification settings - Fork 20
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
Fix remaining sync issues #394
Conversation
On this branch, I get the following errors:
I only get the If I break on validation error, I can see that both types of error |
The latest changes seem to have fixed the
This does seem different from the |
I'm not sure I believe the validation layers, but the behavior isn't entirely consistent with a false positive either, so maybe we do have a bug. Added a hacky barrier to mitigate the error for now, with details in a comment. |
Strange. One thing to note is that on my machine, the validation error doesn't only trigger a handful of times at startup. It also triggers whenever I move so that new chunks generate. EDIT: I can confirm though that the latest commit does resolve all the remaining synchronization validation errors. EDIT 2: Either way, thanks for looking into this! Getting synchronization right seems quite annoying and tricky. |
I've never gotten it to recur after the first handful of frames, no matter how I wander, even through deep valleys. Using validation layers 1.3.280. If it's a false positive just from the surface extraction compute shader having write access to a buffer that the chunk vertex shader reads from, it should reproduce every single time surface extraction runs, because that's always the case. |
Even more strange. I wonder why our setups are different, barring anything silly like forgetting that "Limit Duplicated Messages" is turned on. I'm also on 1.3.280.0, so it could be OS/graphics card specific, although I would have expected validation layers to be more consistent (although I guess there could be a race condition that only triggers a validation error on certain machines based on how fast various components are). |
Fixes #390.