Exemple #1
0
    IEnumerator Pinning(float interval, int count)
    {
        while (true)
        {
            yield return(new WaitForSeconds(interval));

            if (!enabled || !_mousePressed)
            {
                continue;
            }

            _mcmc.Reset();
            foreach (var uv in _mcmc.Sequence(100, count))
            {
                Vector3 posLocal;
                Vector3 normalLocal;
                if (uvWorld.World(uv, out posLocal, out normalLocal))
                {
                    posLocal += (Vector3)(perturbation * Random.insideUnitCircle);
                    var pos = uvWorld.transform.TransformPoint(posLocal) + shuriken.startSize * Vector3.up;
                    shuriken.Emit(pos, Vector3.zero, shuriken.startSize, shuriken.startLifetime, shuriken.startColor);
                }
            }
        }
    }