보수적 래스터화를 활성화하거나 비활성화합니다.
래스터화는 삼각형으로 덮이는 픽셀을 파악하여 벡터 데이터(삼각형 투사)를 픽셀 데이터(렌더 타겟)로 전환하는 렌더링 기법입니다. 보통 GPU가 픽셀 내 지점을 샘플링하여 삼각형으로 덮이는지 여부를 파악해서 픽셀의 래스터화 여부를 결정합니다. 커버리지가 충분하면 GPU가 픽셀이 덮임을 파악합니다. 보수적 래스터화는 GPU가 커버리지와 관계없이 삼각형에 의해 부분적으로 덮이는 픽셀을 래스터화한다는 의미입니다. 이는 확실성이 필요할 때(예: 오클루전 컬링 수행 시, GPU에서의 충돌 검사 시 또는 가시성 검사 시) 유용합니다.
보수적 래스터화는 GPU가 삼각형 모서리에서 더 많은 프래그먼트를 생성함을 의미합니다. 이로 인해 프래그먼트 셰이더가 더 많이 호출되어 GPU 프레임 시간이 늘어날 수 있습니다.
기능 이름 | 빌트인 렌더 파이프라인 | 유니버설 렌더 파이프라인(URP) | 고해상도 렌더 파이프라인(HDRP) | 커스텀 SRP |
---|---|---|---|---|
Conservative | 지원 | 지원 | 지원 | 지원 |
이 커맨드는 렌더 상태를 변경합니다. Pass
블록에서 사용하여 해당 패스의 렌더 상태를 설정하거나, SubShader
블록에서 사용하여 해당 서브셰이더에 있는 모든 패스의 렌더 상태를 설정할 수 있습니다.
SystemInfo.supportsConservativeRaster API를 사용하여 하드웨어 지원을 확인하십시오.이 커맨드를 지원하지 않는 하드웨어에서는 무시됩니다.
서명 | 예제 구문 | 기능 |
---|---|---|
Conservative <enabled> |
Conservative True |
보수적 래스터화를 활성화하거나 비활성화합니다. DX 11.3+ 또는 GL_NV_conservative_raster가 필요합니다. |
파라미터 | 값 | 기능 |
---|---|---|
enabled | True |
보수적 래스터화를 활성화합니다. |
False |
보수적 래스터화를 비활성화합니다. |
Shader "Examples/CommandExample"
{
SubShader
{
// The rest of the code that defines the SubShader goes here.
Pass
{
// Enable conservative rasterization for this Pass.
Conservative True
// The rest of the code that defines the Pass goes here.
}
}
}
이 예제 코드는 SubShader 블록에서 이 커맨드를 사용하기 위한 구문을 나타냅니다.
Shader "Examples/CommandExample"
{
SubShader
{
// Enable conservative rasterization for this SubShader.
Conservative True
// The rest of the code that defines the SubShader goes here.
Pass
{
// The rest of the code that defines the Pass goes here.
}
}
}
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.