Baked GI 노드
설명
버텍스 또는 프래그먼트의 포지션에서 Baked GI 값에 대한 액세스를 제공합니다. 라이트 프로브 샘플링을 위한 Position 및 Normal 입력이 필요하고, 모든 잠재적인 라이트맵 샘플링 사례를 위한 라이트맵 좌표 Static UV 및 Dynamic UV가 필요합니다.
참고: 이 노드의 동작은 전역적으로 정의되지 않습니다. 셰이더 그래프는 노드의 기능을 정의하지 않습니다. 대신에 각 렌더 파이프라인이 이 노드에 대해 실행할 HLSL 코드를 정의합니다.
렌더 파이프라인마다 다른 결과를 생성할 수 있습니다. 한 렌더 파이프라인에서 셰이더를 빌드하여 두 렌더 파이프라인 모두에서 사용하려는 경우 프로덕션 전에 두 파이프라인에서 모두 확인하십시오. 노드는 한 렌더 파이프라인에서만 정의되고 다른 렌더 파이프라인에서에서는 정의되지 않을 수 있습니다. 이 노드가 정의되지 않으면 0(검은색)을 반환합니다.
Unity 렌더 파이프라인 지원
- 고해상도 렌더 파이프라인. 하지만 이 노드는 HDRP의 Unlit 마스터 노드를 타겟으로 하는 셰이더 그래프에서 동작하지 않습니다.
- 유니버설 렌더 파이프라인
포트
이름 | 방향 | Type | 바인딩 | 설명 |
---|---|---|---|---|
Position | 입력 | 벡터 3 | 포지션(월드 공간) | 메시 버텍스/프래그먼트의 포지션 |
Normal | 입력 | 벡터 3 | 노멀(월드 공간) | 메시 버텍스/프래그먼트의 노멀 |
Static UV | 입력 | 벡터 2 | UV1 | 정적 라이트맵에 대한 라이트맵 좌표 |
Dynamic UV | 입력 | 벡터 2 | UV2 | 동적 라이트맵에 대한 라이트맵 좌표 |
Out | 출력 | 벡터 3 | None | 출력 컬러 값 |
컨트롤
이름 | Type | 옵션 | 설명 |
---|---|---|---|
Apply Lightmap Scaling | Toggle | True, False | 활성화되면 라이트맵이 자동으로 스케일링 및 오프셋됩니다. |
생성된 코드 예제
다음 예제 코드는 이 노드의 가능한 결과 중 하나입니다.
void Unity_BakedGI_float(float3 Position, float3 Normal, float2 StaticUV, float2 DynamicUV, out float Out)
{
Out = SHADERGRAPH_BAKED_GI(Position, Normal, StaticUV, DynamicUV, false);
}