Beispiel #1
0
        public static EPhysicsMaterial checkMaterial(Vector3 point)
        {
            if (LevelGround.terrain == null)
            {
                AssetReference <LandscapeMaterialAsset> reference;
                if (Landscape.getSplatmapMaterial(point, out reference))
                {
                    LandscapeMaterialAsset landscapeMaterialAsset = Assets.find <LandscapeMaterialAsset>(reference);
                    if (landscapeMaterialAsset != null)
                    {
                        return(landscapeMaterialAsset.physicsMaterial);
                    }
                }
                return(EPhysicsMaterial.NONE);
            }
            GroundMaterial material = LevelGround.getMaterial(point);

            if (material.isGrassy_0 || material.isGrassy_1 || material.isFlowery_0 || material.isFlowery_1)
            {
                return(EPhysicsMaterial.FOLIAGE_STATIC);
            }
            if (material.isRocky)
            {
                return(EPhysicsMaterial.GRAVEL_STATIC);
            }
            if (material.isRoad)
            {
                return(EPhysicsMaterial.CONCRETE_STATIC);
            }
            if (material.isSnowy)
            {
                return(EPhysicsMaterial.SNOW_STATIC);
            }
            return(EPhysicsMaterial.CONCRETE_STATIC);
        }