깜빡이는 불빛

깜빡이면서 색도 변하는 빛을 구성해 보는 타임라인 예제입니다.

Windows
MacOS
Linux

깜빡이면서 색도 변하는 빛을 구성해 보는 타임라인 예제입니다.

깜빡이는 불빛

이 예제에서는 단순한 포인트 라이트를 가지고 플레이어가 트리거를 건드릴 때 불빛의 색이 변하고 깜빡이기 시작하다가 5 초 후 원래대로 돌아오는 식으로 조작해 보겠습니다.

이 예제의 좋은 점은 타임라인에 세 가지 다른 유형의 트랙을 사용한다는 것입니다:

Timeline.png

표시되는 라이트는 밝기가 깜빡이고 색이 변합니다.

셋업

타임라인은 하나마다 한 트랙씩, 세 가지 주요한 기능을 합니다:

  1. (이름이 Brightness 인) Float 트랙 은 밝기 애니메이션을 처리합니다. 이 커브는 콘텐츠 브라우저에서 Flicker Curve 애셋을 사용하여 추가했습니다.

  2. (이름이 Light Color 인) Vector 트랙 은 불빛의 색 애니메이션을 처리합니다. 시퀀스 시작시 주황색으로 바뀌었다가 마지막에는 하양으로 돌아오는 방식으로 처리됩니다. 커브 보간은 clamp (제한) 방식으로 설정, 다음 키까지 값이 상수로 남아있도록 합니다.

  3. (이름이 Trigger Toggle 인) Event 트랙 은 타임라인 시퀀스 기간 동안 트리거를 끕니다. 이벤트 트랙이기 때문에 키프레임 값은 무관합니다. 타임라인이 키프레임을 만날 때마다 트랙에 연결된 출력 핀으로부터 실행 신호가 전달됩니다.

네트워크의 로직은 꽤나 간단합니다. 깜빡임은 시작서부터 항상 재생하고 싶기에, 이벤트는 Play from Start 에 물려 줍니다. 그런데 재생 도중에는 타임라인이 다시 트리거되지 않도록 해야 하기에, 순전히 타임라인이 재생중인지만 확인하는 부울 변수 값을 검사합니다.

이 변수의 기본값은 False, 즉 항상 트리거를 처음 건드릴 때는 재생합니다. 즉 타임라인에서 벌어지는 일은 다음과 같습니다:

  • Brightness 트랙의 결과에 20 을 곱해 불빛의 세기를 더합니다.

  • 불빛의 색 역시 다음 동작에 따라 바뀝니다.

  • 이벤트 트랙을 사용하여 Is Timeline Playing* 변수를 _True_ 로 설정하는 플립플롭 회로를 토글시킵니다. 이 변수는 누군가가 트리거를 건드릴 때마다 검사하는 것이기에, 재생이 시작되자마자 이 트리거는 꺼 줍니다.

  • 재생이 끝나면 이벤트 트랙은 Toggle Trigger 이벤트 트랙으로부터 또다른 신호를 보내고, 그게 플립플롭 회로를 다시 건드려 부울을 다시 끄고, 트리거를 다시 켤 수 있는 상태로 만듭니다.

클릭하면 크게 볼 수 있습니다.

태그

새로운 언리얼 엔진 4 문서 사이트에 오신 것을 환영합니다!

문서 사이트에 대한 의견을 모을 수 있는 피드백 시스템을 포함해서 여러가지 새로운 기능을 준비하고 있습니다. 아래 Documentation Feedback 포럼(영문) 또는 언리얼 엔진 네이버 공식 카페(한글) 중 편하신 곳에 의견이나 문제점을 알려 주세요.

새 시스템이 준비되면 알려 드리겠습니다.

네이버 카페
공식 포럼