Exemple #1
0
    private void Generate()
    {
        ParticleDataComponent[] components = GetComponentsInChildren <ParticleDataComponent>(true);
        for (int i = 0; i < components.Length; i++)
        {
            DestroyImmediate(components[i]);
        }

        SetupParticles();

        for (int i = 0; i < m_particleTransforms.Count; i++)
        {
            ParticleDataComponent particleDataComponent = m_particleTransforms[i].gameObject.AddComponent <ParticleDataComponent>();
            particleDataComponent.parentIndex = i - 1;
            particleDataComponent.inertia     = inertia;
            particleDataComponent.damping     = damping;
            particleDataComponent.elasticity  = elasticity;
            particleDataComponent.stiffness   = stiffness;
        }
    }
Exemple #2
0
    public void Convert(Entity entity, EntityManager dstManager, GameObjectConversionSystem conversionSystem)
    {
        for (int i = 0; i < m_particleTransforms.Count; i++)
        {
            ParticleDataComponent particleDataComponent = m_particleTransforms[i].gameObject.GetComponent <ParticleDataComponent>();
            particleDataComponent.dynamicBoneEntity = entity;
            particleDataComponent.parentIndex       = i - 1;
            particleDataComponent.inertia           = inertia;
            particleDataComponent.damping           = damping;
            particleDataComponent.elasticity        = elasticity;
            particleDataComponent.stiffness         = stiffness;
        }

        dstManager.AddComponentData(entity, new DynamicBoneData()
        {
            objectPrevPosition = transform.position,
            inertia            = inertia,
            damping            = damping,
            elasticity         = elasticity,
            stiffness          = stiffness,
        });
    }