2016-08-10 3 views
3

나와 나와 친구가 스텐실 버퍼에 대해 계속 논의하고 있습니다. 간단히 말해 스텐실 버퍼가 OpenGL 3.2+의 프로그래밍 가능한 파이프 라인 도구를 능가하는 상황을 찾을 수 없었습니다. 현대 OpenGL에서 스텐실 버퍼를 사용합니까?스텐실 버퍼는 최신 OpenGL에서 여전히 관련이 있습니까?

[편집] 주제에 대한 모든 입력에 대한

감사합니다 여러분.

+2

비싼 조각 쉐이더를 사용하지 않으려면 [초기 조각 테스트] (https://www.opengl.org/wiki/Early_Fragment_Test)를 사용 하시겠습니까? – genpfault

+0

나는이 링크가 http://gamedev.stackexchange.com/questions/105667/stencil-buffer-vs-conditional-discard-in-fragment-shader와 관련이 있다고 생각했다. – Harish

+2

그것은 당신이 프로그래머블 파이프 라인을 사용할지 여부. 스텐실 테스트는 프래그먼트 셰이더가 실행 된 후 고정 함수 당 프래그먼트 작업의 일부로 적용됩니다. 렌더링 파이프 라인의 해당 부분은 여전히 ​​프로그래밍 가능하지 않습니다. –

답변

11

프래그먼트 셰이더에서 스텐실 인덱스 텍스처를 샘플링 할 수 있기 때문에 그 어느 때보 다 유용합니다. 스텐실 버퍼가 프로그래머블 파이프 라인의 일부가 아니라고 주장해서는 안됩니다.

심도 버퍼는 단순한 합격/불합격 단편 제거에 사용되며, 스텐실 버퍼는 주석에 제안 된대로 할 수 있습니다. 그러나 스텐실 버퍼는 다중 패스를 통해 테스트 결과에 대한 정보를 누적 할 수도 있습니다. 모든 종류의 논리 및 계수 응용 프로그램은 장면의 깊이 복잡성, 건설적인 솔리드 기하학 등을 측정합니다.

7

최근 예제를 Andon의 답변에 추가하려면 GTA V는 플레이어를 표시하는 ID 버퍼와 같은 스텐실 버퍼를 사용합니다 캐릭터, 자동차, 식물 등.

예를 들어 스텐실 버퍼를 사용합니다. 캐릭터에게만 지하 표면 산란을 적용하거나 그를 모션 블러에서 제외시킵니다.

GTA V Graphics Study (추천, 그것은 좋은 읽기입니다!)를 참조하십시오

편집 : 당신이 소프트웨어에서이 작업을 수행 할 수 있습니다. 그러나 소프트웨어에서 래스터 화 또는 테셀레이션을 수행 할 수도 있습니다 ... 결국에는 내가 추측하는 성능에 관한 것입니다. depth24stencil8을 사용하면 멋진 하드웨어 지원 형식을 사용할 수 있으며 스텐실 테스트는 조각 쉐이더에서 폐기를 수행하는 것이 가장 빠를 가능성이 큽니다.

+0

그 연구에 감사드립니다. 그 책은 매우 재미있었습니다. 그리고 전에 보지 못했던 책이었습니다. 아픈 더 많은 아이디어와 의견을 수집하기 위해 며칠 동안 이것을 열어두고 있지만 이것은 매우 단단한 대답입니다. 감사. – claudehenry

+1

@claudehenry : [stencil-routed A-buffering] (http://www.humus.name/index.php?page=3D&ID=76)이라고하는 순서 독립적 인 투명성을위한 흥미로운 기술은 정렬을 연기하기 위해 스텐실 버퍼를 사용합니다 멀티 샘플링 된 프레임 버퍼에서 최종 해결까지 파편. _ 이것은 픽셀에 정체성을 지정하는 karyon의 예를 보완하는 소프트웨어에서 할 수없는 일입니다. _ –

+0

@ AndonM.Coleman 아주 멋지다. 고맙습니다. 감사합니다. – claudehenry

-1

그냥 다른 하나의 사용 사례, 그림자 볼륨 (일명 "스텐실 그림자")를 제공하기 위해 여전히 매우 관련이 : https://en.wikipedia.org/wiki/Shadow_volume

그들은 그림자가 완벽한 픽셀 있어야하는 실내 장면에 유용하다, 그리고 당신 ' 알파 테스트를 거친 잎이 돌출 된 섀도우 볼륨을 망칠 가능성이 적습니다.

섀도우 맵이 더 일반적이지만, 일단 죽은 Createive/3DLabs 특허가 zfail 메소드에서 만료되면 스텐실 그림자가 다시 생성 될 것으로 생각됩니다.

+1

그것은 특허는 아니며 과도한 유효 노출 률입니다. 그림자 맵은 단순히 확장 성이 뛰어나고 선명한 그림자는 사실적으로 사실적이지 않습니다. – ybungalobill

관련 문제