저는 memoryBarrierShared의 유용성에 대해 궁금합니다. 내가 읽은 : 내가 장벽 기능에 대한 문서를 찾고 있어요 실제로glsl memoryBarrierShared usefulness
, 어떤이 전에 연산 쉐이더에서 장벽의 특정 정적 예를 들어
, 하나의 작업 그룹 내의 모든 호출은 암호를 입력해야합니다 그 너머 계속할 수 있습니다. 이것에 의해, 지정된 static 인스턴스의 barrier보다 전에 호출 한 값이, 같은 정적 인스턴스의 barrier 에의 호출 후에, 다른 호출에 의해 안전하게 읽어 낼 수가 있습니다. 호출은 이러한 장벽 호출간에 정의되지 않은 순서로 실행될 수 있기 때문에 정점 별 또는 패치 별 출력 변수 또는 공유 변수의 값은 여러 경우에 정의되지 않습니다. 우리가 안전하게 장벽을 사용한 후 값을 읽을 수 있는지
따라서는, 왜 우리는
가memoryBarrierShared();
barrier();
정도
barrier();
memoryBarrierShared();
같은 뭔가 잘못, 내 질문은 몇 가지 코드에서 볼 수 있습니까 : 무엇 장벽이 충분하다면 memoryBarrier {Shared, ...}의 목적은 무엇입니까? 우리는 여러 단계를 사용하는 경우
는 memoryBarrierBuffer/이미지에 대한 이해 할 수 있지만, 공유, 나는이 현재 경합 실제로