---
title: "Liquid Source"
canonical: "https://documentation.chaos.com/space/PHX4MAYA/125895877/Liquid%20Source"
format: markdown
---
This page provides information on the Liquid Source (PhoenixFDLiquidSource) component in Phoenix for Maya.

## **Overview**

---

> Macro (ui-text-box)
> 
> When using a [V-Ray Vertex Colors](https://docs.chaosgroup.com/display/VRAY4MAYA/VRayVertexColors) <span style="color: #6a2a2c">texture as a color map for the RGB slot, or a mask to modulate any of the emission channels (e.g. Discharge, Smoke, etc.), make sure to set the</span> **Type** to **Set name** and the Set name to **colorSet1**. <span style="color: #305f7a">c</span>olorSet1 is the default naming convention for Maya's vertex color sets. If you add additional color sets (using Mesh Display → Create Empty Set), each consecutive set will be named colorSet2, colorSet3, etc.
> 
> For a step by step tutorial on using the Vertex Color texture for as the Source's RGB map, please check the [Simulation RGB Workflows (Chapter 3)](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/126030262) tutorial.
> 
> Otherwise, if you want to use a Vertex Color texture in the Discharge Mask, Temperature Mask, Smoke Mask, Fuel Mask or Particle Mask, note that it will read the Vertex Alpha and not the Vertex Color RGB. If you are using vertex painting, make sure to paint in RGBA mode and use Alpha = 0 for areas that should not emit. When using the Vertex Color texture as a mask, its Vertex Color RGB does not matter at all.
> 
> 
> ![image](media://99dc886c-45dc-4d57-8cce-4885f50766ea)


## **Parameters**

---

> Macro (ui-text-box)
> 
> Fluid can be emitted from a geometry’s surface, or from the entire volume of an emitting geometry. Non-Phoenix particles, such as **nParticles**, can also act as emitters for a Phoenix Source. They can emit from a spherical 3D shape, or from instanced geometry.
> 
> Note that if the **Emit Mode** is set to** Volume Brush** or **Volume Inject**, and you have a **Mask** that uses *Projection*, then the **Mask** will be applied on the whole volume, based on the closest geometry surface.

> Macro (ui-text-box)
> 
> Note that the** Source icon** itself does not emit fluid, so the position of the icon's viewport gizmo in the scene does not matter. Instead, you must pick the geometry and/or particles that you want to use as emitters, in the **Source’s list**.
> 
> Also, note that even if you do not simulate visible fluid like liquid, there can still be** Velocity** simulated within the grid, if for example, you animate an object to move around inside the grid to stir the Velocity channel. The simulated velocity can also be previewed in the viewport, or even rendered.

> Macro (ui-text-box)
> 
> - Particles with attached geometry will act like standard geometry obstacles and will push the fluid by default, as long as their **Solid **[Phoenix property](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/125961264) is enabled.
> - Particles without geometry will need to be attached to a Source in order to interact with the fluid in any way.
> - Particles without geometry can emit fluid using their shape and size using the Source's **Particle Shape** and **Custom Prt Size** options.
> - Particles without geometry will not affect the fluid's motion by default, so you need to enable **Motion Velocity** explicitly if you need this effect.
> - If **Motion Velocity** is enabled, the fluid emitted by a particle may refuse to leave the particle shape area and continue to move together with the particle, because it will have the same velocity.

> Macro (ui-text-box)
> 
> When using 2D Textures (such as **Ramp** for example) together with a Phoenix Source in **Volume Brush** mode you will need to set up a **Projection** and adjust the 3D placement node in order to get correct mapping.
> 
> While creating the texture, right-click over the Menu item in the Create panel and choose "Create as projection". Then select the projection node, press on the Interactive placement button and adjust your placement node.
> 
> 
> ![image](media://81ad9df9-2982-4189-b276-a4070ce66417)


## **TexUVW Emission**

---

> Macro (ui-text-box)
> 
> The main purpose of the Texture UVW feature is to provide dynamic UVW coordinates for texture mapping that follow the simulation. If such simulated texture coordinates are not present for mapping, textures assigned to your simulation will appear static, with the simulated content moving through the image. This undesired behavior is often referred to as 'texture swimming'. In Phoenix such textures can be used for mapping the [fire or smoke color and opacity of volumetrics](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/126060985), as well as the color and opacity of meshes. Texture can be also used for [displacing volumetrics and meshes](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/126255727).
> 
> UVW coordinates are generated by simulating an additional **Texture UVW Grid Channel **which has to be enabled under the** ****[Output rollout](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/126029700)** for the settings below to have any effect.
> 
> For additional information on the Texture UVW feature, please check the [Texture mapping, moving textures with fire/smoke/liquid, and TexUVW](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/125832240) page.

**Inherit TexUVW From Geom** | *texUVWFromGeom* – Sets the **UVW Grid Channel** value for each cell where fluid is emitted to the UV value of the emission geometry in that cell. As a consequence, for example, modulating the Smoke Color with a texture on the very first frame will produce a render that looks very close to the original geometry, if the same texture was applied to it. When this option is disabled, the TexUVW values will be based on the position of the emission object inside the Simulator. Please check the Texture UVW example below. 

**Variation** | *texUVWVarMode* – Variation is used to offset the UVW coordinates upon emission to avoid visible tiling once a texture is applied to the resulting simulation. Similarly to a printer, if the UVW channel is not varied, it would be like printing out the same sentence over and over again on each new line. When varied, the printer will change the line being printed. The following methods are available:

- **No Variation** - The <span style="color: #172b4d">emitted TexUVW will not change over time.</span>
- **Along U/V/W** - T<span style="color: #172b4d">**he emitted TexUVW value will change over time in the U/V/W direction and by the amount set in Variation/Sec**</span><span style="color: #172b4d">.</span>
- **Along Grid/Object/World Normals** - <span style="color: #172b4d">The emitted TexUVW value will change over time in the direction of the emitting geometry's normals in Grid/Object/World space and by the amount set in </span><span style="color: #172b4d">**Variation/Sec**</span><span style="color: #172b4d">. Grid space is the system of the Simulator, it always has the Z axis pointing up. Object space is the local transform of the emitter.</span>

**Variation/Sec** | *texUVWVarSpeed* – Controls the variation speed - the default value of 1 will cause textures assigned for rendering to repeat exactly once for every 30 frames (1 second) of the simulation.


> Macro (anchor)



### **Example: Inherit TexUVW with Variation**

---

> Macro (ui-text-box)
> 
> The following video provides examples of **Inherited** **Texture UVW** coordinates **repeating along the V-axis** over **0**, **1** and **2** seconds. When **Variation** is set to **0**, the V coordinate remains **static**. If **Variation** is set to **1**, it takes **one second** for a **full repetition/tile** along the V-axis.



## **Emission from Particles**

---

**Time Base** | *timeBase (enum: 0 - 1)* – This parameter is used when emitting from particle systems. It allows you to animate the parameters using the age of the particle instead of the timeline frame time.

**Absolute** – Parameters of the source will be animated based on the timeline frame time.  
**Particle Age** – Parameters of the source will be animated based on the age of the particle. This way, values at timeline frame 0 will apply to each particle at the moment of its birth, and e.g. values at frame 10 will apply to the particle 10 frames after it was born. This allows particles born at different moments to perform identical animations offset in time. This can be useful e.g. if you want all particles to emit strongly after they are born and reduce their emission after a while, but in case the particles are born through a long period of time, the **Absolute** mode will change the discharge of all particles together, while **Particle Age **will allow each particle to have its own copy of the animation.

> Macro (ui-text-box)
> 
> [Time Scale](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/125637296) different than 1 will affect the **Particle Age** in the Liquid Source. In order to get predictable results you will have to adjust the keyframes using this formula: **Time Scale * Time in frames**.

**Particle Shape** | *partShapeType (enum: 0, 1, 3)  *– This parameter is used when emitting from particle systems.

**Sphere, 1 voxel **– Each particle will be the size of one grid cell. Particle sizes and shapes will be ignored.  
**Sphere, use size** – The particle sizes (radiusPP) will be used.  
**Sphere, custom size** – The particle shape will be spherical and the size will be taken from the **Custom Particle Size** field.

> Macro (ui-text-box)
> 
> When a source emits from non-solid particles in any of the Sphere modes, the simulator traces each moving sphere and emits continuously throughout its trajectory, no matter how fast the particle is moving and how many steps the simulation uses. In a contrary way, in **Use particle shape** mode, the particles are getting evaluated the same way as regular mesh geometries, so in motion they are sampled only at the simulation steps without filling the trajectory in between the particle positions in time. In such case, if a particle moves very quickly and the simulator has low **[Steps per Frame](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/125637296)**, the trajectory of the particle would get interrupted and you should increase the simulation steps in order to keep it continuous.

**Custom Prt Size** | *partCustSizeUnits* – Specify a custom size for the particles using this option. The size is in scene units.


## **Discharge Modifiers**

---

A list of modifiers that allow modulating the emission using properties of the source object (such as Normal, Position or Speed) at the point of interaction with the simulator. A ramp control is used to remap from the value of the specified property to a user-specified multiplier.

See the [Discharge Modifiers](https://docs-chaos.atlassian.net/wiki/spaces/PHX4MAYA/pages/125963509) page for more information.


### **Example: RGB Map Vertex Color**

---