private BurstCollisionMaterial CombineCollisionMaterials(int entityA, int entityB)
            {
                // Combine collision materials:
                int aMaterialIndex = particleMaterialIndices[entityA];
                int bMaterialIndex = particleMaterialIndices[entityB];

                if (aMaterialIndex >= 0 && bMaterialIndex >= 0)
                {
                    return(BurstCollisionMaterial.CombineWith(collisionMaterials[aMaterialIndex], collisionMaterials[bMaterialIndex]));
                }
                else if (aMaterialIndex >= 0)
                {
                    return(collisionMaterials[aMaterialIndex]);
                }
                else if (bMaterialIndex >= 0)
                {
                    return(collisionMaterials[bMaterialIndex]);
                }

                return(new BurstCollisionMaterial());
            }
Пример #2
0
            private BurstCollisionMaterial CombineCollisionMaterials(int entityA, int entityB)
            {
                // Combine collision materials:
                int particleMaterialIndex = particleMaterialIndices[entityA];
                int colliderMaterialIndex = shapes[entityB].materialIndex;

                if (colliderMaterialIndex >= 0 && particleMaterialIndex >= 0)
                {
                    return(BurstCollisionMaterial.CombineWith(collisionMaterials[particleMaterialIndex], collisionMaterials[colliderMaterialIndex]));
                }
                else if (particleMaterialIndex >= 0)
                {
                    return(collisionMaterials[particleMaterialIndex]);
                }
                else if (colliderMaterialIndex >= 0)
                {
                    return(collisionMaterials[colliderMaterialIndex]);
                }

                return(new BurstCollisionMaterial());
            }