Unityは5.3.1f1を使っている。
uFrameやってみる。
Asset Storeの1.6.3.r1
のバージョンを使うことにした。
uFrame-1.5.1r2
とuFrame-1.6.3r1
のUnityパッケージが存在する。
このバージョンがあたらしいuFrame-1.6.3r1
を展開してみる。
すると早速大量のエラーが。
Assets/uFrame/MVVM/Framework/Editor/Templates/uFrameTemplates.cs(144,48): error CS0246: The type or namespace name `UGUIExtensions' could not be found. Are you missing a using directive or an assembly reference?
とか
15件もある・・。
ちなみに、uFrame-1.5.1r2
を展開しても非推奨メソッドが亡くなってて、エラーが出る。
公式のフォーラムはリンク切れ。 http://www.invertgamestudios.com/help
このmagcatさんのサイトにあった。UGUIExtensionsは有るけどうまく読み込まれてないっぽい http://magcat.php.xdomain.jp/brog/ そのサイトは説明が大雑把でわかりにくいが、プリプロセッサを直せばいいらしい。
万年素人の私はキチンと書くとすると、 UGUIExtensions.csファイルの一番上だ。
#if UNITY_4_6 || UNITY_5_0 || UNITY_5_1 || UNITY_5_2 using System; using UniRx; using UnityEngine; using UnityEngine.Events; using UnityEngine.EventSystems; using uFrame.MVVM; using uFrame.Kernel; using UnityEngine.UI; namespace uFrame.MVVM.Bindings { public static class UGUIExtensions {
の1行目を
#if UNITY_4_6 || UNITY_5_0 || UNITY_5_1 || UNITY_5_2 || UNITY_5_3
にする。
Unityは5.3.1f1でも動くはず。
次にこのエラー Sub Systemを生成したあとに生成されるSybsystemノードをダブルクリックして、 内部階層に入った時に出てくる画面で発生。
UnityException: Texture 'Header3' 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 () Invert.Common.TexturesExtensions.CutTextureBottomBorder (UnityEngine.Texture2D texture, Int32 cutSize) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner.Unity/ElementDesignerStyles.cs:1998) Invert.Core.GraphDesigner.Unity.Schemas.UnityNodeStyleSchema.ConstructHeaderImage (Boolean expanded, Color color, System.String iconName) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner.Unity/Schemas/UnityNodeStyleSchema.cs:57) Invert.Core.GraphDesigner.Schemas.impl.NodeStyleSchema.GetHeaderImage (Boolean expanded, Color color, System.String iconName) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner/Schemas/impl/NodeStyleSchema.cs:176) Invert.Core.GraphDesigner.HeaderDrawer.Draw (IPlatformDrawer platform, Single scale) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner/Drawers/impl/HeaderDrawer.cs:97) Invert.Core.GraphDesigner.DiagramNodeDrawer.DrawChildren (IPlatformDrawer platform, Single scale) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner/Drawers/impl/DiagramNodeDrawer.cs:356) Invert.Core.GraphDesigner.DiagramNodeDrawer.Draw (IPlatformDrawer platform, Single scale) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner/Drawers/impl/DiagramNodeDrawer.cs:292) Invert.Core.GraphDesigner.GenericNodeDrawer`2[Invert.uFrame.MVVM.SubsystemNode,Invert.Core.GraphDesigner.ScaffoldNode`1+ViewModel[Invert.uFrame.MVVM.SubsystemNode]].Draw (IPlatformDrawer platform, Single scale) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner/Drawers/impl/DiagramNodeDrawer.cs:64) Invert.Core.GraphDesigner.DiagramDrawer.Draw (IPlatformDrawer platform, Single scale) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner/Drawers/impl/DiagramDrawer.cs:146) Invert.Core.GraphDesigner.DesignerWindow.DrawDiagram (IPlatformDrawer drawer, Vector2 scrollPosition, Single scale, Rect diagramRect) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner/Windows/DesignerWindow.cs:349) Invert.Core.GraphDesigner.DesignerWindow.Draw (IPlatformDrawer drawer, Single width, Single height, Vector2 scrollPosition, Single scale) (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner/Windows/DesignerWindow.cs:256) Invert.Core.GraphDesigner.Unity.ElementsDesigner.OnGUI () (at D:/Invert/uFrameGit/uFrameTools/Invert.Core.GraphDesigner.Unity/ElementsDesigner.cs:256) System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
このエラーの事も先ほどのmagcatさんのサイトに書いてた。 でHeader3という画像を検索して Inspector上でこうする。 と、エラー消える。
githubはここにあるのでバグを見つけたらプルリクエストしてほいい。 GitHub - InvertGames/uFrame-MVVM: uFrame MVVM Framework for Unity3D