public void OnAutoInitValue()
    {
        NcEffectBehaviour[] oriComs = m_OriginalTrans.GetComponents <NcEffectBehaviour>();
        foreach (NcEffectBehaviour effect in oriComs)
        {
            effect.OnUpdateToolData();
        }
        NcEffectBehaviour[] insComs = transform.GetComponents <NcEffectBehaviour>();
        foreach (NcEffectBehaviour effect in insComs)
        {
            effect.OnUpdateToolData();
        }

        // Set particleSystem.speed
//      {
//          NcParticleSystem	ncParticleScaleOri	= (m_OriginalTrans.GetComponent<NcParticleSystem>());
//          NcParticleSystem	ncParticleScaleIns	= (transform.GetComponent<NcParticleSystem>());
//          if (ncParticleScaleOri != null && ncParticleScaleIns != null && ncParticleScaleOri.particleSystem != null)
//          {
//              ncParticleScaleOri.SaveShurikenSpeed();
//              ncParticleScaleIns.SaveShurikenSpeed();
//          }
//      }

        // Update bWorldSpace
        {
            NcParticleSystem ncParticleScaleOri = (m_OriginalTrans.GetComponent <NcParticleSystem>());
            NcParticleSystem ncParticleScaleIns = (transform.GetComponent <NcParticleSystem>());
            if (ncParticleScaleOri != null && ncParticleScaleIns != null)
            {
                ncParticleScaleIns.m_bWorldSpace = ncParticleScaleOri.m_bWorldSpace = NgSerialized.GetSimulationSpaceWorld(ncParticleScaleOri.transform);
            }
        }

        // Set particleEmitter.m_MinNormalVelocity, m_MaxNormalVelocity
        {
            NcParticleSystem ncParticleScaleOri = (m_OriginalTrans.GetComponent <NcParticleSystem>());
            NcParticleSystem ncParticleScaleIns = (transform.GetComponent <NcParticleSystem>());
            if (ncParticleScaleOri != null && ncParticleScaleOri.enabled && ncParticleScaleIns != null && ncParticleScaleOri.GetComponent <ParticleEmitter>() != null && ncParticleScaleOri.m_bScaleWithTransform && NgSerialized.IsMeshParticleEmitter(ncParticleScaleOri.GetComponent <ParticleEmitter>()))
            {
                float fSetMinValue;
                float fSetMaxValue;
                NgSerialized.GetMeshNormalVelocity(ncParticleScaleOri.GetComponent <ParticleEmitter>(), out fSetMinValue, out fSetMaxValue);
                if (fSetMinValue != ncParticleScaleOri.GetScaleMinMeshNormalVelocity() || fSetMaxValue != ncParticleScaleOri.GetScaleMaxMeshNormalVelocity())
                {
                    NgSerialized.SetMeshNormalVelocity(ncParticleScaleOri.GetComponent <ParticleEmitter>(), ncParticleScaleOri.GetScaleMinMeshNormalVelocity(), ncParticleScaleOri.GetScaleMaxMeshNormalVelocity());
                    NgSerialized.SetMeshNormalVelocity(ncParticleScaleIns.GetComponent <ParticleEmitter>(), ncParticleScaleOri.GetScaleMinMeshNormalVelocity(), ncParticleScaleOri.GetScaleMaxMeshNormalVelocity());
                }
            }
        }
    }