public override void Import() { base.Import(); // Normal processor migration code if (NormalProcessors && NormalProcessors.RequiresMigration) { NormalProcessors.hideFlags = HideFlags.HideInHierarchy; if (NormalModePerVoxelGroup != null && NormalModePerVoxelGroup.Length > 0) { for (int i = 0; i < NormalModePerVoxelGroup.Length; i++) { NPVoxNormalProcessor_Voxel processorVoxel = NormalProcessors.AddProcessor <NPVoxNormalProcessor_Voxel>(); processorVoxel.NormalMode = NormalModePerVoxelGroup[i]; processorVoxel.AddVoxelGroupFilter(i); } } else { NPVoxNormalProcessor_Voxel processorVoxel = NormalProcessors.AddProcessor <NPVoxNormalProcessor_Voxel>(); processorVoxel.NormalMode = NormalMode; } NPVoxNormalProcessor_Variance processorVariance = NormalProcessors.AddProcessor <NPVoxNormalProcessor_Variance>(); processorVariance.NormalVarianceSeed = NormalVarianceSeed; processorVariance.NormalVariance = NormalVariance; NormalProcessors.AddToAsset(UnityEditor.AssetDatabase.GetAssetPath(this)); UnityEditor.EditorUtility.SetDirty(NormalProcessors); NormalProcessors.RequiresMigration = false; } }
public override void Import() { base.Import(); if (NormalProcessors == null) { NormalProcessors = ScriptableObject.CreateInstance <NPVoxNormalProcessorList>(); } // Normal processor migration code if (NormalProcessors && NormalProcessors.RequiresMigration) { if (UnityEditor.AssetDatabase.GetAssetPath(NormalProcessors).Length == 0) { NormalProcessors.hideFlags = HideFlags.HideInHierarchy; if (NormalModePerVoxelGroup != null && NormalModePerVoxelGroup.Length > 0) { for (int i = 0; i < NormalModePerVoxelGroup.Length; i++) { NPVoxNormalProcessor_Voxel processorVoxel = NormalProcessors.AddProcessor <NPVoxNormalProcessor_Voxel>(); processorVoxel.NormalMode = NormalModePerVoxelGroup[i]; processorVoxel.AddVoxelGroupFilter(i); } } else { NPVoxNormalProcessor_Voxel processorVoxel = NormalProcessors.AddProcessor <NPVoxNormalProcessor_Voxel>(); processorVoxel.NormalMode = NormalMode; } NPVoxNormalProcessor_Variance processorVariance = NormalProcessors.AddProcessor <NPVoxNormalProcessor_Variance>(); processorVariance.NormalVarianceSeed = NormalVarianceSeed; processorVariance.NormalVariance = NormalVariance; NormalProcessors.AddToAsset(UnityEditor.AssetDatabase.GetAssetPath(this)); UnityEditor.EditorUtility.SetDirty(NormalProcessors); NormalProcessors.RequiresMigration = false; } NormalProcessors.RequiresMigration = false; } m_voxMeshData = NPVoxMeshGenerator.GenerateVoxMeshData(GetVoxModel(), VoxelSize, Optimization, BloodColorIndex, Loop, Cutout, Include); if (NormalProcessors != null) { NormalProcessors.OnImport(); } }
public override object Clone() { NPVoxNormalProcessor_Voxel clone = ScriptableObject.CreateInstance <NPVoxNormalProcessor_Voxel>(); clone.m_normalMode = m_normalMode; clone.m_passVoxel.m_normalMode = m_passVoxel.m_normalMode; foreach (int filter in m_voxelGroupFilter) { clone.m_voxelGroupFilter.Add(filter); } return(clone); }