AssetBundleGraph.ImportSettingsConfigurator.IsEqual C# (CSharp) Method

IsEqual() public method

public IsEqual ( ModelImporter target ) : bool
target UnityEditor.ModelImporter
return bool
        public bool IsEqual(ModelImporter target)
        {
            ModelImporter reference = referenceImporter as ModelImporter;
            UnityEngine.Assertions.Assert.IsNotNull(reference);

            if (target.addCollider != reference.addCollider) return false;
            if (target.animationCompression != reference.animationCompression) return false;
            if (target.animationPositionError != reference.animationPositionError) return false;
            if (target.animationRotationError != reference.animationRotationError) return false;
            if (target.animationScaleError != reference.animationScaleError) return false;
            if (target.animationType != reference.animationType) return false;
            if (target.animationWrapMode != reference.animationWrapMode) return false;
            if (target.bakeIK != reference.bakeIK) return false;

            // clipAnimations
            {
                if (target.clipAnimations.Length != reference.clipAnimations.Length) return false;
                for (int i = 0; i < target.clipAnimations.Length; i++) {
                    if (target.clipAnimations[i].curves != reference.clipAnimations[i].curves) return false;
                    if (target.clipAnimations[i].cycleOffset != reference.clipAnimations[i].cycleOffset) return false;
                    if (target.clipAnimations[i].events != reference.clipAnimations[i].events) return false;
                    if (target.clipAnimations[i].firstFrame != reference.clipAnimations[i].firstFrame) return false;
                    if (target.clipAnimations[i].heightFromFeet != reference.clipAnimations[i].heightFromFeet) return false;
                    if (target.clipAnimations[i].heightOffset != reference.clipAnimations[i].heightOffset) return false;
                    if (target.clipAnimations[i].keepOriginalOrientation != reference.clipAnimations[i].keepOriginalOrientation) return false;
                    if (target.clipAnimations[i].keepOriginalPositionXZ != reference.clipAnimations[i].keepOriginalPositionXZ) return false;
                    if (target.clipAnimations[i].keepOriginalPositionY != reference.clipAnimations[i].keepOriginalPositionY) return false;
                    if (target.clipAnimations[i].lastFrame != reference.clipAnimations[i].lastFrame) return false;
                    if (target.clipAnimations[i].lockRootHeightY != reference.clipAnimations[i].lockRootHeightY) return false;
                    if (target.clipAnimations[i].lockRootPositionXZ != reference.clipAnimations[i].lockRootPositionXZ) return false;
                    if (target.clipAnimations[i].lockRootRotation != reference.clipAnimations[i].lockRootRotation) return false;
                    if (target.clipAnimations[i].loop != reference.clipAnimations[i].loop) return false;
                    if (target.clipAnimations[i].loopPose != reference.clipAnimations[i].loopPose) return false;
                    if (target.clipAnimations[i].loopTime != reference.clipAnimations[i].loopTime) return false;
                    if (target.clipAnimations[i].maskNeedsUpdating != reference.clipAnimations[i].maskNeedsUpdating) return false;
                    if (target.clipAnimations[i].maskSource != reference.clipAnimations[i].maskSource) return false;
                    if (target.clipAnimations[i].maskType != reference.clipAnimations[i].maskType) return false;
                    if (target.clipAnimations[i].mirror != reference.clipAnimations[i].mirror) return false;
                    if (target.clipAnimations[i].name != reference.clipAnimations[i].name) return false;
                    if (target.clipAnimations[i].rotationOffset != reference.clipAnimations[i].rotationOffset) return false;
                    if (target.clipAnimations[i].takeName != reference.clipAnimations[i].takeName) return false;
                    if (target.clipAnimations[i].wrapMode != reference.clipAnimations[i].wrapMode) return false;
                }
            }

            // if (target.defaultClipAnimations != reference.defaultClipAnimations) return false;

            // extraExposedTransformPaths
            {
                if (target.extraExposedTransformPaths.Length != reference.extraExposedTransformPaths.Length) return false;
                for (int i = 0; i < target.extraExposedTransformPaths.Length; i++) {
                    if (target.extraExposedTransformPaths[i] != reference.extraExposedTransformPaths[i]) return false;
                }
            }

            // if (target.fileScale != reference.fileScale) return false;
            if (target.generateAnimations != reference.generateAnimations) return false;
            if (target.generateSecondaryUV != reference.generateSecondaryUV) return false;
            if (target.globalScale != reference.globalScale) return false;

            // humanDescription
            {
                if (target.humanDescription.armStretch != reference.humanDescription.armStretch) return false;
                if (target.humanDescription.feetSpacing != reference.humanDescription.feetSpacing) return false;

                // human
                {
                    if (target.humanDescription.human.Length != reference.humanDescription.human.Length) return false;
                    for (int i = 0; i < target.humanDescription.human.Length; i++) {
                        if (target.humanDescription.human[i].boneName != reference.humanDescription.human[i].boneName) return false;
                        if (target.humanDescription.human[i].humanName != reference.humanDescription.human[i].humanName) return false;

                        // limit
                        if (target.humanDescription.human[i].limit.axisLength != reference.humanDescription.human[i].limit.axisLength) return false;
                        if (target.humanDescription.human[i].limit.center != reference.humanDescription.human[i].limit.center) return false;
                        if (target.humanDescription.human[i].limit.max != reference.humanDescription.human[i].limit.max) return false;
                        if (target.humanDescription.human[i].limit.min != reference.humanDescription.human[i].limit.min) return false;
                        if (target.humanDescription.human[i].limit.useDefaultValues != reference.humanDescription.human[i].limit.useDefaultValues) return false;
                    }
                }

                if (target.humanDescription.legStretch != reference.humanDescription.legStretch) return false;
                if (target.humanDescription.lowerArmTwist != reference.humanDescription.lowerArmTwist) return false;
                if (target.humanDescription.lowerLegTwist != reference.humanDescription.lowerLegTwist) return false;

                // skeleton
                {
                    if (target.humanDescription.skeleton.Length != reference.humanDescription.skeleton.Length) return false;
                    for (int i = 0; i < target.humanDescription.skeleton.Length; i++) {
                        if (target.humanDescription.skeleton[i].name != reference.humanDescription.skeleton[i].name) return false;
                        if (target.humanDescription.skeleton[i].position != reference.humanDescription.skeleton[i].position) return false;
                        if (target.humanDescription.skeleton[i].rotation != reference.humanDescription.skeleton[i].rotation) return false;
                        if (target.humanDescription.skeleton[i].scale != reference.humanDescription.skeleton[i].scale) return false;
                    }
                }

                if (target.humanDescription.upperArmTwist != reference.humanDescription.upperArmTwist) return false;
                if (target.humanDescription.upperLegTwist != reference.humanDescription.upperLegTwist) return false;
            }

            if (target.importAnimation != reference.importAnimation) return false;
            if (target.importBlendShapes != reference.importBlendShapes) return false;
            // if (target.importedTakeInfos != reference.importedTakeInfos) return false;
            if (target.importMaterials != reference.importMaterials) return false;
            // if (target.isBakeIKSupported != reference.isBakeIKSupported) return false;
            // if (target.isFileScaleUsed != reference.isFileScaleUsed) return false;
            if (target.isReadable != reference.isReadable) return false;
            // if (target.isTangentImportSupported != reference.isTangentImportSupported) return false;
            // if (target.isUseFileUnitsSupported != reference.isUseFileUnitsSupported) return false;
            if (target.materialName != reference.materialName) return false;
            if (target.materialSearch != reference.materialSearch) return false;
            if (target.meshCompression != reference.meshCompression) return false;
            if (target.motionNodeName != reference.motionNodeName) return false;
            if (target.importNormals != reference.importNormals) return false;
            if (target.normalSmoothingAngle != reference.normalSmoothingAngle) return false;
            if (target.optimizeGameObjects != reference.optimizeGameObjects) return false;
            if (target.optimizeMesh != reference.optimizeMesh) return false;

            // if (target.referencedClips != reference.referencedClips) return false;
            if (target.secondaryUVAngleDistortion != reference.secondaryUVAngleDistortion) return false;
            if (target.secondaryUVAreaDistortion != reference.secondaryUVAreaDistortion) return false;
            if (target.secondaryUVHardAngle != reference.secondaryUVHardAngle) return false;
            if (target.secondaryUVPackMargin != reference.secondaryUVPackMargin) return false;
            if (target.sourceAvatar != reference.sourceAvatar) return false;
            if (target.swapUVChannels != reference.swapUVChannels) return false;
            if (target.importTangents != reference.importTangents) return false;
            // if (target.transformPaths != reference.transformPaths) return false;
            if (target.useFileUnits != reference.useFileUnits) return false;

            return true;
        }

Same methods

ImportSettingsConfigurator::IsEqual ( AssetImporter importer ) : bool
ImportSettingsConfigurator::IsEqual ( AudioImporter target ) : bool
ImportSettingsConfigurator::IsEqual ( TextureImporter target ) : bool

Usage Example

        private void ApplyImportSetting(NodeData node, IEnumerable <PerformGraph.AssetGroups> incoming, Action <NodeData, string, float> progressFunc)
        {
            var referenceImporter = GetReferenceAssetImporter(node);
            var configurator      = new ImportSettingsConfigurator(referenceImporter);

            foreach (var ag in incoming)
            {
                foreach (var assets in ag.assetGroups.Values)
                {
                    foreach (var asset in assets)
                    {
                        var importer = AssetImporter.GetAtPath(asset.importFrom);
                        if (!configurator.IsEqual(importer))
                        {
                            if (progressFunc != null)
                            {
                                progressFunc(node, string.Format("Modifying {0}", asset.fileNameAndExtension), 0.5f);
                            }
                            configurator.OverwriteImportSettings(importer);
                            asset.TouchImportAsset();
                        }
                    }
                }
            }
        }
All Usage Examples Of AssetBundleGraph.ImportSettingsConfigurator::IsEqual