1 minute read

스카이박스

Window - Rendering - Lighting - Environment 에 Skybox Material에 만든 Material을 설정하면 되고, 그 후 Material을 변경하면 하늘과 배경이 바뀐다.
Sun 에는 Light 개체를 넣어주면 태양을 조절할 수 있다.

AnimationCurve

애니메이션의 변화를 조절할 수 있는 기능

  AnimationCurve animationCurve
  float intensity = animationCurve.Evaluate(time);

이런 식으로 시간에 따라 변화를 줄 때 time을 0~1까지 소수 값으로 0퍼센트에서 100퍼센트까지 조절하여 값을 넣어주면 이를 기준으로 해당 시간에 곡선 값을 반환한다.
그러면 해당 값으로 애니메이션을 적용하려는 물체의 색, 위치, 회전 등등을 조절할 수 있다.
이 때 곡선을 구성하는 주요 구성요소는 keyframe으로

        curve = new AnimationCurve();
        
        // 키프레임 추가
        curve.AddKey(0f, 0f);
        curve.AddKey(1f, 2f);
        curve.AddKey(2f, 0f);
        
        // 특정 시간에서 곡선의 값을 평가
        float valueAtTime1 = curve.Evaluate(1f);

이런식으로 시간, 값을 key로 해당 시간에 해당 값을 추가하면 이를 기준으로 곡선이 만들어진다.

Gradient

추가로

    Gradient gradient;
		lightSource.color = gradient.Evaluate(time);

이런식으로 Gradient를 쓰면 똑같은 time을 사용해서 시간에 따른 색 변화를 줄 수도 있다.

RayCast

방향을 정하여 그 방향에 존재하는 물체들을 정해둔 거리 내에서는 모두 확인하는 기능
LayerMask로 무시할 물체를 정할 수 있다.

뷰 절두체

스크린샷 2024-05-27 132123
출처 : https://docs.unity3d.com/kr/2020.3/Manual/UnderstandingFrustum.html 유니티 공식문서

카메라는 위에 사진에 보이는 Near clipping plane부터 Far clipping plane 내에 있는 오브젝트만 원근법을 적용하여 렌더링하며, 이보다 가깝거나 멀리있는 물체는 렌더링 되지 않는다.

InvokeRepeating

InvokeRepeating("MethodName", startTime, callRate);  

MethodName에 함수 이름을 string으로 입력하면 startTime 초 뒤에 시작해서 callRate 초마다 해당 함수를 시행하는 방법