{!See https://docs.google.com/document/d/1takg_GmIBBKKTj-GHZCwzxohpQz7Bhekivkk72kYMtE/edit for reference implementation of OneTrust, dataLayer and GTM} {!OneTrust Cookies Consent} {!OneTrust Cookies Consent end} {!dataLayer initialization push} {!dataLayer initialization push end} {!Google Tag Manager} {!Google Tag Manager end} Transform 노드 | Shader Graph | 10.8.0
docs.unity3d.com
"{0}"의 검색 결과

    목차 표시/숨기기

    Transform 노드

    설명

    한 좌표 공간에서 다른 좌표 공간으로 입력 값(In)을 변환한 결과를 반환합니다. 노드에서 드롭다운 옵션을 선택하여 변환할 공간을 정의할 수 있습니다.

    포트

    이름 방향 Type 설명
    In 입력 벡터 3 입력 값
    Out 출력 벡터 3 출력 값

    컨트롤

    이름 Type 옵션 설명
    From 드롭다운 Object, View, World, Tangent, Absolute World 전환 시작 공간을 선택합니다.
    To 드롭다운 Object, View, World, Tangent, Absolute World 전환 대상 공간을 선택합니다.

    월드 및 절대 월드

    World 및 Absolute World 공간 옵션을 사용하여 포지션 값의 좌표 공간을 변환하십시오. World 공간 옵션은 스크립터블 렌더 파이프라인의 기본 월드 공간을 사용하여 포지션 값을 전환합니다. Absolute World 공간 옵션은 절대 월드 공간을 사용하여 모든 스크립터블 렌더 파이프라인의 포지션 값을 전환합니다.

    Transform Node를 사용하여 포지션 값이 아닌 좌표 공간을 전환하는 경우 Unity는 World 공간 옵션을 사용할 것을 권장합니다. 포지션을 나타내지 않는 값에 대해 Absolute World를 사용하면 예기치 않은 동작이 발생할 수 있습니다.

    생성된 코드 예제

    다음 예제 코드는 Base 모드에 대한 이 노드의 가능한 결과 중 하나입니다.

    World > World

    float3 _Transform_Out = In;
    

    World > Object

    float3 _Transform_Out = TransformWorldToObject(In);
    

    World > Tangent

    float3x3 tangentTransform_World = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
    float3 _Transform_Out = TransformWorldToTangent(In, tangentTransform_World);
    

    World > View

    float3 _Transform_Out = TransformWorldToView(In)
    

    World > Absolute World

    float3 _Transform_Out = GetAbsolutePositionWS(In);
    

    Object > World

    float3 _Transform_Out = TransformObjectToWorld(In);
    

    Object > Object

    float3 _Transform_Out = In;
    

    Object > Tangent

    float3x3 tangentTransform_World = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
    float3 _Transform_Out = TransformWorldToTangent(TransformObjectToWorld(In), tangentTransform_World);
    

    Object > View

    float3 _Transform_Out = TransformWorldToView(TransformObjectToWorld(In));
    

    Object > Absolute World

    float3 _Transform_Out = GetAbsolutePositionWS(TransformObjectToWorld(In));
    

    Tangent > World

    float3x3 transposeTangent = transpose(float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal));
    float3 _Transform_Out = mul(In, transposeTangent).xyz;
    

    Tangent > Object

    float3x3 transposeTangent = transpose(float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal));
    float3 _Transform_Out = TransformWorldToObject(mul(In, transposeTangent).xyz);
    

    Tangent > Tangent

    float3 _Transform_Out = In;
    

    Tangent > View

    float3x3 transposeTangent = transpose(float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal));
    float3 _Transform_Out = TransformWorldToView(mul(In, transposeTangent).xyz);
    

    Tangent > Absolute World

    float3x3 transposeTangent = transpose(float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal));
    float3 _Transform_Out = GetAbsolutePositionWS(mul(In, transposeTangent)).xyz;
    

    View > World

    float3 _Transform_Out = mul(UNITY_MATRIX_I_V, float4(In, 1)).xyz;
    

    View > Object

    float3 _Transform_Out = TransformWorldToObject(mul(UNITY_MATRIX_I_V, float4(In, 1) ).xyz);
    

    View > Tangent

    float3x3 tangentTransform_World = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
    float3 _Transform_Out = TransformWorldToTangent(mul(UNITY_MATRIX_I_V, float4(In, 1) ).xyz, tangentTransform_World);
    

    View > View

    float3 _Transform_Out = In;
    

    View > Absolute World

    float3 _Transform_Out = GetAbsolutePositionWS(mul(UNITY_MATRIX_I_V, float4(In, 1))).xyz;
    

    Absolute World > World

    float3 _Transform_Out = GetCameraRelativePositionWS(In);
    

    Absolute World > Object

    float3 _Transform_Out = TransformWorldToObject(In);
    

    Absolute World > Tangent

    float3x3 tangentTransform_World = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
    float3 _Transform_Out = TransformWorldToTangent(In, tangentTransform_World);
    

    Absolute World > View

    float3 _Transform_Out = TransformWorldToView(In)
    

    Absolute World > Absolute World

    float3 _Transform_Out = In;
    
    문서 개요
    맨 위로
    Copyright © 2023 Unity Technologies — 상표 및 이용약관
    • 법률정보
    • 개인정보처리방침
    • 쿠키
    • 내 개인정보 판매 금지
    • Your Privacy Choices (Cookie Settings)