WebGL에서 블렌드 모드를 수행하는 방법을 파악하려고합니다.다른 블렌딩 모드를 사용하는 WebGL 드로잉 2 차원 객체
var ctx = new Document.getElementById('canvas').getContext('2d');
ctx.globalCompositeOperation = 'lighter'
을 지금, 나는이 WebGL을에 포트에, 성능상의 이유로,이 노력하고 있어요 : 지금까지, 나는 당신이 예를 들어, 다만 할 수있는 기본 HTML5 캔버스 그리기 기능을 사용했다. 그러나 WebGL에서 혼합 모드에 영향을 줄 수있는 방법을 이해하는 데 어려움이 있습니다. 필자가 이해 하듯이, Vertex 쉐이더는 다른 텍스처/폴리곤이 보이는 부분을 결정한 다음, 이러한 텍스처/폴리곤의 보이는 부분의 각 픽셀마다 조각 쉐이더가 호출됩니다. 그러나 라이터와 같은 블렌딩 모드 (기본 색상의 각 구성 요소와 새 오버레이 색상 중 더 높은 색상을 사용함)가있는 경우 정점 쉐이더와 프래그먼트 셰이더의 역할에 대해 혼란스러워합니다. 케이스.
더 이상 Pixi.js 라이브러리에서 WebGL을 사용하여 그려야합니다. 모든 오브젝트가 프레임 버퍼에 그려진 후에만 버텍스 및 조각 쉐이더가 호출됩니다. 즉 모든 오브젝트 배치됩니다. (이 라이브러리가 사용하는 쉐이더는 here입니다.
누군가 WebGL에서 블렌딩 모드를 올바르게 사용하는 방법을 설명 할 수 있습니까?
이 답변을 주셔서 감사합니다. 그것은 정말로 나를 위해 모든 것을 분명히했습니다. 이제 내가 뭘 찾고 있었는지 더 잘 알았고, 여기에도 블렌딩을 사용하는 방법에 대한 좋은 설명을 발견했습니다 : http://www.learnopengles.com/android-lesson-five-an-introduction-to-blending/ – Qqwy
기쁜 도움이되었습니다. :) –