I Have a standard NGUI Licence
This problem happens is in a existing Project where I have deleted NGUI and updated as indicated in the documentation;
When I do this in a New project it works fine and aslo If I add the font to one off the Example Atlases of NGUI in the existing project it also works fine.
These are the steps as what I did
I Create a new Altlas with the Atlas maker which gets created but give this Error after Creation
importer.GetNPOTScale() == TextureImporter::kNPOTKeep
UnityEditor.AssetDatabase:ImportAsset(String, ImportAssetOptions)
NGUIEditorTools:MakeTextureAnAtlas(String, Boolean, Boolean) (at Assets/NGUI/Scripts/Editor/NGUIEditorTools.cs:492)
NGUIEditorTools:ImportTexture(String, Boolean, Boolean, Boolean) (at Assets/NGUI/Scripts/Editor/NGUIEditorTools.cs:506)
UIAtlasMaker:UpdateTexture(UIAtlas, List`1) (at Assets/NGUI/Scripts/Editor/UIAtlasMaker.cs:569)
UIAtlasMaker:UpdateAtlas(UIAtlas, List`1) (at Assets/NGUI/Scripts/Editor/UIAtlasMaker.cs:675)
UIAtlasMaker:UpdateAtlas(List`1, Boolean) (at Assets/NGUI/Scripts/Editor/UIAtlasMaker.cs:658)
UIAtlasMaker:OnGUI() (at Assets/NGUI/Scripts/Editor/UIAtlasMaker.cs:1007)
UnityEditor.DockArea:OnGUI()
I then Create a new Font with Font Maker Using this atlas which create the font but gives the same type error !
importer.GetNPOTScale() == TextureImporter::kNPOTKeep
UnityEditor.AssetDatabase:ImportAsset(String, ImportAssetOptions)
NGUIEditorTools:MakeTextureAnAtlas(String, Boolean, Boolean) (at Assets/NGUI/Scripts/Editor/NGUIEditorTools.cs:492)
NGUIEditorTools:ImportTexture(String, Boolean, Boolean, Boolean) (at Assets/NGUI/Scripts/Editor/NGUIEditorTools.cs:506)
NGUIEditorTools:ImportTexture(Texture, Boolean, Boolean, Boolean) (at Assets/NGUI/Scripts/Editor/NGUIEditorTools.cs:525)
UIAtlasMaker:ExtractSprites(UIAtlas, List`1) (at Assets/NGUI/Scripts/Editor/UIAtlasMaker.cs:516)
UIAtlasMaker:AddOrUpdate(UIAtlas, Texture2D) (at Assets/NGUI/Scripts/Editor/UIAtlasMaker.cs:616)
UIFontMaker:OnGUI() (at Assets/NGUI/Scripts/Editor/UIFontMaker.cs:480)
UnityEditor.DockArea:OnGUI()
When I use the Modifier to add Shadows I get this exception (See Below) and the Updating the atlas remains on screen even after the error you can now interact again with Unity but do get rid of the Updating window I have to close Unity Editor!
UnityException: Texture 'MainMenuAtlas' is not readable, the texture memory can not be accessed from scripts. You can make the texture readable in the Texture Import Settings.
UnityEngine.Texture2D.GetPixels32 () (at C:/BuildAgent/work/aeedb04a1292f85a/artifacts/EditorGenerated/TextureBindings.cs:255)
UIAtlasMaker.ExtractSprites (.UIAtlas atlas, System.Collections.Generic.List`1 finalSprites) (at Assets/NGUI/Scripts/Editor/UIAtlasMaker.cs:508)
UIAtlasMaker.AddOrUpdate (.UIAtlas atlas, UnityEngine.Texture2D tex) (at Assets/NGUI/Scripts/Editor/UIAtlasMaker.cs:616)
UIFontInspector.ApplyEffect (Effect effect, Color foreground, Color background) (at Assets/NGUI/Scripts/Editor/UIFontInspector.cs:652)
UIFontInspector.OnInspectorGUI () (at Assets/NGUI/Scripts/Editor/UIFontInspector.cs:353)
UnityEditor.InspectorWindow.DrawEditor (UnityEditor.Editor editor, Int32 editorIndex, Boolean forceDirty, System.Boolean& showImportedObjectBarNext, UnityEngine.Rect& importedObjectBarRect, Boolean eyeDropperDirty) (at C:/BuildAgent/work/aeedb04a1292f85a/Editor/Mono/Inspector/InspectorWindow.cs:1124)
UnityEditor.DockArea:OnGUI()