private void CheckPreset(TexImporterSetting.Settings setting) { switch (setting.PresetSetting) { case PresetSettings.Texture_Scene: setting.TextureType = TextureImporterType.Default; setting.WrapMode = TextureWrapMode.Repeat; setting.MipMapEnable = true; setting.TextureShape = TextureImporterShape.Texture2D; setting.AlphaIsTransparency = false; break; case PresetSettings.Texture_UI: setting.TextureType = TextureImporterType.Default; setting.WrapMode = TextureWrapMode.Clamp; setting.MipMapEnable = false; setting.TextureShape = TextureImporterShape.Texture2D; setting.AlphaIsTransparency = true; break; case PresetSettings.Sprite_UI: setting.TextureType = TextureImporterType.Sprite; setting.WrapMode = TextureWrapMode.Clamp; setting.MipMapEnable = false; setting.TextureShape = TextureImporterShape.Texture2D; setting.AlphaIsTransparency = true; break; } if (setting.AlphaMode != AlphaMode.Auto) { var hasAlpha = setting.AlphaMode == AlphaMode.Alpha; setting.OverrideAndroidFormat = TextureToolUtil.GetFormat(RuntimePlatform.Android, hasAlpha); setting.OverrideIOSFormat = TextureToolUtil.GetFormat(RuntimePlatform.IPhonePlayer, hasAlpha); setting.OverridePCFormat = TextureToolUtil.GetFormat(RuntimePlatform.WindowsPlayer, hasAlpha); } }
private void checkPreset(TexFormatController control) { switch (control.preset) { case PresetSettings.Texture_Scene: control.textureType = TextureImporterType.Default; control.wrapMode = TextureWrapMode.Repeat; control.mipMapEnable = true; control.textureShape = TextureImporterShape.Texture2D; control.alphaIsTransparency = false; break; case PresetSettings.Texture_UI: control.textureType = TextureImporterType.Default; control.wrapMode = TextureWrapMode.Clamp; control.mipMapEnable = false; control.textureShape = TextureImporterShape.Texture2D; control.alphaIsTransparency = true; break; case PresetSettings.Sprite_UI: control.textureType = TextureImporterType.Sprite; control.wrapMode = TextureWrapMode.Clamp; control.mipMapEnable = false; control.textureShape = TextureImporterShape.Texture2D; control.alphaIsTransparency = true; break; } if (control.alphaMode != AlphaMode.Auto) { var hasAlpha = control.alphaMode == AlphaMode.Alpha; control.overrideAndroidFormat = TextureToolUtil.GetFormat(RuntimePlatform.Android, hasAlpha); control.overrideIOSFormat = TextureToolUtil.GetFormat(RuntimePlatform.IPhonePlayer, hasAlpha); control.overridePCFormat = TextureToolUtil.GetFormat(RuntimePlatform.WindowsPlayer, hasAlpha); } }
private static void ImportTexture(string assetPath) { var importer = AssetImporter.GetAtPath(assetPath) as TextureImporter; var(importImporterSetting, settingDir) = GetImporterSetting(assetPath); if (!importImporterSetting || !importer) { return; } var setting = GetSettings(importImporterSetting, assetPath); if (setting == null) { return; } importer.textureType = setting.TextureType; TrySetPackingTag( importer, setting.AtlasMode, setting.PackingTag, assetPath, settingDir ); if (importer.textureType == TextureImporterType.Sprite) { if (importer.spriteImportMode != SpriteImportMode.Single && importer.spriteImportMode != SpriteImportMode.Multiple) { importer.spriteImportMode = SpriteImportMode.Single; } } importer.npotScale = setting.NPOTScale; importer.alphaIsTransparency = setting.AlphaIsTransparency; importer.mipmapEnabled = setting.MipMapEnable; importer.isReadable = setting.ReadWriteEnable; importer.sRGBTexture = setting.SRGB; importer.wrapMode = setting.WrapMode; importer.filterMode = setting.FilterMode; importer.textureShape = setting.TextureShape; TextureImporterFormat iosFormat = 0, androidFormat = 0, pcFormat = 0; if (setting.AlphaMode != AlphaMode.Auto) { iosFormat = setting.OverrideIOSFormat; androidFormat = setting.OverrideAndroidFormat; pcFormat = setting.OverridePCFormat; importer.alphaIsTransparency = setting.AlphaIsTransparency && setting.AlphaMode == AlphaMode.Alpha; if ((int)iosFormat == 51) { iosFormat = TextureImporterFormat.ASTC_8x8; } else if ((int)iosFormat == 56) { iosFormat = TextureImporterFormat.ASTC_6x6; } else if ((int)iosFormat == 50) { iosFormat = TextureImporterFormat.ASTC_6x6; } else if ((int)iosFormat == 54) { iosFormat = TextureImporterFormat.ASTC_4x4; } else if ((int)iosFormat == 57) { iosFormat = TextureImporterFormat.ASTC_8x8; } } else { var hasAlpha = importer.DoesSourceTextureHaveAlpha(); importer.alphaIsTransparency = setting.AlphaIsTransparency && hasAlpha; iosFormat = TextureToolUtil.GetFormat(RuntimePlatform.IPhonePlayer, hasAlpha); androidFormat = TextureToolUtil.GetFormat(RuntimePlatform.Android, hasAlpha); pcFormat = TextureToolUtil.GetFormat(RuntimePlatform.WindowsPlayer, hasAlpha); } var iphoneSettings = GetPlatformSettings( "iPhone", iosFormat, setting.MaxSize, setting.Quality ); var androidSettings = GetPlatformSettings( "Android", androidFormat, setting.MaxSize, setting.Quality ); var pcSettings = GetPlatformSettings( "Standalone", pcFormat, setting.MaxSize, setting.Quality ); if (setting.MaxSize == 0) { iphoneSettings.maxTextureSize = importer.GetPlatformTextureSettings("iPhone").maxTextureSize; androidSettings.maxTextureSize = importer.GetPlatformTextureSettings("Android").maxTextureSize; pcSettings.maxTextureSize = importer.GetPlatformTextureSettings("Standalone").maxTextureSize; } importer.SetPlatformTextureSettings(iphoneSettings); importer.SetPlatformTextureSettings(androidSettings); importer.SetPlatformTextureSettings(pcSettings); }