リルートが切断される

Forum rules
The items necessary for reporting are as follows.
  • OS(Required)
  • Unity version(Required)
  • Arbor version(Required)
  • How to reproduce(Required)
    The reproduction method should be described accurately so that anyone can read the same procedure.
    If you do not know the exact reproduction procedure, as long as you can remember it, so please tell us what you were doing immediately before and the last time you edited it.
  • Build platform
  • Reproduction project (Minimum configuration not including Arbor and other assets) or video

Note:
  • Please read the "Update Guide" carefully when updating Arbor.
  • The bugs that we already know are summarized in "Known Issues", so please check once.
  • Please check ReleaseNote and use the latest version if possible before reporting a bug.
  • Unity beta and alpha versions are not supported. Please use the official release version.
  • In principle, defects caused by the introduction of other assets are not supported. If you find a defect, please report it after isolating which asset is the problem.

報告に必要な項目は以下の通りです。
  • OS(必須)
  • Unityバージョン(必須)
  • Arborバージョン(必須)
  • 再現方法(必須)
    再現方法については、誰が読んでも同様の手順を行えるよう正確に記述するようにお願いいたします。
    もし正確な再現手順が不明な場合、覚えている限りで構いませんので直前に行っていたことや最後に編集した時のことを教えてください。
  • ビルドプラットフォーム
  • 再現プロジェクト(Arborや他アセットなどを含まない最小構成)もしくは動画

注意点:
  • Arborを更新する際は「アップデートガイド」をよく読み行ってください。
  • 既に把握している不具合は「既知の問題」にまとめてありますので一度確認してみてください。
  • 不具合報告をする前にReleaseNoteを確認し、なるべく最新バージョンを使用して下さい。
  • Unityのベータ版およびアルファ版はサポート対象外です。正式リリース版をご利用ください。
  • 他アセット導入による不具合は原則サポート対象外です。不具合を見つけた場合はどのアセットの問題であるか切り分けた上でのご報告をお願いいたします。

Post a reply

Smilies
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :| :mrgreen: :geek: :ugeek:

BBCode is ON
[img] is ON
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: リルートが切断される

Re: リルートが切断される

by caitsithware » 2018/07/24 22:15

ご確認ありがとうございました。

接続元ノードの削除でエラーが出なくなったのですね。
もしかすると、以前作業した際に何らかの理由で参照切れが起きていた可能性もありますね。
(例えば、以前の更新時にArborを上書きインポートをして不完全な状態で作業を継続していたとか、UnityやArborの何らかの不具合で既に参照が切れていた、など)

また発生するようでしたら、その発生するグラフのシーンファイルかプレハブファイルのみでも添付していただけると助かります。
yamlを直接見て不自然な参照切れ等がないか確認したいと思います。

Re: リルートが切断される

by kudou » 2018/07/24 14:39

接続元を削除して新規に作り直したものからの接続線のリルートはエラーが発生しませんでした。
Arborを更新手順のとおりにインポートしなおしてみましたが発生しておりました。
作り直してからはエラーはでていないので、様子を見てみます。

現在制作しているゲームで使用するクラスが含まれているので、そのままは使えませんが参考に接続元のソースも貼り付けます。
他になにか必要な情報とかはございますか?
まことに申し訳ありませんが、本日はもう就寝しますので返信は明日の夜になると思います。

Code: Select all

    [AddComponentMenu("")]
    public class ItemAssetCalculator : Calculator
    {
        public FlexibleItemAsset itemAsset;
        public OutputSlotInt uid;
        public OutputSlotString gameName;
        public OutputSlotInt num;
        public OutputSlotInt maxNum;
        public OutputSlotInt level;
        public OutputSlotBool got;

        public override void OnCalculate()
        {
            var asset = itemAsset.value;
            uid.SetValue(asset.uid);
            gameName.SetValue(asset.gameName);
            num.SetValue(SaveData.Instance.GetPartyStatus(0).itemBag.GetItem(asset.uid).num);
            maxNum.SetValue(asset.maxNum);
            var itemDictionary = SaveData.Instance.itemDictionary[asset.uid];
            level.SetValue(itemDictionary.level);
            got.SetValue(itemDictionary.got);
        }

        public override bool OnCheckDirty()
        {
            return true;
        }
    }

Re: リルートが切断される

by caitsithware » 2018/07/24 14:06

ご報告ありがとうございます。

再現確認を行いましたが、確認できませんでした。
以下の手順で行いましたが、ほかに補足などありますでしょうか?
  • Unty2018.1.0f2でプロジェクトを作成しArbor3.2.1をインポート
  • 貼っていただいたStringFormatCalculatorをAssetsフォルダ下に作成。
  • Hierarchyの「Create」ボタンをクリックし、「Arbor / ArborFSM」を選択。
  • ArborFSMオブジェクトを選択し、Inspectorで「Open Editor」ボタンをクリック。
  • Arbor Editorのグラフビューを右クリックし、「演算ノード作成」を選択。
  • 「String / String.Concat」を選択。
  • 再度、Arbor Editorのグラフビューを右クリックし、「演算ノード作成」を選択。
  • 「Scripts / StringFormatCalculator」を選択。
  • StringFormatCalculatorノードの「Args / Size」を「1」に変更。
  • Striing.Concatの「Result」とStringFormatCalculatorの「Element 0」を接続。
  • データの接続線を右クリックし、「リルート」を選択。
CheckInsertDateReroute.gif
CheckInsertDateReroute.gif (1.21 MiB) Viewed 3902 times
また、Arborの更新をインポートする際に、readmeやリリースノートにある「更新手順」を確認していただけたでしょうか?
上書きインポートをするだけですと、場合によっては不要なファイルが残ったり、更新前のデータが不自然に残るなどにより、Arbor Editorに問題が発生する場合があります。
もし上書きインポートのみしていましたら、一度ご確認の上インポートし直してください。
(また、Unityを再起動するだけでも正常動作に戻る可能性もあります)

ご不便おかけして申し訳ありませんが、ご確認よろしくお願いします。

リルートが切断される

by kudou » 2018/07/24 13:07

arbor3.2.1
unity2018 1.0 f2

リルートを作成するとエラーが発生して切断されます。

Image

Code: Select all

   [AddComponentMenu("")]
    public class StringFormatCalculator : Calculator
    {
        [ConstantMultiline]
        public FlexibleString format;
        public List<InputSlotAny> args;
        public OutputSlotString outputValue;

        public override void OnCalculate()
        {
            var objs = new object[args.Count];
            for(int i = 0; i < args.Count; i++)
            {
                args[i].GetValue(ref objs[i]);
            }
             
            outputValue.SetValue(String.Format(format.value, objs));
        }

        public override bool OnCheckDirty()
        {
            return true;
        }
    }
    
StackOverflowException: The requested operation caused a stack overflow.
Arbor.NodeGraph.CheckLoopDataBranch (Int32 inputNodeID, UnityEngine.Object inputObj, Int32 outputNodeID, UnityEngine.Object outputObj) (at Assets/Plugins/Arbor/Internal/Scripts/NodeGraph.cs:2425)

NullReferenceException: Object reference not set to an instance of an object
ArborEditor.NodeGraphEditor.DrawDataBranch (Arbor.DataBranch branch) (at Assets/Plugins/Arbor/Internal/Editor/GraphEditors/NodeGraphEditor.cs:1094)
ArborEditor.NodeGraphEditor.DrawDataBranchies () (at Assets/Plugins/Arbor/Internal/Editor/GraphEditors/NodeGraphEditor.cs:1169)
ArborEditor.NodeGraphEditor.BeginGraphGUI (Boolean useOverlayLayer) (at Assets/Plugins/Arbor/Internal/Editor/GraphEditors/NodeGraphEditor.cs:486)
ArborEditor.ArborEditorWindow.GraphGUI () (at Assets/Plugins/Arbor/Internal/Editor/Windows/ArborEditorWindow.cs:2016)
ArborEditor.ArborEditorWindow.GraphViewGUI () (at Assets/Plugins/Arbor/Internal/Editor/Windows/ArborEditorWindow.cs:1975)
ArborEditor.ArborEditorWindow.<SetupGUI>m__C () (at Assets/Plugins/Arbor/Internal/Editor/Windows/ArborEditorWindow.cs:2416)
UnityEngine.Experimental.UIElements.IMGUIContainer.DoOnGUI (UnityEngine.Event evt) (at C:/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:206)

NullReferenceException: Object reference not set to an instance of an object
ArborEditor.NodeGraphEditor.IsHoverBezier (Vector2 mousePosition, Arbor.Bezier2D bezier, Boolean arrow, Single arrowWidth, System.Single& distance) (at Assets/Plugins/Arbor/Internal/Editor/GraphEditors/NodeGraphEditor.cs:883)
ArborEditor.NodeGraphEditor.IsHoverBezier (Vector2 mousePosition, Arbor.Bezier2D bezier, System.Single& distance) (at Assets/Plugins/Arbor/Internal/Editor/GraphEditors/NodeGraphEditor.cs:916)
ArborEditor.NodeGraphEditor.DrawDataBranch (Arbor.DataBranch branch) (at Assets/Plugins/Arbor/Internal/Editor/GraphEditors/NodeGraphEditor.cs:1008)
ArborEditor.NodeGraphEditor.DrawDataBranchies () (at Assets/Plugins/Arbor/Internal/Editor/GraphEditors/NodeGraphEditor.cs:1169)
ArborEditor.NodeGraphEditor.BeginGraphGUI (Boolean useOverlayLayer) (at Assets/Plugins/Arbor/Internal/Editor/GraphEditors/NodeGraphEditor.cs:486)
ArborEditor.ArborEditorWindow.GraphGUI () (at Assets/Plugins/Arbor/Internal/Editor/Windows/ArborEditorWindow.cs:2016)
ArborEditor.ArborEditorWindow.GraphViewGUI () (at Assets/Plugins/Arbor/Internal/Editor/Windows/ArborEditorWindow.cs:1975)
ArborEditor.ArborEditorWindow.<SetupGUI>m__C () (at Assets/Plugins/Arbor/Internal/Editor/Windows/ArborEditorWindow.cs:2416)
UnityEngine.Experimental.UIElements.IMGUIContainer.DoOnGUI (UnityEngine.Event evt) (at C:/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:206)

Top