Esempio n. 1
0
        private void ReportModel(StringBuilder sb, ModelImporter importer)
        {
            sb.Append("{");
            AssetsReporterUtils.AddJsonObject(sb, "path", importer.assetPath).Append(",");
            if (this.isPreviewImage)
            {
                var obj = AssetDatabase.LoadAssetAtPath <GameObject>(importer.assetPath);

                string preview = AssetsReporterUtils.GetAssetPreview(importer, obj, true);
                AssetsReporterUtils.AddJsonObject(sb, "preview", preview).Append(",");

                AssetsReporterUtils.AddJsonObject(sb, "vertexNum", AssetsReporterUtils.GetPolygonNum(obj)).Append(",");
            }
            AssetsReporterUtils.AddJsonObject(sb, "isReadable", importer.isReadable).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "scaleFactor", importer.globalScale).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "meshCompression", importer.meshCompression.ToString()).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "generateCollider", importer.addCollider).Append(",");
#if UNITY_2020_2_OR_NEWER
            AssetsReporterUtils.AddJsonObject(sb, "materialImportMode", importer.materialImportMode.ToString()).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "optimizeMeshPolygons", importer.optimizeMeshPolygons).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "optimizeMeshVertices", importer.optimizeMeshVertices).Append(",");
            // 互換性
            AssetsReporterUtils.AddJsonObject(sb, "optimizeMesh", importer.optimizeMeshVertices | importer.optimizeMeshPolygons).Append(",");
#else
            AssetsReporterUtils.AddJsonObject(sb, "importMaterials", importer.importMaterials).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "optimizeMesh", importer.optimizeMesh).Append(",");
#endif
#if UNITY_5_4_OR_NEWER
            AssetsReporterUtils.AddJsonObject(sb, "normalMode", importer.importNormals.ToString()).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "tangentMode", importer.importTangents.ToString()).Append(",");
#else
            AssetsReporterUtils.AddJsonObject(sb, "normalMode", importer.normalImportMode.ToString()).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "tangentMode", importer.tangentImportMode.ToString()).Append(",");
#endif
            AssetsReporterUtils.AddJsonObject(sb, "importBlendShapes", importer.importBlendShapes).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "objectNum", importer.transformPaths.Length).Append(",");
            // rig
            AssetsReporterUtils.AddJsonObject(sb, "animationType", importer.animationType.ToString()).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "generateAnimations", importer.generateAnimations.ToString()).Append(",");
            string srcAvatar = GetAvatarName(importer.animationType, importer.sourceAvatar);
            AssetsReporterUtils.AddJsonObject(sb, "sourceAvatar", srcAvatar).Append(",");
            // animation
            AssetsReporterUtils.AddJsonObject(sb, "importAnimation", importer.importAnimation).Append(",");
            AssetsReporterUtils.AddJsonObject(sb, "animationCompression", importer.animationCompression.ToString()).Append(",");
            if (importer.clipAnimations != null && importer.clipAnimations.Length > 0)
            {
                ReportModelAnimationClips(sb, importer.clipAnimations);
            }
            else
            {
                ReportModelAnimationClips(sb, importer.defaultClipAnimations);
            }
            //
            AssetsReporterUtils.AddCountDictionary(rigSet, importer.animationType);
            AssetsReporterUtils.AddCountDictionary(scaleSet, importer.globalScale);
            if (!string.IsNullOrEmpty(srcAvatar))
            {
                AssetsReporterUtils.AddCountDictionary(sourceAvatarSet, srcAvatar);
            }
            sb.Append("}");
        }