이번 튜토리얼에서는 Blender에서 Movie Texture를 사용하는 방법을 알아보겠습니다. 그중에서도 Movie의 여러 프레임을 3D Viewport에서 직접 미리 보는 방법과 Timeline에서 재생 시작 프레임을 설정하는 방법을 살펴보겠습니다.
이 튜토리얼의 동영상 버전은 현재 이 언어로 제공되지 않습니다. 아래에서 자막이 포함된 영어 버전을 시청할 수 있으며, 동영상 아래에는 한국어로 번역된 스크립트가 있습니다.
영상 자막 텍스트
여러분, 안녕하세요! 이번 튜토리얼에서는 Blender에서 Movie Texture를 사용하는 방법을 알아보겠습니다. 그중에서도 Movie의 여러 프레임을 3D Viewport에서 직접 미리 보는 방법과 Timeline에서 재생 시작 프레임을 설정하는 방법을 살펴보겠습니다.
시작하기 전에, 제 다른 영상들과 마찬가지로 이 튜토리얼의 텍스트 버전과 기타 자료를 제 웹사이트에서 확인할 수 있으며, 설명란의 링크를 통해 다른 언어로도 이용할 수 있다는 점을 알려드립니다.
이번 튜토리얼에서 사용하는 프로젝트에서는 왼쪽에 3D Viewport와 Timeline을 배치했고, 중앙에는 Texture mapping을 위한 UV Editor와 Material editor를 배치했습니다. 마지막으로 오른쪽에는 일반적인 Outliner와 Properties Editor가 있습니다. 컴퓨터 화면의 3D model에는 전용 Material이 적용되어 있으며, Texture에 적합한 UV mapping도 이미 설정되어 있습니다.

특히 이 Material은 표시하려는 image 또는 movie에 색상이 있는 원을 나타내는 mask를 곱하는 방식으로 만들어져 있습니다. 이렇게 곱하면 오래된 CRT monitor의 외관을 시뮬레이션하는 데 도움이 됩니다. 이 기법은 이전에 채널과 제 웹사이트에 게시한 튜토리얼에서 다룬 적이 있습니다.
Movie는 일반적인 Image Texture node를 사용하여 가져올 수도 있고, 파일을 Material editor로 직접 드래그하여 가져올 수도 있습니다. 이 경우 Movie mode로 설정된 Image Texture node가 자동으로 생성됩니다.

Texture 설정에서 주로 살펴볼 항목은 Extension menu, 세 가지 숫자 parameter인 Frames, Start Frame, Offset, 그리고 Auto Refresh option입니다.
Auto Refresh option은 Timeline에서 한 프레임에서 다른 프레임으로 이동할 때 Movie가 재생되는 모습을 3D Viewport의 Rendered preview에서 직접 확인하고 싶을 때 유용합니다. 하지만 예를 들어 Timeline의 frame 200으로 이동하면 Auto Refresh를 활성화한 후에도 3D Viewport의 Rendered preview에서 Texture에 아무런 변화가 나타나지 않습니다.

그 이유는 Auto Refresh뿐만 아니라 Texture node의 Frames field에도 올바른 값을 설정해야 하기 때문입니다. 이 값은 Movie에서 재생할 수 있도록 사용할 프레임 수를 지정합니다. Clip에 몇 개의 프레임이 포함되어 있는지 확인하려면 UV Editor에서 clip을 열고 N을 눌러 Sidebar를 열면 됩니다. Image tab에서 필요한 값을 확인할 수 있으며, 제 경우에는 2843입니다. 이 parameter까지 설정하면 3D Viewport에서 올바른 preview를 확인할 수 있습니다.

이제 3D Viewport의 preview는 올바르게 업데이트되지만 UV Editor의 preview는 그렇지 않다는 점에 주목하세요. 그 이유는 UV Editor에서도 Sidebar의 Image tab에 있는 Frames field에 표시할 Movie의 프레임 수를 설정해야 하기 때문입니다. 다행히 Image tab의 Frames field 옆에는 Match Movie Length button이 있어서 이 값을 빠르게 설정할 수 있습니다.

3D Viewport와 UV Editor 모두에서 현재 프레임을 확인할 수 있으면 일반적인 image Texture를 사용할 때와 마찬가지로 UV mapping을 올바르게 설정하는 데에도 도움이 됩니다. 이때 Extension menu가 특히 중요합니다. 기본값은 Repeat로 설정되어 있습니다. 이 mode에서는 UV island가 frame보다 크면 frame image가 geometry 전체에 여러 번 반복됩니다.

제 경우에는 실제로 UV island가 frame보다 작기 때문에 기본 설정을 그대로 사용해도 괜찮습니다. 하지만 필요한 경우 Extension mode를 Clip으로 변경할 수 있으며, 이렇게 하면 다른 영역에서 Texture가 반복되지 않습니다. Movie의 나머지 부분에도 더 잘 맞도록 UV island를 조정하기 위해 몇 프레임 앞으로 이동하겠습니다.

이제 Start Frame과 Offset parameter를 살펴보겠습니다. 먼저 Offset부터 보겠습니다. 보시다시피 제 경우 Lucasfilm Games logo는 Timeline의 frame 77에서 나타납니다. 이 logo가 Timeline의 첫 번째 프레임에서 바로 나타나게 하려면 Offset field에 76을 입력해야 합니다. 이렇게 하면 Movie가 들어 있는 Texture node가 Movie의 frame 77로 바로 건너뛰게 됩니다.
하지만 이 경우에도 Rendered preview와 UV Editor의 값이 서로 별도로 설정된다는 점을 기억하세요. 따라서 UV Editor에서도 동일한 결과를 얻으려면 그곳의 Offset value 역시 76으로 변경해야 합니다.

이제 Image Texture node와 UV Editor 모두에서 Offset을 다시 0으로 설정하고, 기본값이 1인 Start Frame parameter에 대해 알아보겠습니다.
이 경우에는 전체 animation의 Timeline에서 특정 프레임부터 Movie를 재생하도록 Blender에 지정하는 것입니다. 기본값이 1인 이유는 일반적으로 Movie Texture가 Blender animation의 첫 번째 프레임부터 재생되기 때문입니다. 하지만 예를 들어 처음 100프레임 동안 camera를 screen에 더 가까이 이동시킨 다음에 Movie를 재생하고 싶어서 Timeline의 frame 100부터 Movie가 재생되도록 설정한다고 가정해 보겠습니다. Lucasfilm Games logo가 Texture의 frame 77에서 나타난다고 했죠? 그렇다면 node의 Start Frame field에 100을 입력하면 시작 시점이 100프레임만큼 지연되기 때문에 이제 logo가 Timeline의 frame 176에서 나타납니다. 마찬가지로 UV Editor에서도 동일한 결과를 얻으려면 Image tab의 Start Frame value도 변경해야 합니다. 이 tab에서는 Timeline의 frame 176에 있음에도 불구하고 Blender가 100프레임의 offset을 고려하기 때문에 Movie의 frame 77에 있다고 표시한다는 점에 주목하세요.

따라서 Start Frame과 Offset의 차이는 다음과 같습니다. Start Frame을 사용하면 Image Texture node의 Movie가 Blender Timeline의 첫 번째 프레임을 기준으로 다른 시점에서 재생을 시작하도록 할 수 있으며, 음수 값도 사용할 수 있습니다. 반면 Offset을 사용하면 Image Texture node에서 Movie의 일부 프레임을 건너뛰고 Movie의 다른 지점부터 재생을 시작할 수 있습니다.
마지막으로 실용적인 예제를 하나 보여드리겠습니다. 먼저 node의 Start Frame과 Offset value를 각각 1과 0으로 초기화하겠습니다. 편의를 위해 Rendered preview에 집중하겠지만, UV Editor에서도 동일한 결과를 확인하려면 그곳의 값도 변경해야 한다는 점을 기억하세요.

Lucasfilm logo는 Texture의 frame 77에서 나타나고, 실제 The Secret of Monkey Island intro의 첫 화면은 frame 281에서 나타난다는 것을 알고 있습니다. 처음 100프레임 동안 camera가 screen에 가까워지는 animation을 만들려고 합니다. 이 시간 동안 방의 light intensity는 0까지 감소하고 screen은 검은색으로 유지되어야 합니다. 그런 다음 Lucasfilm Games logo 부분을 건너뛰고 intro screen이 즉시 나타나야 합니다. 필요한 Keyframes를 삽입하여 camera movement와 lighting change를 만들겠습니다.
Movie를 frame 280부터 재생하려면 Offset field에 280을 입력해야 합니다. 또한 Blender Timeline의 frame 100에서 재생을 시작해야 하므로 Start Frame field에 100을 입력해야 합니다.

하지만 animation을 preview해 보면 frame 100 이전의 프레임도 여전히 표시되는 것을 확인할 수 있습니다. 이 시점에는 screen이 검은색이어야 합니다. 이 문제를 해결하려면 Mix node를 사용하여 Movie output과 검은색을 혼합하고, 이 Mix node의 Factor를 animate하면 됩니다. 구체적으로 frame 99까지 Factor를 0으로 설정하고 frame 99에 keyframe을 삽입한 다음, frame 100에서 Factor를 1로 설정하고 또 하나의 keyframe을 frame 100에 삽입합니다. 이렇게 하면 두 프레임 사이에서 즉시 전환됩니다. 검은색이 Mix node의 첫 번째 input이라면 Factor는 처음에 0으로 설정한 다음 1로 변경해야 합니다. Factor가 0이면 첫 번째 input만 사용하고, Factor가 1이면 두 번째 input만 사용하기 때문입니다.



이번 튜토리얼은 여기까지입니다! 도움이 되셨다면 Like를 남기고 채널을 구독하여 저를 응원해 주세요! 곧 다시 만나요!