카테고리 없음

[Blender] 물리 시뮬레이션 기초 - Fluid Gas 개념

귤까망 2025. 10. 22. 21:10

연기나 불, 폭발처럼 기체 기반 효과를 물리적으로 표현

 

Flow
- Flow Behavior: Geometry(오브젝트 모양만큼 연기 발생), Inflow(가스가 계속 나옴), Outflow(Inflow의 배수구 역할)
- Use Flow: 연기를 나오게 할지말지
- Sampling Substeps: 빈 곳 없이 움직임을 좀 더 부드럽게 연결
- Smoke Color: 연기의 색 변경
- Initial Temperature: 초기 온도값 (음수면 가라앉음. flow type을 smoke로 변경하는 게 확인하기 좋음)
- Density: 연기의 밀도
- Fuel: 불의 세기
- Vertex Group: 버텍스 그룹에서 설정한 버텍스에서만 불과 연기가 나옴

Domain
- Resolution Divisions: 플루이드 시뮬레이션의 전체적인 해상도와 퀄리티 결정. Voxel 사이즈 조절 (64정도)
- Adaptive Domain: 도메인 크기를 효율적으로 계산 (알아서 사이즈가 조절됨. 꼭 켜기!)
   => Add Resolution값 조절로 내가 설정한 도메인 크기보다 더 키울 수 있음
- Gas > Buoyancy Density/Heat: 연기가 올라가는 속도를 밀도/열로 빠르게
- Vorticity: 난기류 생성
- Dissolve: 불과 연기의 지속 시간 (값이 클수록 오래 유지됨)
- Noise: 노이즈 텍스처
- Fire > Reaction Speed: 값이 클수록 빨리 타서 불이 금방 사라짐
- Flame Smoke: 불이 내뿜는 연기의 양 (Flow Type을 Fire로 하고 확인)
- Vorticity: 불에 대한 난기류 생성
- Temperature Max/Min: 불 최대온도값/최소온도값

 

 

커피잔에서 연기가 피어오르는 모션 만들기
콜렉션 창 아웃라이너에서 서치 옆에 아이콘 클릭
> 마우스모양 클릭한 후 cup 콜렉션의 커서 모양 끄기 =>> 커서 모양이 해제된 콜렉션은 선택되지 않음!
> simulation 콜렉션에 Domain으로 사용할 큐브 추가하고 카메라에 꽉차게 사이즈 조절
> 에디트 모드에서 위쪽 버텍스 잡고 늘려주기
> 도메인에 Fluid 시뮬레이션 적용하고 타입은 도메인, 도메인 타입은 가스로 설정
> Flow로 사용할 실린더 하나 꺼내고 납작하게 사이즈 조절해서 컵 안에 위치
> Flow에 Fluid 시뮬레이션 적용하고 타입은 Flow, 플로우 타입은 Smoke로 설정
> Flow Behavior은 Inflow로 가스가 계속 나오게 하기
> Domain에 들어가서 해상도 올려주고 Adapdive Domain으로 효율적인 계산 수행
> Dissolve 값 조절로 연기가 자연스럽게 사라지게 만들기

> Flow 선택하고 가장 아래의 Texture 체크
> Texture 속성창에서 New 추가하고 Type을 Clouds로 설정
   => 원리: 하얀 부분에선 연기가 나오고, 검은 부분에서는 연기가 나오지 않음! (퀄리티 높일 수 있음)
> Colors에서 Color Ramp 체크하면 패턴 수정 가능, Size로 크기 조절
   => alpha가 0이면 투명이므로 1로 설정해서 색 입히기
   => 두 색의 간격이 가까워지면 경계면이 뚜렷해짐을 이용해서 원하는 패턴으로 만들기
   * Texture 패턴을 수정해도 적용이 안된다면 Domian의 해상도 값 약간 수정하면 다시 적용됨!!
   * 해상도가 높으면 렉이 걸려 실제 속도를 알 수 없기 때문에 간단하게 렌더를 해봐야 알 수 있음
   => 레이아웃 상단의 View>Viewport Render Animation으로 Solid 뷰에서 간단히 렌더를 돌릴 수 있음
> Cache에서 Is Resumable 체크하고 All로 전체 베이크하기

* 렌더뷰에서 연기가 사라지는 이유 => 볼륨 렌더를 따로 해줘야 보임
> Domain에 머테리얼 추가 (Principled BSDF를 Volume노드로 변경)
=> 스나 안개같은 류는 노드를 Surface가 아닌 Volume에 연결해야함
컴포지팅에서 설정한 배경을 렌더뷰에서 확인하는 법: 뷰포트 쉐이딩 창에서 Compositor을 Always로 변경
> Density 값을 높이면 자욱한 연기 연출 가능
> Volume Info노드로 연결하면 Domain의 정보를 이해한 채로 조절이 가능 (자연스럽게)
> 너무 약하다면 Math 노드 추가해서 Multiply에서 Volume Info의 Value값과 추가한 노드의 Value값을 곱해줌 
   (Add는 연기가 0인 부분까지 더한 값이 적용되어서 곱으로 0인 부분 살려주기)
> 조금 더 자연스럽게 하기 위해 Color Ramp 추가
   (검정색의 범위가 늘어나면 안개가 연해지고, 하얀색의 범위가 늘어나면 안개가 진해짐)
* 이 상태에서 조금 더 진하게 하고 싶으면 컬러램프 다음에 Math 노드를 또 추가해주면 됨!
> 컬러램프에서 플러스 누르고 그 바를 가장 오른쪽으로 보낸 후 검정색으로 변경하여 자연스러운 모양 연출
   => 왼쪽 검정색은 바깥쪽, 오른쪽 흰색은 안쪽이므로 검정을 하나 더 추가해서 내부를 투명하게 해준 원리

물리 시뮬레이션 기초 - Fluid Gas