예제 #1
0
 void EmitterMaterial_OnChangesMade(object sender, ObiEmitterMaterial.MaterialChangeEventArgs e)
 {
     if ((e.changes & ObiEmitterMaterial.MaterialChanges.PER_PARTICLE_DATA) != 0)
     {
         SetParticleMassFromDensity();
         SetParticleRestRadius();
         UpdateParticlePhases();
     }
 }
예제 #2
0
 void EmitterMaterial_OnChangesMade(object sender, ObiEmitterMaterial.MaterialChangeEventArgs e)
 {
     if ((e.changes & ObiEmitterMaterial.MaterialChanges.PER_PARTICLE_DATA) != 0)
     {
         CalculateParticleMass();
         SetParticleRestRadius();
         UpdateParticlePhases();
     }
     UpdateEmitterDistribution();
 }
예제 #3
0
        private void emitterMaterial_OnChangesMade(object sender, ObiEmitterMaterial.MaterialChangeEventArgs e)
        {
            ObiEmitterMaterial material = sender as ObiEmitterMaterial;
            int index = emitterMaterials.IndexOf(material);

            if (index >= 0)
            {
                Oni.SetFluidMaterials(oniSolver, new Oni.FluidMaterial[] { material.GetEquivalentOniMaterial(parameters.mode) }, 1, index);
            }
        }