이번 Blender 4.5의 Fluid 시뮬레이터를 이용한 Fire와 Smoke 시리즈의 첫 번째 튜토리얼에서는, Blender에서 시뮬레이션을 만들기 위해 필요한 두 가지 기본 요소를 살펴보겠습니다.


이 튜토리얼은 Blender 4.5의 불과 연기 기초에 관한 10편짜리 미니 시리즈의 일부입니다. 전체 에피소드 목록을 보려면 여기를 클릭하세요.


영상 자막 텍스트

안녕하세요! 이번 Blender 4.5의 Fluid 시뮬레이터를 이용한 Fire와 Smoke 시리즈의 첫 번째 튜토리얼에서는, Blender에서 시뮬레이션을 만들기 위해 필요한 두 가지 기본 요소를 살펴보겠습니다.

빈 Blender 씬에서 시작해 보겠습니다. 씬에 Fire나 Smoke를 추가하려면, 가장 먼저 이러한 요소를 방출하는 오브젝트를 넣어야 한다고 생각할 수 있습니다. 그 생각은 맞지만, Blender에서 시뮬레이션을 실행하기 위해 필요한 기본 요소의 절반만 포함하고 있습니다. 어쨌든 우선 Fire와 Smoke의 방출체 역할을 할 오브젝트를 씬에 추가해 보겠습니다.

Blender의 Fire와 Smoke 시뮬레이션 도구는 각 오브젝트의 Physics 탭에 있습니다. 우리가 추가해야 할 컴포넌트의 유형은 Fluid인데, 이는 Liquid뿐만 아니라 Fire와 Smoke 시뮬레이션도 처리합니다. 처음에는 Type이라는 메뉴만 보이는데, 이 단계에서는 아직 Fluid나 다른 카테고리를 구분하지 않고, 단순히 시뮬레이션에서 가능한 액터 역할을 나열합니다.

각 요소 유형의 Tooltip은 그 기능에 대한 힌트를 줍니다. 특히 Flow 타입은 씬에 요소를 추가하거나 제거하는 데 사용된다는 것을 알 수 있습니다. 우리가 만든 첫 번째 오브젝트는 Fire와 Smoke의 방출체가 되어야 하므로, 이 유형을 선택하겠습니다.

이제 컴포넌트 패널에 여러 새로운 옵션이 나타납니다. 첫 번째는 Flow Type으로, 기본값은 Smoke입니다. 이 메뉴를 열어보면 Liquid에는 하나의 옵션만 있는 반면, Fire와 Smoke에는 세 가지 선택지가 있다는 것을 알 수 있습니다. 두 요소를 개별적으로 사용할 수도 있고, 조합해서 사용할 수도 있습니다. Fire And Smoke 옵션에는 두 요소 모두의 파라미터와 설정이 포함되어 있으므로, 이 튜토리얼 시리즈의 첫 부분에서는 이 옵션을 선택하겠습니다.

Cloth나 Collision 같은 Blender의 다른 물리 시뮬레이션에 익숙하다면, 이제 Timeline의 첫 프레임으로 가서 Play 버튼을 눌러 Fire와 Smoke 시뮬레이션이 시작되길 기대할 수 있습니다. 하지만 이렇게 하면 아무런 결과가 나오지 않습니다. 따라서 Timeline의 첫 프레임으로 돌아가, Fluid 시뮬레이션에 필요한 두 번째 기본 액터인 Domain을 추가해야 합니다.

모든 Fluid 시뮬레이션은 메쉬로 정의된 3D 공간, 즉 Volume 안에서 이루어져야 합니다. Blender에서는 이 Volume을 시뮬레이션의 Domain이라고 부릅니다. 이는 주로 성능상의 이유 때문인데, 이러한 시뮬레이션은 많은 메모리와 연산을 요구하기 때문입니다. Domain은 어떤 형태의 오브젝트라도 될 수 있지만, Blender는 결국 Bounding Box를 사용합니다. 따라서 가장 명확한 선택은 Cube를 적절하게 스케일링해서 사용하는 것입니다.

이제 방출체 오브젝트를 Domain 역할을 할 Cube 안에 넣었으니, Cube를 선택하고 Fluid 컴포넌트를 추가한 다음 Type을 Domain으로, Subtype을 Gas로 설정하겠습니다. Cube는 즉시 투명하게 변하면서 내부 구조가 보이게 됩니다. 또한 한쪽 하단 모서리에 작은 Cube가 나타나는데, 곧 그것이 무엇인지 보게 될 것입니다. 그러나 가장 큰 변화는 Domain 안의 Inflow 오브젝트가 이제 불꽃에 둘러싸이게 되었다는 점입니다!

Timeline에서 첫 번째 프레임을 현재 프레임으로 설정한 후 Play를 눌러 시뮬레이션을 시작해 보겠습니다. 무언가 분명히 일어나지만, 첫 번째 Fire와 Smoke 시뮬레이션치고는 다소 실망스러워 보입니다. 불꽃은 처음 몇 프레임에서만 나타나고, 그 이후에는 Smoke만 남기 때문입니다.

이런 동작의 원인은 방출체 오브젝트의 설정 중 하나에 있습니다. 해당 오브젝트를 선택해 보겠습니다. 우리가 확인해야 할 Fluid 컴포넌트 파라미터는 Flow Behavior로, 기본값은 Geometry입니다. Tooltip에 따르면 Geometry는 현재 지오메트리를 사용해 Fire를 생성하는 반면, Inflow 모드는 씬에 Fire를 지속적으로 추가합니다. 따라서 모드를 Inflow로 전환한 뒤 Timeline의 첫 프레임으로 돌아가 다시 Play를 눌러 보겠습니다.

Inflow의 “adds fire”라는 표현이 핵심입니다.

Inflow 오브젝트는 매 프레임마다 지오메트리로부터 새로운 시뮬레이션 요소를 계속 생성합니다.

반면 Geometry 모드는 첫 프레임에서만 지오메트리를 고려하고 즉시 소모해 버립니다.

비유하자면, Geometry 모드는 작은 종잇조각을 태우거나 스모크 머신이 한 번만 연기를 내뿜는 것과 같고, Inflow는 가스레인지 버너나 계속해서 연기를 내뿜는 스모크 머신과 같습니다.

오브젝트의 하단 부분에서 특히 불꽃이 약간 블록처럼, 정확히는 3D이므로 큐브처럼 보인다는 것을 눈치채셨을 수도 있습니다. 이러한 모양은 Domain 파라미터 중 하나인 Resolution 때문인데, 이는 Domain의 볼륨이 작은 큐브로 얼마나 세밀하게 분할되는지를 결정합니다.

실제로 이 Resolution은 Domain 하단 모서리에 나타나는 작은 Cube로 시각적으로 표시되며, 특히 낮은 값일 때는 불꽃과 Smoke가 그 크기의 큐브로 나뉘어 보이는 것을 쉽게 확인할 수 있습니다.

Fluid 시뮬레이션은 Domain의 볼륨을 작은 Cube로 분할하여 계산하는데, 이를 Voxel이라고 부릅니다.

Voxel은 시뮬레이션 계산에 사용되는 가장 작은 단위이며, 2D 이미지의 Pixel에 해당하는 3D 개념입니다.

Pixel과 마찬가지로, 동일한 볼륨에 대해 Voxel 수가 많을수록 품질은 좋아지지만, 더 많은 연산 자원과 디스크 메모리가 필요합니다. 가장 좋은 접근 방법은 기본 Resolution 값인 32에서 시작하여 다른 파라미터를 조정하면서 원하는 Fire와 Smoke 형태를 얻은 다음, Resolution을 점차 높여 테스트하고 최종 결과물에는 아주 높은 값을 사용하는 것입니다.

이제 메모리 사용과 관련해, Fluid 시뮬레이션 데이터가 어디에 저장되는지도 살펴보겠습니다. 특히 저는 아직 프로젝트 파일을 저장하지 않았습니다. 이 정보는 Domain 오브젝트의 Cache 섹션에서 확인할 수 있으며, 거기에 표시된 경로를 보면 Blender가 시뮬레이션 파일을 저장할 디스크 폴더를 생성한 것을 알 수 있습니다. 현재 프로젝트 파일을 저장하지 않았기 때문에, 이 폴더는 임시 위치에 만들어졌습니다. 그러니 제가 한 것처럼 하지 마시고, 항상 Blender 프로젝트 파일을 Domain과 다른 Fluid 시뮬레이션 요소를 만들기 전에 저장하세요. 그래야 Cache 폴더가 프로젝트 파일과 같은 디렉토리에 생성되어, 디스크에서 따로 찾아 헤맬 필요가 없습니다!

이 시점에서 뷰포트 셰이딩 모드를 전환하거나 Timeline의 중간 프레임에서 렌더링을 실행해도 Fire나 Smoke는 보이지 않습니다. 그 이유는 현재 3D Viewport의 Solid 모드에서 보이는 것은 단지 3D 공간에서 Fire와 Smoke의 Voxel 시각화일 뿐이며, 아직 렌더링용 Material을 정의하지 않았기 때문입니다. 이 부분은 다음 에피소드에서 다루겠습니다!

튜토리얼 검색

검색 문구 또는 여러 개의 키워드를 쉼표로 구분해 입력하세요.

이 웹사이트는 개인 사이트이며 판매 채널이 아닙니다. 3D 모델 관련 페이지는 제 작업 중 일부를 기록하기 위한 것이며, 판매 제안, 가격, 구매 방법 또는 상업적 링크를 포함하지 않습니다. 현재 맞춤형 작업, 컨설팅 또는 기타 전문적인 협업 요청은 받지 않습니다.


확장된 개인정보 및 쿠키 사용 정책