이번 Blender 4.5의 Fluid 시뮬레이터를 이용한 Fire와 Smoke 시리즈의 네 번째 튜토리얼에서는, Fire와 Smoke의 물리 시뮬레이션에 사용되는 세 가지 Flow 오브젝트 유형의 파라미터를 자세히 살펴보겠습니다.


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


영상 자막 텍스트

안녕하세요! 이번 Blender 4.5의 Fluid 시뮬레이터를 이용한 Fire와 Smoke 시리즈의 네 번째 튜토리얼에서는, Fire와 Smoke의 물리 시뮬레이션에 사용되는 세 가지 Flow 오브젝트 유형의 파라미터를 자세히 살펴보겠습니다.

제가 사용하는 씬에는 벽난로 안에 장작이 배치되어 있습니다. 이 장작은 하나의 메쉬 오브젝트로 구성되어 있으며, 이를 Inflow로 설정하겠습니다. 시뮬레이션용 Domain은 이미 생성해 두었으며, 벽난로의 볼륨만 포함하도록 설정했습니다.

장작에 Fluid 컴포넌트를 Inflow 타입으로 할당합니다. Fire And Smoke 모드는 Smoke와 Fire 파라미터를 모두 포함하고 있으므로, 모든 파라미터를 분석하기 위해 이 조합을 선택합니다. 이후에는 Fire 전용 시뮬레이션에서는 사용할 수 없는 Smoke 전용 파라미터를 따로 짚어드리겠습니다. 보시는 것처럼 파라미터 수가 그렇게 많지는 않습니다.

기본적으로 Flow Behavior는 Geometry로 설정되어 있습니다. 앞서 본 것처럼 이 모드는 처음에만 불꽃과 연기를 내고, 그 이후에는 더 이상 Fire나 Smoke를 방출하지 않습니다. 폭발이나 단발적인 연기에는 유용하지만, 이번 경우에는 Inflow 모드가 필요합니다. 어쨌든 Use Flow 체크박스를 제외하면 Geometry와 Inflow는 같은 파라미터를 공유하므로, 우리는 Inflow를 기준으로 모든 파라미터를 살펴보겠습니다.

이전 에피소드에서 배운 것처럼 불꽃의 양은 Fuel 파라미터로 조절할 수 있습니다. 이번 경우에는 값을 약간 낮춰 활발하지만 과하지 않은 불꽃을 만들거나, 더 크게 낮춰 잔불을 표현할 수 있습니다.

Domain의 크기를 조금 줄이고 Resolution을 높였습니다. Inflow 파라미터를 보기 전에, Outflow 오브젝트를 사용해 벽난로 안의 연기를 사라지게 하는 방법을 살펴보겠습니다.

Outflow 오브젝트는 Fire나 Smoke와 같은 Fluid 시뮬레이션 요소를 충돌 시 사라지게 하는 메쉬입니다. 단순한 Plane을 추가해 Outflow로 사용하고, 연기가 굴뚝으로 빠져나가는 위치에 배치했습니다. Outflow 오브젝트는 Inflow 오브젝트처럼 렌더링에서 반드시 보일 필요는 없습니다. 따라서 3D Viewport 미리보기와 최종 렌더링에서 가시성을 꺼두겠습니다. 이제부터는 Outliner에서만 선택하겠습니다.

오브젝트에 Fluid 컴포넌트를 추가하고, Type을 Smoke Flow, Behavior를 Outflow로 설정합니다.

이 유형의 오브젝트는 파라미터가 매우 적으며, 사실 Geometry와 Inflow 오브젝트에도 존재하는 것들입니다.

간단히 설명드리겠습니다. Is Planar 옵션은 오브젝트에 볼륨이 없거나 일반적으로 닫혀 있지 않을 때 선택해야 합니다. Plane은 정확히 이런 경우이므로 이 옵션을 활성화합니다. Use Flow 파라미터는 Inflow나 Outflow를 활성화하거나 비활성화할 수 있으며, 애니메이션이 가능해 간헐적이거나 비연속적인 Fire와 Smoke의 방출 또는 제거를 만들 때 유용합니다.

Sampling Substeps 파라미터는 프레임 사이에 계산되는 추가 시뮬레이션 단계 수를 정의하며, 시뮬레이션의 품질을 향상시킵니다.

빠른 시뮬레이션에서 특히 유용하며, 3 정도의 낮은 값만으로도 눈에 띄는 차이를 만듭니다.

Surface Emission과 Volume Emission은 Fire와 Smoke의 방출 또는 흡수 지점을 오브젝트의 표면이나 볼륨으로부터 오프셋할 수 있지만, 이번 경우에는 필요하지 않습니다. Flow Source는 나중에 다루겠습니다.

시뮬레이션을 실행해 보면 처음에는 괜찮아 보이지만, 어느 순간 약간의 연기가 위로 빠져나가는 것을 확인할 수 있습니다. Substeps 수를 늘려도 상황은 변하지 않습니다.

Plane을 다시 3D View에서 보이게 하고 시점을 바꿔보면, 해결 방법이 분명해집니다. Plane이 너무 작아서 어느 순간 일부 Smoke가 바깥으로 빠져나가 위로 올라가는 것입니다. 유일한 해결책은 Plane의 크기를 적절히 조정하고 다시 시도하는 것입니다.

이제 Outflow에서 이미 다룬 항목들을 제외하고, Inflow 오브젝트의 파라미터를 자세히 살펴보겠습니다! Smoke Color는 사실 렌더링 시 Smoke의 색상이 아니라 3D Viewport 미리보기에서의 색상을 의미합니다. 여기서 다른 색상을 지정하는 것은 복잡한 씬에서 Smoke를 더 쉽게 식별하거나, 이 오브젝트의 Attribute를 Shading에서 사용해 Domain Material의 색상이나 다른 요소를 변경하는 데 유용할 수 있습니다.

Absolute Density 필드는 기본적으로 활성화되어 있으며, 일반적으로 그대로 두는 것이 좋습니다. 이렇게 하면 Domain 안에서 Fire와 Smoke의 최대 밀도가 일정하게 유지되기 때문입니다. 비활성화하면 Fire와 Smoke가 급격히 증가하여 통제 불능의 불길 같은 결과가 나올 수 있습니다. 여기서는 Outflow의 존재로 인해 효과가 제한되므로, 이를 Domain에서 일시적으로 제거해 불꽃이 증가하는 모습을 보여드리겠습니다. Absolute Density를 끄는 것이 유용한 경우도 있지만 대부분은 그렇지 않으므로 다시 켜두겠습니다.

Initial Temperature와 Density 파라미터는 Smoke에 관한 것이므로 Fire 전용 시뮬레이션에서는 사용할 수 없습니다. Density는 방출할 Smoke의 양을 의미하며, 값이 높을수록 부피가 커집니다. 실제로 이번 씬에서는 Smoke가 너무 많이 방출되고 있어서 이 값을 낮추겠습니다.

Initial Temperature 파라미터는 Smoke의 온도와 주변 환경의 온도 차이를 정의하며, 기체가 상승하는 속도를 제어합니다. 그러나 그 효과는 Domain 파라미터 중 하나인 Buoyancy Heat와 연결되어 있으므로, 이 부분은 다른 에피소드에서 더 자세히 살펴보겠습니다.

지금까지는 Inflow 오브젝트가 표면 전체에서 불꽃을 방출하도록 했지만, Vertex Group에서 특정 버텍스를 선택하고 Flow 컴포넌트의 해당 필드에 이 Vertex Group의 이름을 지정하면 방출 영역을 제한할 수 있습니다.

불꽃 방출에 변화를 줄 수 있는 또 다른 도구는 Inflow 패널 하단에 있는 Texture입니다. 여기에서 Texture를 할당할 수 있으며, 특히 중요한 것은 Offset 필드입니다. 이 필드는 Procedural Texture의 어떤 “슬라이스”를 사용할지를 정의합니다. Clouds나 Noise와 같은 Procedural Texture는 2D 이미지가 아니라 실제 3D 볼륨입니다.

Timeline에서 Offset 값을 애니메이션하면, 화면에서 보듯 Texture가 수직으로 이동하여 매번 다른 패턴을 사용하게 되고, 이로 인해 불꽃이 덜 균일해집니다. 이 방식의 문제는 적절한 Texture 유형과 Offset 변화의 조합을 찾기까지 여러 번 시도해야 한다는 점입니다.

Initial Velocity 그룹의 도구들은 불꽃에 초기 방향과 속도를 줄 수 있습니다. 필드 이름이 직관적이어서 더 설명할 필요는 거의 없지만, 다른 씬을 사용해 실제 예제를 나중에 보여드리겠습니다.

마지막으로 Flow Source 필드가 있는데, 여기서는 Mesh와 Particles 중 선택할 수 있습니다. 의미는 단순합니다.

지금까지는 Mesh를 사용해 오브젝트에서 Fire와 Smoke를 방출했으며, Vertex Group으로 방출 표면을 제한하기도 했습니다. 하지만 오브젝트에는 파티클 시스템을 추가할 수 있고, 때로는 방출체가 아니라 그 파티클이 Fire와 Smoke를 생성하도록 하고 싶을 수 있습니다. 이 경우 Flow Source를 Particles로 선택하고, 시뮬레이션을 구동할 파티클 시스템을 지정해야 합니다. 예상할 수 있듯이, 선택한 오브젝트의 지오메트리나 특정 파티클 시스템에 Flow 컴포넌트를 할당할 수 있습니다.

이 사이트는 제 작업 일부를 소개하기 위한 목적만을 가지고 있으며, 어떠한 홍보 목적도 포함하지 않습니다. 현재 맞춤 작업, 컨설팅 또는 기타 어떤 형태의 업무 협업에 대한 요청도 받고 있지 않으며, 이에 대해 응답하지 않으니 양해 부탁드립니다.


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