├── Editor ├── NodeGraphProcessor.Editor │ ├── Resources │ │ ├── GraphProcessorStyles │ │ │ ├── BaseStackNodeView.uss │ │ │ ├── BaseGraphView.uss │ │ │ ├── ExposedParameterView.uss.meta │ │ │ ├── GroupView.uss │ │ │ ├── EdgeView.uss.meta │ │ │ ├── PortView.uss.meta │ │ │ ├── BaseGraphView.uss.meta │ │ │ ├── BaseNodeView.uss.meta │ │ │ ├── PinnedElementView.uss.meta │ │ │ ├── GroupView.uss.meta │ │ │ ├── RelayNode.uss.meta │ │ │ ├── InspectorView.uss.meta │ │ │ ├── NodeSettings.uss.meta │ │ │ ├── BaseStackNodeView.uss.meta │ │ │ ├── InspectorView.uss │ │ │ ├── RelayNode.uss │ │ │ ├── NodeSettings.uss │ │ │ ├── ExposedParameterView.uss │ │ │ ├── PortView.uss │ │ │ └── EdgeView.uss │ │ ├── Icons │ │ │ └── SettingsIcons.png │ │ ├── Settings_Flyout_9slice.png │ │ ├── Settings_Flyout_9slice@2x.png │ │ ├── NodeTemplate.cs.txt.meta │ │ ├── Icons.meta │ │ ├── NodeViewTemplate.cs.txt.meta │ │ ├── UXML.meta │ │ ├── GraphProcessorStyles.meta │ │ ├── GraphProcessorElements.meta │ │ ├── UXML │ │ │ ├── NodeSettings.uxml │ │ │ └── NodeSettings.uxml.meta │ │ ├── GraphProcessorElements │ │ │ ├── PinnedElement.uxml.meta │ │ │ └── PinnedElement.uxml │ │ ├── NodeTemplate.cs.txt │ │ ├── NodeViewTemplate.cs.txt │ │ ├── Settings_Flyout_9slice.png.meta │ │ └── Settings_Flyout_9slice@2x.png.meta │ ├── node.png │ ├── untitled.png │ ├── Views │ │ ├── ExposedParameterPropertyView.cs.meta │ │ ├── BaseNodeView.cs.meta │ │ ├── EdgeView.cs.meta │ │ ├── GroupView.cs.meta │ │ ├── MiniMapView.cs.meta │ │ ├── PortView.cs.meta │ │ ├── ToolbarView.cs.meta │ │ ├── BaseGraphView.cs.meta │ │ ├── BaseStackNodeView.cs.meta │ │ ├── NodeBadgeView.cs.meta │ │ ├── NodeSettingsView.cs.meta │ │ ├── ParameterNodeView.cs.meta │ │ ├── PinnedElementView.cs.meta │ │ ├── ProcessorView.cs.meta │ │ ├── RelayNodeView.cs.meta │ │ ├── StickyNoteView.cs.meta │ │ ├── CreateNodeMenuWindow.cs.meta │ │ ├── ExposedParameterView.cs.meta │ │ ├── ExposedParameterFieldView.cs.meta │ │ ├── ExposedParameterWorkaround.cs.meta │ │ ├── ExposedParameterFieldFactory.cs.meta │ │ ├── ExposedParameterWorkaround.cs │ │ ├── MiniMapView.cs │ │ ├── ExposedParameterPropertyView.cs │ │ ├── ProcessorView.cs │ │ ├── NodeSettingsView.cs │ │ ├── ExposedParameterFieldView.cs │ │ ├── StickyNoteView.cs │ │ ├── EdgeView.cs │ │ ├── ParameterNodeView.cs │ │ └── NodeBadgeView.cs │ ├── untitled (1).png │ ├── Logic.meta │ ├── Utils.meta │ ├── Views.meta │ ├── Callbacks.meta │ ├── Resources.meta │ ├── BaseGraphWindow.cs.meta │ ├── EditorAttributes.cs.meta │ ├── GraphInspector.cs.meta │ ├── Utils │ │ ├── FieldFactory.cs.meta │ │ ├── NodeProvider.cs.meta │ │ ├── BaseEdgeConnector.cs.meta │ │ ├── CopyPasteHelper.cs.meta │ │ ├── Vector4Drawer.cs.meta │ │ ├── BaseEdgeDragHelper.cs.meta │ │ ├── ExposedParameterDrawer.cs.meta │ │ ├── StackNodeViewProvider.cs.meta │ │ ├── CopyPasteHelper.cs │ │ ├── Vector4Drawer.cs │ │ └── StackNodeViewProvider.cs │ ├── Callbacks │ │ ├── OnBaseGraphDeleted.cs.meta │ │ ├── NodeGraphProcessorMenuItems.cs.meta │ │ └── OnBaseGraphDeleted.cs │ ├── Logic │ │ └── EdgeConnectorListener.cs.meta │ ├── NodeInspectorObject.cs.meta │ └── EditorAttributes.cs ├── Resources │ ├── TestType.uss │ ├── TestType.uss.meta │ ├── PortViewTypes.uss.meta │ └── PortViewTypes.uss ├── EditorTools.meta ├── CodeGenBTInjecter.cs.meta ├── CodeGeneratorUtil.cs.meta ├── BTGraphAssetInspector.cs.meta ├── CodeGenBTSerialization.cs.meta ├── EditorTools │ ├── EditorMacroUtil.cs.meta │ ├── EditorTools.cs.meta │ ├── EditorBTProjectSettings.cs.meta │ ├── EditorBTProjectSettings.cs │ └── EditorMacroUtil.cs ├── Resources.meta ├── UIBuilder.meta ├── ScriptTemplates.meta ├── ScriptTemplates │ ├── ActionNodeTemplate.txt.meta │ ├── CompositeNodeTemplate.txt.meta │ ├── DecoratorNodeTempalte.txt.meta │ ├── ActionNodeTemplate.txt │ ├── CompositeNodeTemplate.txt │ └── DecoratorNodeTempalte.txt ├── NodeGraphProcessor.Editor.meta ├── Lockstep.AI.BehaviourTree.Editor.asmdef.meta ├── BTGraphAssetInspector.cs ├── BehaviourTreeProjectSettings.asset.meta ├── UIBuilder │ ├── BehaviourTreeEditorStyle.uss │ ├── NodeView.uxml.meta │ ├── BehaviourTreeEditor.uxml.meta │ ├── NodeViewStyle.uss.meta │ ├── BehaviourTreeEditorStyle.uss.meta │ └── NodeView.uxml ├── BTGraphView.cs.meta ├── BTSplitView.cs.meta ├── BTToolbarView.cs.meta ├── BTBlackboardView.cs.meta ├── BTInspectorView.cs.meta ├── BTProjectSettings.cs.meta ├── BTSplitView.cs ├── BTBlackboardValueField.cs.meta ├── BTGraphAssetCallbacks.cs.meta ├── BTGraphBehaviourEditor.cs.meta ├── BTGraphProcessorMenuItems.cs.meta ├── BTSerializedBehaviourTree.cs.meta ├── BTInspectorView.cs ├── Lockstep.AI.BehaviourTree.Editor.asmdef ├── BehaviourTreeProjectSettings.asset ├── BTGraphWindow.cs.meta ├── BTGraphProcessorMenuItems.cs ├── BTGraphAssetCallbacks.cs ├── BTToolbarView.cs ├── BTGraphBehaviourEditor.cs └── BTProjectSettings.cs ├── Runtime ├── Core.meta ├── Mono.meta ├── Node.meta ├── Core │ ├── BTInfo.cs.meta │ ├── BTFactory.cs.meta │ ├── BTGraph.cs.meta │ ├── Blackboard.meta │ ├── BehaviourTree.cs.meta │ ├── BTGraph.cs │ ├── BTRunningStatus.cs.meta │ ├── Blackboard │ │ ├── BlackboardVars.cs.meta │ │ └── BlackboardVars.cs │ ├── BTNode.cs.meta │ ├── BTWorkingData.cs.meta │ ├── BlackBoard.cs.meta │ ├── BTRunningStatus.cs │ └── BehaviourTree.cs ├── Extension │ ├── EditorExt.cs.meta │ ├── SerializationExt.cs.meta │ └── EditorExt.cs ├── Node │ ├── BTActionRoot.cs.meta │ ├── BTConditionLeaf.cs.meta │ ├── BTNodeFactory.cs.meta │ ├── BTActionComposite.cs.meta │ ├── BTConditionComposite.cs.meta │ ├── BTConditionLeaf.cs │ ├── BTActionComposite.cs │ ├── BTAction.cs │ ├── BTAction.cs.meta │ ├── BTActionLeaf.cs.meta │ ├── BTActionLoop.cs.meta │ ├── BTCondition.cs.meta │ ├── BTActionParallel.cs.meta │ ├── BTActionSelector.cs.meta │ ├── BTActionSequence.cs.meta │ ├── BTCondition.cs │ ├── BTConditionComposite.cs │ └── BTNodeFactory.cs ├── Util │ ├── NativeHelper.cs.meta │ ├── TAny.cs │ ├── TAny.cs.meta │ └── NativeHelper.cs ├── PackageInfo.cs ├── NodeGraphProcessor.Runtime │ ├── PackageInfo.cs │ ├── Elements.meta │ ├── Graph.meta │ ├── Utils.meta │ ├── Processing.meta │ ├── Utils │ │ ├── MessageType.cs │ │ ├── GraphUtils.cs.meta │ │ ├── ExceptionToLog.cs.meta │ │ ├── JsonSerializer.cs.meta │ │ ├── MessageType.cs.meta │ │ ├── TypeExtension.cs.meta │ │ ├── AppDomainExtension.cs.meta │ │ ├── SerializableEdge.cs.meta │ │ ├── SerializableType.cs.meta │ │ ├── SerrializableObject.cs.meta │ │ ├── ExceptionToLog.cs │ │ ├── AppDomainExtension.cs │ │ ├── TypeExtension.cs │ │ ├── SerializableType.cs │ │ └── JsonSerializer.cs │ ├── PackageInfo.cs.meta │ ├── Elements │ │ ├── Group.cs.meta │ │ ├── BaseNode.cs.meta │ │ ├── NodePort.cs.meta │ │ ├── RelayNode.cs.meta │ │ ├── StickyNote.cs.meta │ │ ├── BaseStackNode.cs.meta │ │ ├── BlackboardKey.cs.meta │ │ ├── ExposedParameter.cs.meta │ │ ├── ParameterNode.cs.meta │ │ ├── PinnedElement.cs.meta │ │ ├── ICreateNodeFromObject.cs.meta │ │ ├── StickyNote.cs │ │ ├── PinnedElement.cs │ │ ├── ICreateNodeFromObject.cs │ │ ├── BaseStackNode.cs │ │ └── Group.cs │ ├── Graph │ │ ├── Attributes.cs.meta │ │ └── BaseGraph.cs.meta │ └── Processing │ │ ├── CustomPortIO.cs.meta │ │ ├── TypeAdapter.cs.meta │ │ ├── BaseGraphProcessor.cs.meta │ │ ├── JobGraphProcessor.cs.meta │ │ ├── ProcessGraphProcessor.cs.meta │ │ ├── BaseGraphProcessor.cs │ │ ├── ProcessGraphProcessor.cs │ │ └── JobGraphProcessor.cs ├── Util.meta ├── Extension.meta ├── Lockstep.AI.BehaviourTree.asmdef.meta ├── NodeGraphProcessor.Runtime.meta ├── PackageInfo.cs.meta ├── Mono │ ├── BTGraphBehaviour.cs.meta │ ├── BTRuntimeGraph.cs.meta │ ├── BTGraphBehaviour.cs │ └── BTRuntimeGraph.cs └── Lockstep.AI.BehaviourTree.asmdef ├── Documentation ├── images │ ├── Head.gif │ ├── Tutorial001.jpeg │ ├── Tutorial002.jpeg │ ├── Tutorial003.jpeg │ └── Tutorial004.jpeg ├── Lockstep.AI.BehaviourTree.md.meta └── images.meta ├── Samples~ ├── Example01_Zombie │ ├── Scripts │ │ ├── CodeGen.meta │ │ ├── TsiU │ │ │ ├── Util.meta │ │ │ ├── TsiU.Core │ │ │ │ ├── TTimeAbs.cs.meta │ │ │ │ └── TTimeRel.cs.meta │ │ │ ├── Misc.meta │ │ │ ├── TsiU.Core.meta │ │ │ ├── TAIToolkit.cs │ │ │ ├── LeanTween.cs.meta │ │ │ ├── TAIToolkit.cs.meta │ │ │ ├── Util │ │ │ │ ├── TLogger.cs.meta │ │ │ │ ├── TMathUtils.cs.meta │ │ │ │ ├── TSingleton.cs.meta │ │ │ │ ├── TStaticHelperBase.cs.meta │ │ │ │ ├── TSingleton.cs │ │ │ │ ├── TStaticHelperBase.cs │ │ │ │ └── TMathUtils.cs │ │ │ └── Misc │ │ │ │ └── THoverCameraController.cs.meta │ │ ├── BTNodeFactoryInjector.cs.meta │ │ ├── CodeGen │ │ │ ├── _CodeGen_BTNodeExt.cs.meta │ │ │ ├── _CodeGen_BTNodeExtSerialization.cs.meta │ │ │ ├── _CodeGen_BTNodeExt.cs │ │ │ └── _CodeGen_BTNodeExtSerialization.cs │ │ ├── TsiU.meta │ │ ├── UnityAIToolkit.cs.meta │ │ ├── Lockstep.AI.BehaviourTree.Demo01.asmdef.meta │ │ ├── AIEntity.cs.meta │ │ ├── AIBehaviors.cs.meta │ │ ├── GameStarter.cs.meta │ │ ├── GameTimer.cs.meta │ │ ├── GameUpdater.cs.meta │ │ ├── AIBehaviorRequest.cs.meta │ │ ├── AIEnityManager.cs.meta │ │ ├── GameResourceManager.cs.meta │ │ ├── AIBehaviorRequest.cs │ │ ├── GameStarter.cs │ │ ├── Lockstep.AI.BehaviourTree.Demo01.asmdef │ │ ├── BTNodeFactoryInjector.cs │ │ ├── UnityAIToolkit.cs │ │ ├── GameTimer.cs │ │ ├── GameResourceManager.cs │ │ └── AIEnityManager.cs │ ├── .sample.json │ ├── Arts │ │ ├── Zombie │ │ │ ├── Model │ │ │ │ ├── z.FBX │ │ │ │ ├── z@walk.FBX │ │ │ │ ├── z@attack.FBX │ │ │ │ ├── Materials │ │ │ │ │ └── body_diffuse.mat.meta │ │ │ │ ├── z@back_fall.FBX │ │ │ │ ├── z@left_fall.FBX │ │ │ │ ├── z@right_fall.FBX │ │ │ │ └── Materials.meta │ │ │ ├── Model.meta │ │ │ └── Textures.meta │ │ ├── Misc │ │ │ ├── Model.meta │ │ │ ├── Texture.meta │ │ │ ├── Texture │ │ │ │ ├── Ground.png │ │ │ │ └── Ground.png.meta │ │ │ └── Model │ │ │ │ ├── Materials.meta │ │ │ │ └── Materials │ │ │ │ ├── cube_diffuse.mat.meta │ │ │ │ ├── ground_diffuse.mat.meta │ │ │ │ └── cube_diffuse.mat │ │ ├── Misc.meta │ │ └── Zombie.meta │ ├── Resources.meta │ ├── Resources │ │ ├── Ground.prefab.meta │ │ ├── Zombie.prefab.meta │ │ ├── AttackTarget.prefab.meta │ │ ├── ZombieAnimationController.controller.meta │ │ ├── Configs │ │ │ ├── 8001_BT_Zombie.json │ │ │ └── 8001_BT_Zombie.json.meta │ │ └── Configs.meta │ ├── Configs.meta │ ├── Scenes.meta │ ├── Scenes │ │ └── Demo.unity.meta │ ├── Arts.meta │ ├── BTProjectSettings.asset.meta │ ├── Scripts.meta │ ├── Configs │ │ └── 8001_BT_Zombie.asset.meta │ ├── .gitignore │ └── BTProjectSettings.asset └── Example01_Zombie.meta ├── Tests ├── Runtime │ ├── Scripts │ │ ├── ConsoleLogNode.cs.meta │ │ ├── Comparison.cs.meta │ │ ├── FieldTestNode.cs.meta │ │ ├── VerticalNode.cs.meta │ │ ├── DrawerFieldTestNode.cs.meta │ │ ├── PortConnectionTests.cs.meta │ │ ├── UnityTypeTestNode.cs.meta │ │ ├── VerticalNode.cs │ │ ├── FieldTestNode.cs │ │ ├── ConsoleLogNode.cs │ │ ├── UnityTypeTestNode.cs │ │ └── DrawerFieldTestNode.cs │ ├── Configs.meta │ ├── Scripts.meta │ ├── Lockstep.AI.BehaviourTree.Tests.asmdef.meta │ ├── Configs │ │ ├── TestNodes.asset.meta │ │ └── TestNodes.asset │ └── Lockstep.AI.BehaviourTree.Tests.asmdef ├── Editor.meta ├── Runtime.meta └── Editor │ ├── Lockstep.AI.BehaviourTree.Editor.Tests.asmdef.meta │ ├── EditorExampleTest.cs.meta │ ├── EditorExampleTest.cs │ └── Lockstep.AI.BehaviourTree.Editor.Tests.asmdef ├── CHANGELOG.md.meta ├── README.md.meta ├── package.json.meta ├── Third Party Notices.md.meta ├── Editor.meta ├── Runtime.meta ├── Tests.meta ├── Documentation.meta ├── CHANGELOG.md ├── package.json ├── Third Party Notices.md ├── .gitignore └── README.md /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/BaseStackNodeView.uss: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Editor/Resources/TestType.uss: -------------------------------------------------------------------------------- 1 | #title { 2 | background-color: rgba(59, 94, 68, 0.8); 3 | } -------------------------------------------------------------------------------- /Runtime/Core.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b5fbbd89c2a47a7816ee4613e7ffe9c 3 | timeCreated: 1671344981 -------------------------------------------------------------------------------- /Runtime/Mono.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ab0b4845f59044a48b9d0235cf2123fe 3 | timeCreated: 1672323498 -------------------------------------------------------------------------------- /Runtime/Node.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 15155599365745d68feeb003de019d44 3 | timeCreated: 1671344946 -------------------------------------------------------------------------------- /Editor/EditorTools.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3033458a1016498a98283d7ecf831ccc 3 | timeCreated: 1673187063 -------------------------------------------------------------------------------- /Runtime/Core/BTInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ad09853149d445f8b8e4559d5f30190 3 | timeCreated: 1561437167 -------------------------------------------------------------------------------- /Editor/CodeGenBTInjecter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c622f9b49fc74793a4b412b62ac240fe 3 | timeCreated: 1672760825 -------------------------------------------------------------------------------- /Editor/CodeGeneratorUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bdb1fadf08d74ebbb769160195eacbd4 3 | timeCreated: 1672760690 -------------------------------------------------------------------------------- /Runtime/Core/BTFactory.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66c09fc2f48d442492df97c64c1cf4e3 3 | timeCreated: 1561453182 -------------------------------------------------------------------------------- /Runtime/Core/BTGraph.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b479034dc8b5495d8270db7451704859 3 | timeCreated: 1671342283 -------------------------------------------------------------------------------- /Runtime/Core/Blackboard.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aceafec217634a77a5bbd47852bfb6dd 3 | timeCreated: 1672488908 -------------------------------------------------------------------------------- /Documentation/images/Head.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Documentation/images/Head.gif -------------------------------------------------------------------------------- /Editor/BTGraphAssetInspector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0a50ae302b8349998f42ee42a07d047e 3 | timeCreated: 1671459478 -------------------------------------------------------------------------------- /Editor/CodeGenBTSerialization.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: feacfa76031c4ee8b297e4db79db844e 3 | timeCreated: 1672762070 -------------------------------------------------------------------------------- /Runtime/Core/BehaviourTree.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5adf8d21b8654665951e9eec8f41e509 3 | timeCreated: 1671460497 -------------------------------------------------------------------------------- /Runtime/Extension/EditorExt.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ebd349132c0347209fa88703293ad382 3 | timeCreated: 1671346226 -------------------------------------------------------------------------------- /Runtime/Node/BTActionRoot.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed9f0a640b474bd58fc5c0e286f11f95 3 | timeCreated: 1672637167 -------------------------------------------------------------------------------- /Runtime/Node/BTConditionLeaf.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00a8df2e13e64c3e815c0c900efea0ac 3 | timeCreated: 1671364944 -------------------------------------------------------------------------------- /Runtime/Node/BTNodeFactory.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e992bcf70e924499bd357d3c8131957b 3 | timeCreated: 1672639459 -------------------------------------------------------------------------------- /Runtime/Util/NativeHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: faabe0f433774000a85d37128c2bb816 3 | timeCreated: 1561438540 -------------------------------------------------------------------------------- /Editor/EditorTools/EditorMacroUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6881b1d3ac994b8eb7833231fd9bb228 3 | timeCreated: 1673179448 -------------------------------------------------------------------------------- /Editor/EditorTools/EditorTools.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 856debd11a354b9eb832f3d286c3f39f 3 | timeCreated: 1672640298 -------------------------------------------------------------------------------- /Runtime/Extension/SerializationExt.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 566ccd11103d4ba5a14d703b1d5bb3da 3 | timeCreated: 1672759657 -------------------------------------------------------------------------------- /Runtime/Node/BTActionComposite.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 14b0e9e2629f410b8afd53f010bb708f 3 | timeCreated: 1671347889 -------------------------------------------------------------------------------- /Runtime/Node/BTConditionComposite.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b41a364c67ba4f37a2f638c2e991dc82 3 | timeCreated: 1671364937 -------------------------------------------------------------------------------- /Runtime/Node/BTConditionLeaf.cs: -------------------------------------------------------------------------------- 1 | namespace Lockstep.AI 2 | { 3 | public abstract class BTConditionLeaf : BTCondition { 4 | } 5 | } -------------------------------------------------------------------------------- /Runtime/PackageInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.CompilerServices; 2 | 3 | [assembly: InternalsVisibleTo("Lockstep.AI.BehaviourTree.Editor")] -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/CodeGen.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54269991ec4c4c57be09a395f19362cb 3 | timeCreated: 1672640025 -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/ConsoleLogNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80ef7fcc16714c12a145912aa1d94570 3 | timeCreated: 1612049055 -------------------------------------------------------------------------------- /Documentation/images/Tutorial001.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Documentation/images/Tutorial001.jpeg -------------------------------------------------------------------------------- /Documentation/images/Tutorial002.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Documentation/images/Tutorial002.jpeg -------------------------------------------------------------------------------- /Documentation/images/Tutorial003.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Documentation/images/Tutorial003.jpeg -------------------------------------------------------------------------------- /Documentation/images/Tutorial004.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Documentation/images/Tutorial004.jpeg -------------------------------------------------------------------------------- /Editor/EditorTools/EditorBTProjectSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 600379b443374dbd95ac01544024bbf0 3 | timeCreated: 1673187116 -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/BaseGraphView.uss: -------------------------------------------------------------------------------- 1 | #graphRootView 2 | { 3 | background-color: #101010; 4 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Util.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d8926b64491042c185683e99af84ff76 3 | timeCreated: 1671344998 -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Editor/NodeGraphProcessor.Editor/node.png -------------------------------------------------------------------------------- /Runtime/Core/BTGraph.cs: -------------------------------------------------------------------------------- 1 | using GraphProcessor; 2 | 3 | namespace Lockstep.AI 4 | { 5 | public partial class BTGraph : BaseGraph 6 | { 7 | } 8 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/BTNodeFactoryInjector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 810d5f043b44487c9accd9ed5afef858 3 | timeCreated: 1672639610 -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/untitled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Editor/NodeGraphProcessor.Editor/untitled.png -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/CodeGen/_CodeGen_BTNodeExt.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f66cb8bda16648f296288c623b19a394 3 | timeCreated: 1672640036 -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ExposedParameterPropertyView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7670d287f0e647e2b2a9934bdb9c19b1 3 | timeCreated: 1573245238 -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/untitled (1).png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Editor/NodeGraphProcessor.Editor/untitled (1).png -------------------------------------------------------------------------------- /Runtime/Node/BTActionComposite.cs: -------------------------------------------------------------------------------- 1 | namespace Lockstep.AI 2 | { 3 | public abstract unsafe partial class BTActionComposite : BTAction 4 | { 5 | } 6 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/.sample.json: -------------------------------------------------------------------------------- 1 | { 2 | "displayName":"Example Sample", 3 | "description": "Example01_Zombie.", 4 | "createSeparatePackage": false 5 | } 6 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model/z.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Samples~/Example01_Zombie/Arts/Zombie/Model/z.FBX -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b652364528805c642afd24e8074d9a35 3 | folderAsset: yes 4 | DefaultImporter: 5 | userData: 6 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Resources/Ground.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 024b839fec060f74abf8d3113fa1729f 3 | NativeFormatImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Resources/Zombie.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c5b49ba1dc2b5044bcd97868e5893c7 3 | NativeFormatImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/PackageInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.CompilerServices; 2 | 3 | [assembly: InternalsVisibleTo("com.alelievr.NodeGraphProcessor.Editor")] -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc/Model.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 02b7520d4590c55488fc144bf8f4f358 3 | folderAsset: yes 4 | DefaultImporter: 5 | userData: 6 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Resources/AttackTarget.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1ada7e42636a2dc4992fbffbe5de9bb2 3 | NativeFormatImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc/Texture.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a42126d583dea141bafc794d60fb725 3 | folderAsset: yes 4 | DefaultImporter: 5 | userData: 6 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc/Texture/Ground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Samples~/Example01_Zombie/Arts/Misc/Texture/Ground.png -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model/z@walk.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Samples~/Example01_Zombie/Arts/Zombie/Model/z@walk.FBX -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc/Model/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 190d0ec71b6facd4f81abac5c64fc03f 3 | folderAsset: yes 4 | DefaultImporter: 5 | userData: 6 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model/z@attack.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Samples~/Example01_Zombie/Arts/Zombie/Model/z@attack.FBX -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/ExposedParameterView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1592461e6c084c64a5da575a952112b2 3 | timeCreated: 1573390243 -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc/Model/Materials/cube_diffuse.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ebaacb57f4f6c348afe8e9056228a7c 3 | NativeFormatImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc/Model/Materials/ground_diffuse.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8869012f589b84c4fa744df04e14d3b6 3 | NativeFormatImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model/Materials/body_diffuse.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b9370e8d712512748aa3edab2e064ed1 3 | NativeFormatImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model/z@back_fall.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Samples~/Example01_Zombie/Arts/Zombie/Model/z@back_fall.FBX -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model/z@left_fall.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Samples~/Example01_Zombie/Arts/Zombie/Model/z@left_fall.FBX -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Resources/ZombieAnimationController.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f90ea365d2544444d9528abd50f30299 3 | NativeFormatImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model/z@right_fall.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Samples~/Example01_Zombie/Arts/Zombie/Model/z@right_fall.FBX -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Resources/Configs/8001_BT_Zombie.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Samples~/Example01_Zombie/Resources/Configs/8001_BT_Zombie.json -------------------------------------------------------------------------------- /CHANGELOG.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7d835051885b191439306bba7d230f70 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/Icons/SettingsIcons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Editor/NodeGraphProcessor.Editor/Resources/Icons/SettingsIcons.png -------------------------------------------------------------------------------- /README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0c40688729fc6f458b286ddf9256a88 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/Settings_Flyout_9slice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Editor/NodeGraphProcessor.Editor/Resources/Settings_Flyout_9slice.png -------------------------------------------------------------------------------- /Runtime/Node/BTAction.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace Lockstep.AI { 5 | 6 | public abstract unsafe partial class BTAction : BTNode { 7 | 8 | } 9 | } -------------------------------------------------------------------------------- /package.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 310f0f6cbb794b34bac616a66a00aa5d 3 | PackageManifestImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/Settings_Flyout_9slice@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JiepengTan/Lockstep.BehaviourTree/HEAD/Editor/NodeGraphProcessor.Editor/Resources/Settings_Flyout_9slice@2x.png -------------------------------------------------------------------------------- /Third Party Notices.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9cf75e7e857c7b349ba89692984b644a 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3321007fb1f026a4f86e02b786a80a2a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: caaa64096075b564f806c1162767654c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Tests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bdcc5f7342ded3149b5515cb3f594745 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Documentation.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 56b44f58bc45cb64ab42951797efd70f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/Util.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80e876958e9794b4f949f7703876c7d0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/Util/TAny.cs: -------------------------------------------------------------------------------- 1 | namespace Lockstep.AI 2 | { 3 | public class TAny 4 | { 5 | public T As() where T : TAny 6 | { 7 | return (T)this; 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Tests/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 60da14a245994c349a59342ecbb7ab9e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Tests/Runtime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cdab2cf30f630dd4b9ff631ee70e823c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 58af6dcf261b243adaf2af078b6c92bf 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/UIBuilder.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a928786d81c0503429452de26de58706 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/Extension.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8d0cb579f29bd88419aed6d7b89eb668 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Documentation/Lockstep.AI.BehaviourTree.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 24bbf5dc7b55253488756b7a5a0e671f 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Documentation/images.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6e97564f724ed81468fd797cd6fb3746 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/ScriptTemplates.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c0bdd4dae20cdb449e384d2347a6e59 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Tests/Runtime/Configs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e11a3dea208e6764396878c1511000d6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Tests/Runtime/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a726f7042df657469f257c5250cbbdb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/ScriptTemplates/ActionNodeTemplate.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 39908033e6333954ab068f9cd4335cab 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54964b60e69bc634283fce4c4810a184 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84cc377a1fb11b842b1eb9e122cde1b5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/ScriptTemplates/CompositeNodeTemplate.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 50af0744759a6f148891a0302871668f 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/ScriptTemplates/DecoratorNodeTempalte.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 68ec90eda70221843b347ce647ce661a 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Runtime/Lockstep.AI.BehaviourTree.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ced5ee7a53fb78647b1360439d2202bd 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3b1bca6f2c32464992ecf56789acf7a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Configs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eae15027ad2084276abd79f2ae730e2d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f704ae4b4f98ae41a0bce26658850c1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Lockstep.AI.BehaviourTree.Editor.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7a97f8730d882f545b96026eaf04e71c 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Logic.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ae3080c0c3f0d42f38d4300d12b41091 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5e5f8827aa14940f59f6f29179b03d0c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 600ac8da8b308477fa0dfcd14d40ce53 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3e20181de81574e39a21860b99cb450d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Callbacks.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 63fdfc474ed0f4db7aa1432eaf667691 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a15334d6fa12046e5afcb22ac791a43d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/NodeTemplate.cs.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9cbafe2f8c9a0042ad9fcc60c538f05 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d87d8f985f7499f40b41e67ff7212077 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Graph.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: db326f54ce37a86488063e8a81d25fb2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c7aab40cf1ea948259caa7792aa864d3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Resources/Configs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2a6e24993337f634b925600ad8e49693 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Tests/Runtime/Lockstep.AI.BehaviourTree.Tests.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 269017318b18d5e4ebf5b661d28a27a2 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/Icons.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 455a8e35332d64d64b1813fe02a00e8b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/NodeViewTemplate.cs.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1cff9adb4a6bd6b4aac3a5472648a524 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/UXML.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45b7389995a945447b18a07d0de4b450 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Processing.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e3bc93fed836d140b3428309c12ae78 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Resources/Configs/8001_BT_Zombie.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4d06f9ee832474148ab6250828a83c16 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scenes/Demo.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 75735e0d09a803040b355ac9eea086a7 3 | timeCreated: 1448621832 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Tests/Editor/Lockstep.AI.BehaviourTree.Editor.Tests.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a9b635515064fa4ca2476e009be0351 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/BTGraphAssetInspector.cs: -------------------------------------------------------------------------------- 1 | using GraphProcessor; 2 | using UnityEditor; 3 | 4 | namespace Lockstep.AI.Editor 5 | { 6 | [CustomEditor(typeof(BTGraph), true)] 7 | public class BTGraphAssetInspector : GraphInspector 8 | { 9 | } 10 | } -------------------------------------------------------------------------------- /Tests/Runtime/Configs/TestNodes.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 118c17927ff03324b885bfecb3d1933c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/BehaviourTreeProjectSettings.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e05252120d089a49ba4928ed7d86158 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/UnityAIToolkit.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 751cc58bf2c255244852b00dfc7e16ba 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6562f61ebe4c045d29fe4b1a3457379a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b6193e2ea77f575459c206ce30d87674 3 | folderAsset: yes 4 | timeCreated: 1448621671 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/Lockstep.AI.BehaviourTree.Demo01.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc8662de02cd3f742ae54f0daf2a77c5 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorElements.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4131c3b8da764d71b906a6ab20ec67f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/GroupView.uss: -------------------------------------------------------------------------------- 1 | #headerColorPicker { 2 | position: absolute; 3 | margin: 8px; 4 | width: 50px; 5 | } 6 | 7 | #titleContainer > #titleLabel, #titleContainer > #titleField { 8 | margin-left: 55px; 9 | } -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/UXML/NodeSettings.uxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4067b143fe7aeb7439f3eb967958805a 3 | folderAsset: yes 4 | timeCreated: 1448954280 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/BTProjectSettings.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bcffff777900dd2428b262f68304c7be 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41f7ec1e0a8eb2e47bcb7dc245dae040 3 | folderAsset: yes 4 | timeCreated: 1448621680 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/TsiU.Core/TTimeAbs.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3be2ce14978fb4f45a2b1fbb2a867fdb 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/TsiU.Core/TTimeRel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9d4ff39d39e3dbe448ebc2c930fac5a4 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 42595fa59de9b5443af92a23a50245cb 3 | folderAsset: yes 4 | timeCreated: 1448850653 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Configs/8001_BT_Zombie.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd1baf5d2677c6445a751ee6f81f3e86 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/MessageType.cs: -------------------------------------------------------------------------------- 1 | namespace GraphProcessor 2 | { 3 | // MessageType is only available in UnityEditor so we have our own for runtime 4 | public enum NodeMessageType 5 | { 6 | None, 7 | Info, 8 | Warning, 9 | Error 10 | } 11 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3461964979275ba449f1a9f9c9da30ca 3 | folderAsset: yes 4 | timeCreated: 1448850653 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Textures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cdfb1536983880743bf9bdc33efb6be6 3 | folderAsset: yes 4 | timeCreated: 1448850653 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Misc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ef7d76dbee051e4184b98f5c530185d 3 | folderAsset: yes 4 | timeCreated: 1476239691 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/TsiU.Core.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7402e1f5eacd52d4ba512e37032fd8a9 3 | folderAsset: yes 4 | timeCreated: 1453722332 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Zombie/Model/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ffe1afe26e2deb84397b8fb0851f6d2b 3 | folderAsset: yes 4 | timeCreated: 1448850653 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Editor/UIBuilder/BehaviourTreeEditorStyle.uss: -------------------------------------------------------------------------------- 1 | GridBackground { 2 | --grid-background-color: rgb(40, 40, 40); 3 | --line-color: rgba(193, 196, 192, 0.1); 4 | --thick-line-color: rgba(193, 196, 192, 0.1); 5 | --spacing: 15; 6 | } 7 | 8 | Label { 9 | color: rgb(196, 196, 196); 10 | } 11 | -------------------------------------------------------------------------------- /Editor/BTGraphView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 04efa91cf6aca4e4eb1d937c9b782f4b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTSplitView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6948cf0837281464fa0135008213c609 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTToolbarView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 937d1aed5c2b341d589c00aa858bfcc1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/PackageInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54e169e497f93a04381bf86b6d05ac17 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTBlackboardView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b77d072884ef02c46a3bb9d5a5b69544 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTInspectorView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6f01c965f82ddf04da1cbbb453ed2e70 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTProjectSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32dcde829cc493549a6e405cd4fc8179 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTSplitView.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine.UIElements; 4 | 5 | namespace Lockstep.AI.Editor { 6 | public class BTSplitView : TwoPaneSplitView { 7 | public new class UxmlFactory : UxmlFactory { } 8 | } 9 | } -------------------------------------------------------------------------------- /Editor/BTBlackboardValueField.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 56543292236e76744b4c53de712b06b0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTGraphAssetCallbacks.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e454f0d7a8d64cffabeb995f0db6e3d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTGraphBehaviourEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cbd558a7222fa954883e10ca50397892 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Core/BTRunningStatus.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 079247cb7f5a24b5da246ae56e1f8b0f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Mono/BTGraphBehaviour.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9864279eb8ab3ab4880349a3c8f3e6bb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Mono/BTRuntimeGraph.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e5994383d36ae4177a6ff2f44e6fadec 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Tests/Editor/EditorExampleTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d432b02d2d1d454ebb3f2f57a929003 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTGraphProcessorMenuItems.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4af107f84c5444e618624c1e7516fc62 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/BTSerializedBehaviourTree.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54d405b23fe6b2b4290810ffacb93cee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/Comparison.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac86b8505cd62554aacf661011580bd3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/FieldTestNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d875a69e73b603a41b9310428f7a9f58 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/VerticalNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7a3f5dfcff11f75439e38edb7a033f63 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Core/Blackboard/BlackboardVars.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 385b74a2ef62ae54f8dbee25655386c3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/TAIToolkit.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace AIToolkitDemo 4 | { 5 | public class TAIToolkit 6 | { 7 | static public void Init() 8 | { 9 | TLogger.instance.Init(); 10 | } 11 | static public void Uninit() 12 | { 13 | TLogger.instance.Uninit(); 14 | } 15 | } 16 | } 17 | 18 | -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/DrawerFieldTestNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8457727508941c4e83beea336d88c8f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/PortConnectionTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a42150ac8861b464bb8f45a10ebd720e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/UnityTypeTestNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 327b45992d9476f4b8589c21c1cfce8e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Core/BTNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 693aded7ea0b25645834ba0022e5057f 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/Node/BTAction.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7215d192e77c02b42a4f461fc348c973 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/PackageInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 75ccbc9f9e86c0e4484d986896dc8834 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Util/TAny.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 184a6256e00a2ee49b8aa0b9bc65312e 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/BaseGraphWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2b4b18f42b137457bbc04f077fe5fd56 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/EditorAttributes.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c50a793169754f699b4987ff8e0733f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/GraphInspector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a5afb378212c4444898716e86bef58f0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/FieldFactory.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e070bfe6917e4be9bff3e56c4cda092 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/NodeProvider.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f90580539cbf48d58ba35c626500169 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/BaseNodeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82efb95f0451b4cc88cc103f2a013dd5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/EdgeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e38753fb1fe624181b84aa5b468ebc01 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/GroupView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1ff0a0becab17784fbd739d189db2208 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/MiniMapView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 76246e393040b425e8d74ff93388a1d5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/PortView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 69c0ad40b9eda46c89c464f0b6d81a38 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ToolbarView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3844ba2924c064729bd5589ba9d3ad59 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Core/BTWorkingData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d11a8704b38b0945a01bb32786c7b5c 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/Core/BlackBoard.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a722e128f544634284d0a6fad95af3f 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/Node/BTActionLeaf.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 56688df727319c9498c943e59ce064b1 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/Node/BTActionLoop.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7e2340867bf753d48b720ee368c70c07 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/Node/BTCondition.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2ea5222a18c7b2e4aae86cc9ae4d0988 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/Group.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 612834e03af5aa04a972c51c3a3604ee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Graph/Attributes.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1305853968aeb3045b5c7caef2bbdfee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Graph/BaseGraph.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 31390c44c9f3a3d40b424bf6821999a2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/GraphUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 371c9f60999484f4e90e7d7933cda144 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/BaseEdgeConnector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41095db3abbea044bb45c3f71581d646 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/CopyPasteHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ad4ab8e74dd9540cab3bc65ba3b8b58c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/Vector4Drawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e005d18614cb90a4885aeb17e1d8b681 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/BaseGraphView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82433700726b148b2af8af687c24fa3a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/BaseStackNodeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0985aff67957de445ae4308754d3dc6f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/NodeBadgeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d144fffc7bace421ea0816023d12b826 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/NodeSettingsView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ca9449892f0b534c89c929a7d94adcc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ParameterNodeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 47b33fa0eb77eb644ac539818ea2bbf1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/PinnedElementView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed45305e038bd465d8f37499a7d22489 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ProcessorView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ba435dc6c3986437ebc9baec443d80b9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/RelayNodeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3de88cd6096eea84aad4b43321d4bda0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/StickyNoteView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 91980f17eb416574bb47754d14adfc09 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Node/BTActionParallel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 107f1e98e3582fa4b8cc5cc4d5e8c963 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/Node/BTActionSelector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e47dc4358114b3448c2babac5ef0ebb 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/Node/BTActionSequence.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 617b5a13c005fd44eab73da14a920719 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/BaseNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d3989238b25842a4da391d2c531fac81 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/NodePort.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f706f6f8536b264cb9beb4781f59eda 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/RelayNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8c90be388aff88468cc6d90d48c0210 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/StickyNote.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d78c527c31afef549bfea1a83a1baa57 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/ExceptionToLog.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8fc4b2c15f6b53c419008947edc57da1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/JsonSerializer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c53e0d90013624cea90a3c2d436cae63 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/MessageType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6da5bc85fe83349e3b5c84219071ca85 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/TypeExtension.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0068e7c9cd63d4b48bfb24b30aeb9aa7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Callbacks/OnBaseGraphDeleted.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59cb170ad7b9d4c7394a1a7bfd6b11a1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Logic/EdgeConnectorListener.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 594eed6e129424e83abd868b8d10d7a7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/BaseEdgeDragHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7a4920d8a0adeff48ab20dccd6a21bea 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/ExposedParameterDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d2195d075f27f3d48a496ea2a12bf1e7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/StackNodeViewProvider.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: abc80a5d5bd4ec7449204f4e373f6994 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/CreateNodeMenuWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d6862f67676b4934b4c770c79491754 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ExposedParameterView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 20f396177e1db490fa3958a08e540c07 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Resources/TestType.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b8544e277509f945b7a95d04bc07470 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: stylesheet 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Editor/UIBuilder/NodeView.uxml.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9986dfe8d36adb2418a4642ec916ddcf 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/BaseStackNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ccfaaae997c11c40ae62971837666d6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/BlackboardKey.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 43ae709c2d3ff8c409d3b7db926c706c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/ExposedParameter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 680a499af8c1716428e070768ce8971a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/ParameterNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f8090ed77d2b4211a2b313f5ed17913 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/PinnedElement.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0429aeae57996a844a00657c8913e21d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Processing/CustomPortIO.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 75502a01a74e426449b9e9b91bc66267 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Processing/TypeAdapter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 368c05c79a492d54fa8f0f6ff3c42264 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/AppDomainExtension.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5b7e6ceb2028e4680bc69f1513a37b35 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/SerializableEdge.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e07921523edfe44ce9b789fc5ceb44f0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/SerializableType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 49d77def0f0dd4431a0a872dad8fd922 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/SerrializableObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2134eb9534cbd0746be450ae8538655f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ExposedParameterFieldView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a938f1a7da9294dd1bccc097ffed55a4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ExposedParameterWorkaround.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 886a707ace40af74481202209244b94d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Resources/PortViewTypes.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 850ed96f5a80f42689017b108fcd3295 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: stylesheet 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/ICreateNodeFromObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a0dc6438458a3b54fb3be4708c6c043b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Processing/BaseGraphProcessor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f35826d7d9b70c342a1e3a77e831946b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Processing/JobGraphProcessor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21d965dd846be8e4dad4b0d71a06d016 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/AIEntity.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cb46886962787ab4baad3990d4a92050 3 | timeCreated: 1448881276 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Callbacks/NodeGraphProcessorMenuItems.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f1167d7feb04b4469adaa343846ab76a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ExposedParameterFieldFactory.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 13b10bab33501984ba97065b27ce8322 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Processing/ProcessGraphProcessor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: db1563f2bafeb0249a1ebada05b17e53 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/AIBehaviors.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6c7793bcf9586f248921d1509968ccb4 3 | timeCreated: 1448936112 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/GameStarter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 70c00df83cf7bcd438d066c3082417a1 3 | timeCreated: 1448869254 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/GameTimer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4533db8542e24594a8c9bfff477619a7 3 | timeCreated: 1448869254 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/GameUpdater.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a5719dbee703c484cac6906ecb63e8c4 3 | timeCreated: 1448869254 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Editor/UIBuilder/BehaviourTreeEditor.uxml.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 12f41ec3b5735b747a38daddd0ffefd8 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/AIBehaviorRequest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08f3590e94e6cfb4f9ba119f50b6e182 3 | timeCreated: 1448952785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/AIEnityManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 062ddc0b65aaced4e877a0ffc66f1ecb 3 | timeCreated: 1448881276 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/CodeGen/_CodeGen_BTNodeExtSerialization.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e4440920224aaef4187a128063d2804d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/LeanTween.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e834e58fa9cac314fa2bcac6f08ee11b 3 | timeCreated: 1448967179 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/TAIToolkit.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3cde414ca92a43e4d85217e7d34881b0 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Util/TLogger.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 86f665697ff85e2489fd15df05771b25 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/GameResourceManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ceab5d0353beda046a8eec696a3afdf2 3 | timeCreated: 1448941120 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Util/TMathUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c93ca7047b6fe9c4e90993f698ffa3e6 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Util/TSingleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0af0b3c7e26632542ba55143c013c320 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Util/TStaticHelperBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0682abd2df14404cbc1f69a2a28e2ab 3 | timeCreated: 1453722334 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Misc/THoverCameraController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3dcad16fc9b6e444c9bbce22aa90077c 3 | timeCreated: 1476239691 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/UXML/NodeSettings.uxml.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6374cb49cbf8694c8d98c127f27fee5 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Editor/UIBuilder/NodeViewStyle.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9d9e34dc0396ab94ab90fc5f26f12277 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | disableValidation: 0 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/NodeInspectorObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1de0d908d54790c46887e9bc16dd1c18 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: 4be6c4ce25d64ad4a961723d50e7dc42, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/EdgeView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28f83445e912a4e25aa30a4f0cd22636 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: stylesheet 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/PortView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f9f1707b6119456581ab1a100d96aaa 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: stylesheet 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Editor/UIBuilder/BehaviourTreeEditorStyle.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8781ca2a6e79ccf4da2e234c8c123d2f 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | disableValidation: 0 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/BaseGraphView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2769cf0fb82ce4c2691edb49469f5f17 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: stylesheet 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/BaseNodeView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7aed4ab0823d4432996ae4614575bc7c 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: stylesheet 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorElements/PinnedElement.uxml.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c1b2aa444c6cc43cfb7733e69843f135 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/PinnedElementView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fdbf4d830a3942a18aafb8fd7a5fa53 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: stylesheet 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | -------------------------------------------------------------------------------- /Editor/BTInspectorView.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections; 3 | using System.Collections.Generic; 4 | using UnityEngine.UIElements; 5 | using UnityEditor; 6 | using UnityEditor.UIElements; 7 | 8 | namespace Lockstep.AI.Editor { 9 | public class BTInspectorView : VisualElement { 10 | public new class UxmlFactory : UxmlFactory { } 11 | 12 | } 13 | } -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/GroupView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b1de357c1a591f54e973322441879dda 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | disableValidation: 0 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/RelayNode.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6de9c535e929b1546b5b960bfcb97f51 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | disableValidation: 0 12 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | All notable changes to this package will be documented in this file. 3 | 4 | The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) 5 | and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). 6 | 7 | ## [0.1.0] - 2023-01-01 8 | 9 | ### This is the first release of *\*. 10 | 11 | *Short description of this release* 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/InspectorView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d797fcc71504e734eaea6cac7b3c1abe 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | disableValidation: 0 12 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/NodeSettings.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c20503bfb0f533b43b99bb8fb74a4ed8 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | disableValidation: 0 12 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "com.gamestan.lockstepaibehaviourtree", 3 | "displayName": "Lockstep.BehaviourTree", 4 | "version": "0.1.0", 5 | "unity": "2020.3", 6 | "description": "BehaviourTree for Lockstep Predict & Rollback", 7 | "samples": [ 8 | { 9 | "displayName": "Zombie example", 10 | "description": "A zombie behaviour tree demo", 11 | "path": "Samples~/Example01_Zombie" 12 | } 13 | ] 14 | } -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/BaseStackNodeView.uss.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9e82320a8ee0b6a4aacdf90809f51e49 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} 11 | disableValidation: 0 12 | -------------------------------------------------------------------------------- /Editor/ScriptTemplates/ActionNodeTemplate.txt: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Lockstep.AI; 5 | 6 | [System.Serializable] 7 | public class #SCRIPTNAME# : ActionNode 8 | { 9 | protected override void OnStart() { 10 | } 11 | 12 | protected override void OnStop() { 13 | } 14 | 15 | protected override State OnUpdate() { 16 | return State.Success; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/EditorAttributes.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | using System; 6 | 7 | namespace GraphProcessor 8 | { 9 | [AttributeUsage(AttributeTargets.Class)] 10 | public class NodeCustomEditor : Attribute 11 | { 12 | public Type nodeType; 13 | 14 | public NodeCustomEditor(Type nodeType) 15 | { 16 | this.nodeType = nodeType; 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Editor/ScriptTemplates/CompositeNodeTemplate.txt: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Lockstep.AI; 5 | 6 | [System.Serializable] 7 | public class #SCRIPTNAME# : CompositeNode 8 | { 9 | protected override void OnStart() { 10 | } 11 | 12 | protected override void OnStop() { 13 | } 14 | 15 | protected override State OnUpdate() { 16 | return State.Success; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Editor/ScriptTemplates/DecoratorNodeTempalte.txt: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Lockstep.AI; 5 | 6 | [System.Serializable] 7 | public class #SCRIPTNAME# : DecoratorNode 8 | { 9 | protected override void OnStart() { 10 | } 11 | 12 | protected override void OnStop() { 13 | } 14 | 15 | protected override State OnUpdate() { 16 | return State.Success; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ExposedParameterWorkaround.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using System.Collections.Generic; 4 | 5 | namespace GraphProcessor 6 | { 7 | [Serializable] 8 | public class ExposedParameterWorkaround : ScriptableObject 9 | { 10 | [SerializeReference] 11 | public List parameters = new List(); 12 | public BaseGraph graph; 13 | } 14 | } -------------------------------------------------------------------------------- /Third Party Notices.md: -------------------------------------------------------------------------------- 1 | This package contains third-party software components governed by the license(s) indicated below: 2 | --------- 3 | 4 | Component Name: [provide component name] 5 | 6 | License Type: [Provide license type, i.e. "MIT", "Apache 2.0"] 7 | 8 | [Provide License Details] 9 | 10 | --------- 11 | Component Name: [provide component name] 12 | 13 | License Type: [Provide license type, i.e. "MIT", "Apache 2.0"] 14 | 15 | [Provide License Details] 16 | 17 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/CopyPasteHelper.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace GraphProcessor 6 | { 7 | [System.Serializable] 8 | public class CopyPasteHelper 9 | { 10 | public List< JsonElement > copiedNodes = new List< JsonElement >(); 11 | 12 | public List< JsonElement > copiedGroups = new List< JsonElement >(); 13 | 14 | public List< JsonElement > copiedEdges = new List< JsonElement >(); 15 | } 16 | } -------------------------------------------------------------------------------- /Runtime/Mono/BTGraphBehaviour.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using GraphProcessor; 3 | 4 | namespace Lockstep.AI 5 | { 6 | [ExecuteAlways] 7 | public class BTGraphBehaviour : MonoBehaviour 8 | { 9 | public BaseGraph graph; 10 | 11 | protected virtual void OnEnable() 12 | { 13 | if (graph == null) 14 | graph = ScriptableObject.CreateInstance(); 15 | 16 | graph.LinkToScene(gameObject.scene); 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/AIBehaviorRequest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace AIToolkitDemo 4 | { 5 | class AIBehaviorRequest 6 | { 7 | public AIBehaviorRequest(float timeStamp, Vector3 nextMovingTarget) 8 | { 9 | this.timeStamp = timeStamp; 10 | this.nextMovingTarget = nextMovingTarget; 11 | } 12 | public float timeStamp { get; private set; } 13 | public Vector3 nextMovingTarget { get; private set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /[Ll]ibrary/ 2 | /[Tt]emp/ 3 | /[Oo]bj/ 4 | /[Ll]ogs/ 5 | /[Bb]uild/ 6 | /[Bb]uilds/ 7 | /Assets/AssetStoreTools* 8 | 9 | # Autogenerated VS/MD solution and project files 10 | ExportedObj/ 11 | *.csproj 12 | *.unityproj 13 | *.sln 14 | *.suo 15 | *.tmp 16 | *.user 17 | *.userprefs 18 | *.pidb 19 | *.booproj 20 | *.svd 21 | .idea/ 22 | 23 | # Unity3D generated meta files 24 | *.pidb.meta 25 | 26 | # Unity3D Generated File On Crash Reports 27 | sysinfo.txt 28 | 29 | # Builds 30 | *.apk 31 | *.unitypackage 32 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/InspectorView.uss: -------------------------------------------------------------------------------- 1 | .NodeControls 2 | { 3 | border-width: 1.2px; 4 | border-radius: 8px; 5 | border-color: #161616; 6 | padding: 8px; 7 | margin-right:8px; 8 | margin-top: 8px; 9 | } 10 | 11 | .NodeControls > Label 12 | { 13 | font-size: 13px; 14 | -unity-font-style: bold; 15 | margin-bottom: 8px; 16 | } 17 | 18 | .PlaceHolder 19 | { 20 | font-size: 14px; 21 | padding: 8px; 22 | margin-right:8px; 23 | margin-bottom: 8px; 24 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Util/TSingleton.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace AIToolkitDemo 4 | { 5 | public class TSingleton where T : class, new() 6 | { 7 | private static T _instance = null; 8 | public static T instance 9 | { 10 | get 11 | { 12 | if (_instance == null) 13 | { 14 | _instance = new T(); 15 | } 16 | return _instance; 17 | } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Runtime/Node/BTCondition.cs: -------------------------------------------------------------------------------- 1 | namespace Lockstep.AI { 2 | //--------------------------------------------------------------- 3 | public abstract unsafe partial class BTCondition : BTNode 4 | { 5 | public bool IsInvert; 6 | 7 | public override bool Evaluate( /*in*/ BTWorkingData wData) 8 | { 9 | var result= IsInvert ^OnEvaluate(wData); 10 | #if !LOCKSTEP_PURE_MODE 11 | __DebugSetEvaluateState( result); 12 | #endif 13 | return result; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/.gitignore: -------------------------------------------------------------------------------- 1 | /[Ll]ibrary/ 2 | /[Tt]emp/ 3 | /[Oo]bj/ 4 | /[Ll]ogs/ 5 | /[Bb]uild/ 6 | /[Bb]uilds/ 7 | /Assets/AssetStoreTools* 8 | 9 | # Autogenerated VS/MD solution and project files 10 | ExportedObj/ 11 | *.csproj 12 | *.unityproj 13 | *.sln 14 | *.suo 15 | *.tmp 16 | *.user 17 | *.userprefs 18 | *.pidb 19 | *.booproj 20 | *.svd 21 | .idea/ 22 | 23 | # Unity3D generated meta files 24 | *.pidb.meta 25 | 26 | # Unity3D Generated File On Crash Reports 27 | sysinfo.txt 28 | 29 | # Builds 30 | *.apk 31 | *.unitypackage 32 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/ExceptionToLog.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | 4 | namespace GraphProcessor 5 | { 6 | public static class ExceptionToLog 7 | { 8 | public static void Call(Action a) 9 | { 10 | #if UNITY_EDITOR 11 | try 12 | { 13 | #endif 14 | a?.Invoke(); 15 | #if UNITY_EDITOR 16 | } 17 | catch (Exception e) 18 | { 19 | Debug.LogException(e); 20 | } 21 | #endif 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Runtime/Lockstep.AI.BehaviourTree.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Lockstep.AI.BehaviourTree", 3 | "rootNamespace": "", 4 | "references": [ 5 | "GUID:2ef4ed01564cabe4ea21bc60b92ea151", 6 | "GUID:b1ff32defd1f52f4aa3e78c4800b79b2" 7 | ], 8 | "includePlatforms": [], 9 | "excludePlatforms": [], 10 | "allowUnsafeCode": true, 11 | "overrideReferences": false, 12 | "precompiledReferences": [], 13 | "autoReferenced": true, 14 | "defineConstraints": [], 15 | "versionDefines": [], 16 | "noEngineReferences": false 17 | } -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/VerticalNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using GraphProcessor; 3 | 4 | namespace Lockstep.AI.Test 5 | { 6 | [System.Serializable, NodeMenuItem("Test/Vertical")] 7 | public class VerticalNode : BaseNode 8 | { 9 | [Input, Vertical] public float input; 10 | 11 | [Output, Vertical] public float output; 12 | [Output, Vertical] public float output2; 13 | [Output, Vertical] public float output3; 14 | 15 | public override string name => "Vertical"; 16 | 17 | protected override void Process() 18 | { 19 | output = input * 42; 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorElements/PinnedElement.uxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/NodeTemplate.cs.txt: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using GraphProcessor; 5 | using System.Linq; 6 | 7 | [System.Serializable, NodeMenuItem("Custom/#NAME#")] 8 | public class #SCRIPTNAME# : BaseNode 9 | { 10 | [Input(name = "In")] 11 | public float input; 12 | 13 | [Output(name = "Out")] 14 | public float output; 15 | 16 | public override string name => "#NAME#"; 17 | 18 | protected override void Process() 19 | { 20 | output = input * 42; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Editor/Lockstep.AI.BehaviourTree.Editor.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Lockstep.AI.BehaviourTree.Editor", 3 | "rootNamespace": "", 4 | "references": [ 5 | "Lockstep.AI.BehaviourTree", 6 | "Lockstep.Serializer", 7 | "Lockstep.Debug" 8 | ], 9 | "includePlatforms": [ 10 | "Editor" 11 | ], 12 | "excludePlatforms": [], 13 | "allowUnsafeCode": true, 14 | "overrideReferences": false, 15 | "precompiledReferences": [], 16 | "autoReferenced": true, 17 | "defineConstraints": [], 18 | "versionDefines": [], 19 | "noEngineReferences": false 20 | } -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/StickyNote.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace GraphProcessor 5 | { 6 | /// 7 | /// Serializable Sticky node class 8 | /// 9 | [Serializable] 10 | public class StickyNote 11 | { 12 | public Rect position; 13 | public string title = "Hello World!"; 14 | public string content = "Description"; 15 | 16 | public StickyNote(string title, Vector2 position) 17 | { 18 | this.title = title; 19 | this.position = new Rect(position.x, position.y, 200, 300); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/GameStarter.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace AIToolkitDemo 4 | { 5 | class GameStarter : MonoBehaviour 6 | { 7 | void Awake() 8 | { 9 | UnityAITookit.Init(); 10 | BTNodeFactoryInjector.Inject(); 11 | } 12 | void Start() 13 | { 14 | //init timer 15 | GameTimer.instance.Init(); 16 | //add game updater and trigger update 17 | gameObject.AddComponent(); 18 | } 19 | void Destroy() 20 | { 21 | UnityAITookit.Uninit(); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/RelayNode.uss: -------------------------------------------------------------------------------- 1 | .node 2 | { 3 | margin: 0px; 4 | padding: 0px; 5 | } 6 | 7 | .node > #node-border 8 | { 9 | border-radius: 9px; 10 | } 11 | 12 | #contents > #top > #input, #contents > #top > #output 13 | { 14 | padding: 0px; 15 | margin: 0px; 16 | height: 16px 17 | } 18 | 19 | #contents > #top > #input .connectorBox, #contents > #top > #output .connectorBox 20 | { 21 | padding: 0px; 22 | margin: 0px; 23 | } 24 | 25 | #contents > #top > #input .unity-label 26 | { 27 | display: none; 28 | } 29 | 30 | .hideLabels .unity-label 31 | { 32 | display: none; 33 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/Lockstep.AI.BehaviourTree.Demo01.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Lockstep.AI.BehaviourTree.Demo01", 3 | "rootNamespace": "", 4 | "references": [ 5 | "GUID:ced5ee7a53fb78647b1360439d2202bd", 6 | "GUID:2ef4ed01564cabe4ea21bc60b92ea151", 7 | "GUID:b1ff32defd1f52f4aa3e78c4800b79b2" 8 | ], 9 | "includePlatforms": [], 10 | "excludePlatforms": [], 11 | "allowUnsafeCode": true, 12 | "overrideReferences": false, 13 | "precompiledReferences": [], 14 | "autoReferenced": true, 15 | "defineConstraints": [], 16 | "versionDefines": [], 17 | "noEngineReferences": false 18 | } -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/MiniMapView.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor.UIElements; 5 | using UnityEditor.Experimental.GraphView; 6 | using UnityEngine.UIElements; 7 | 8 | namespace GraphProcessor 9 | { 10 | public class MiniMapView : MiniMap 11 | { 12 | new BaseGraphView graphView; 13 | Vector2 size; 14 | 15 | public MiniMapView(BaseGraphView baseGraphView) 16 | { 17 | this.graphView = baseGraphView; 18 | var sizePixel = 100; 19 | SetPosition(new Rect(0,0, sizePixel, sizePixel)); 20 | size = new Vector2(sizePixel, sizePixel); 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/NodeViewTemplate.cs.txt: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | using UnityEditor.UIElements; 6 | using UnityEditor.Experimental.GraphView; 7 | using UnityEngine.UIElements; 8 | using GraphProcessor; 9 | 10 | [NodeCustomEditor(typeof(NODE_TYPE))] 11 | public class #SCRIPTNAME# : BaseNodeView 12 | { 13 | public override void Enable() 14 | { 15 | var node = nodeTarget as NODE_TYPE; 16 | 17 | // Create your fields using node's variables and add them to the controlsContainer 18 | 19 | controlsContainer.Add(new Label("Hello World !")); 20 | } 21 | } -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/AppDomainExtension.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Collections; 3 | using System; 4 | 5 | namespace GraphProcessor 6 | { 7 | public static class AppDomainExtension 8 | { 9 | public static IEnumerable< Type > GetAllTypes(this AppDomain domain) 10 | { 11 | foreach (var assembly in domain.GetAssemblies()) 12 | { 13 | Type[] types = {}; 14 | 15 | try { 16 | types = assembly.GetTypes(); 17 | } catch { 18 | //just ignore it ... 19 | } 20 | 21 | foreach (var type in types) 22 | yield return type; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Tests/Runtime/Lockstep.AI.BehaviourTree.Tests.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Lockstep.AI.BehaviourTree.Tests", 3 | "rootNamespace": "", 4 | "references": [ 5 | "UnityEngine.TestRunner", 6 | "UnityEditor.TestRunner", 7 | "Lockstep.AI.BehaviourTree" 8 | ], 9 | "includePlatforms": [], 10 | "excludePlatforms": [], 11 | "allowUnsafeCode": false, 12 | "overrideReferences": true, 13 | "precompiledReferences": [ 14 | "nunit.framework.dll" 15 | ], 16 | "autoReferenced": false, 17 | "defineConstraints": [ 18 | "UNITY_INCLUDE_TESTS" 19 | ], 20 | "versionDefines": [], 21 | "noEngineReferences": false 22 | } -------------------------------------------------------------------------------- /Editor/BehaviourTreeProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 32dcde829cc493549a6e405cd4fc8179, type: 3} 13 | m_Name: BehaviourTreeProjectSettings 14 | m_EditorClassIdentifier: 15 | newTreePath: Assets/Plugins/GamesTan/Lockstep.AI.BehaviourTree.Editor/Samples/RandomWalk 16 | newNodePath: Assets/Plugins/GamesTan/Lockstep.AI.BehaviourTree.Editor/Samples/RandomWalk 17 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/PinnedElement.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine.UIElements; 2 | using UnityEngine; 3 | using System; 4 | 5 | namespace GraphProcessor 6 | { 7 | /// 8 | /// Element that overlays the graph like the blackboard 9 | /// 10 | [System.Serializable] 11 | public class PinnedElement 12 | { 13 | public static readonly Vector2 defaultSize = new Vector2(150, 200); 14 | 15 | public Rect position = new Rect(Vector2.zero, defaultSize); 16 | public bool opened = true; 17 | public SerializableType editorType; 18 | 19 | public PinnedElement(Type editorType) 20 | { 21 | this.editorType = new SerializableType(editorType); 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/BTNodeFactoryInjector.cs: -------------------------------------------------------------------------------- 1 | using Lockstep.AI; 2 | 3 | namespace AIToolkitDemo 4 | { 5 | public partial class BTNodeFactoryInjector 6 | { 7 | #if UNITY_EDITOR 8 | [UnityEditor.InitializeOnLoad] 9 | class AutoInject { 10 | static AutoInject() { 11 | BTNodeFactoryInjector.Inject(); 12 | UnityEngine.Debug.Log("AutoRegister"); 13 | } 14 | } 15 | #endif 16 | 17 | private BTNodeFactoryInjector() { } 18 | public static void Inject() 19 | { 20 | new BTNodeFactoryInjector()._Inject(); 21 | } 22 | 23 | partial void _Inject(); 24 | } 25 | 26 | } -------------------------------------------------------------------------------- /Editor/BTGraphWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 99b7a449feb3b49dbb84c76e09c4f4a5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: 7 | - m_ViewDataDictionary: {instanceID: 0} 8 | - graph: {instanceID: 0} 9 | - behaviourTreeXml: {fileID: 9197481963319205126, guid: 12f41ec3b5735b747a38daddd0ffefd8, 10 | type: 3} 11 | - nodeXml: {fileID: 9197481963319205126, guid: 9986dfe8d36adb2418a4642ec916ddcf, 12 | type: 3} 13 | - behaviourTreeStyle: {fileID: 7433441132597879392, guid: 8781ca2a6e79ccf4da2e234c8c123d2f, 14 | type: 3} 15 | executionOrder: 0 16 | icon: {instanceID: 0} 17 | userData: 18 | assetBundleName: 19 | assetBundleVariant: 20 | -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/TypeExtension.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using System.Linq.Expressions; 4 | 5 | namespace GraphProcessor 6 | { 7 | public static class TypeExtension 8 | { 9 | public static bool IsReallyAssignableFrom(this Type type, Type otherType) 10 | { 11 | if (type.IsAssignableFrom(otherType)) 12 | return true; 13 | if (otherType.IsAssignableFrom(type)) 14 | return true; 15 | 16 | try 17 | { 18 | var v = Expression.Variable(otherType); 19 | var expr = Expression.Convert(v, type); 20 | return expr.Method != null && expr.Method.Name != "op_Implicit"; 21 | } 22 | catch (InvalidOperationException) 23 | { 24 | return false; 25 | } 26 | } 27 | 28 | } 29 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Util/TStaticHelperBase.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace AIToolkitDemo 4 | { 5 | public class TStaticHelperBase : TSingleton where T : class, new() 6 | { 7 | //---------------------------------------------------------- 8 | public void Init() 9 | { 10 | onInit(); 11 | hasInited = true; 12 | } 13 | public void Uninit() 14 | { 15 | onUninit(); 16 | hasInited = false; 17 | } 18 | protected virtual void onInit() {} 19 | protected virtual void onUninit() {} 20 | //---------------------------------------------------------- 21 | protected bool hasInited 22 | { 23 | private set; 24 | get; 25 | } 26 | } 27 | } 28 | 29 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Callbacks/OnBaseGraphDeleted.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | namespace GraphProcessor 5 | { 6 | [ExecuteAlways] 7 | public class DeleteCallback : UnityEditor.AssetModificationProcessor 8 | { 9 | static AssetDeleteResult OnWillDeleteAsset(string path, RemoveAssetOptions options) 10 | { 11 | var objects = AssetDatabase.LoadAllAssetsAtPath(path); 12 | 13 | foreach (var obj in objects) 14 | { 15 | if (obj is BaseGraph b) 16 | { 17 | foreach (var graphWindow in Resources.FindObjectsOfTypeAll< BaseGraphWindow >()) 18 | graphWindow.OnGraphDeleted(); 19 | 20 | b.OnAssetDeleted(); 21 | } 22 | } 23 | 24 | return AssetDeleteResult.DidNotDelete; 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /Tests/Editor/EditorExampleTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using UnityEngine.TestTools; 4 | using NUnit.Framework; 5 | using System.Collections; 6 | 7 | namespace Lockstep.AI.BehaviourTree.Editor.Tests 8 | { 9 | 10 | class EditorExampleTest 11 | { 12 | 13 | [Test] 14 | public void EditorSampleTestSimplePasses() 15 | { 16 | // Use the Assert class to test conditions. 17 | } 18 | 19 | // A UnityTest behaves like a coroutine in PlayMode 20 | // and allows you to yield null to skip a frame in EditMode 21 | [UnityTest] 22 | public IEnumerator EditorSampleTestWithEnumeratorPasses() 23 | { 24 | // Use the Assert class to test conditions. 25 | // yield to skip a frame 26 | yield return null; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Editor/BTGraphProcessorMenuItems.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using GraphProcessor; 3 | 4 | namespace Lockstep.AI.Editor 5 | { 6 | public class NodeGraphProcessorMenuItems : GraphProcessor.NodeGraphProcessorMenuItems 7 | { 8 | [MenuItem("Assets/Create/Node C# Script", false, MenuItemPosition.afterCreateScript)] 9 | private static void CreateNodeCSharpScritpt() => CreateDefaultNodeCSharpScritpt(); 10 | 11 | [MenuItem("Assets/Create/Node View C# Script", false, MenuItemPosition.afterCreateScript + 1)] 12 | private static void CreateNodeViewCSharpScritpt() => CreateDefaultNodeViewCSharpScritpt(); 13 | 14 | // To add your C# script creation with you own templates, use ProjectWindowUtil.CreateScriptAssetFromTemplateFile(templatePath, defaultFileName) 15 | } 16 | } -------------------------------------------------------------------------------- /Editor/Resources/PortViewTypes.uss: -------------------------------------------------------------------------------- 1 | .Port_Single { 2 | --port-color: #2080FF; 3 | } 4 | 5 | .Port_Vector2 { 6 | --port-color: #2070FF; 7 | } 8 | 9 | .Port_Vector3 { 10 | --port-color: #2060FF; 11 | } 12 | 13 | .Port_Vector4 { 14 | --port-color: #2050FF; 15 | } 16 | 17 | .Port_Object { 18 | --port-color: #80FF00; 19 | } 20 | 21 | .Port_Color { 22 | --port-color: #FF00FF; 23 | } 24 | 25 | .Port_GameObject { 26 | --port-color: #FF0000; 27 | } 28 | 29 | .Port_String { 30 | --port-color: #80FF80; 31 | } 32 | 33 | .Port_Boolean { 34 | --port-color: #30FFFF; 35 | } 36 | 37 | .Port_ConditionalLink { 38 | --port-color: #FFFF30; 39 | } 40 | 41 | .Port_AnimationCurve{ 42 | --port-color: #FF0080; 43 | } 44 | 45 | .Port_Gradient{ 46 | --port-color: #FF8000; 47 | } 48 | -------------------------------------------------------------------------------- /Tests/Editor/Lockstep.AI.BehaviourTree.Editor.Tests.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Lockstep.AI.BehaviourTree.Editor.Tests", 3 | "rootNamespace": "", 4 | "references": [ 5 | "UnityEngine.TestRunner", 6 | "UnityEditor.TestRunner", 7 | "Lockstep.AI.BehaviourTree", 8 | "Lockstep.AI.BehaviourTree.Tests" 9 | ], 10 | "includePlatforms": [ 11 | "Editor" 12 | ], 13 | "excludePlatforms": [], 14 | "allowUnsafeCode": false, 15 | "overrideReferences": true, 16 | "precompiledReferences": [ 17 | "nunit.framework.dll" 18 | ], 19 | "autoReferenced": false, 20 | "defineConstraints": [ 21 | "UNITY_INCLUDE_TESTS" 22 | ], 23 | "versionDefines": [], 24 | "noEngineReferences": false 25 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/UnityAIToolkit.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using Lockstep.AI; 3 | 4 | namespace AIToolkitDemo 5 | { 6 | public class UnityLogListener : TILoggerListener 7 | { 8 | public void log(string msg) 9 | { 10 | Debug.Log(msg); 11 | } 12 | }; 13 | 14 | public class UnityAITookit 15 | { 16 | static public void Init() 17 | { 18 | TAIToolkit.Init(); 19 | TLogger.instance.AddLogListener(new UnityLogListener()); 20 | TLogger.INFO("Unity_AITookit initialization"); 21 | } 22 | 23 | static public void Uninit() 24 | { 25 | TLogger.INFO("Unity_AITookit uninitialization"); 26 | TAIToolkit.Uninit(); 27 | } 28 | }; 29 | } -------------------------------------------------------------------------------- /Editor/EditorTools/EditorBTProjectSettings.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace Lockstep.AI.Editor 5 | { 6 | [CustomEditor(typeof(BTProjectSettings))] 7 | public class EditorBTProjectSettings:UnityEditor. Editor 8 | { 9 | public override void OnInspectorGUI() 10 | { 11 | base.OnInspectorGUI(); 12 | GUILayout.Space(15); 13 | GUILayout.BeginHorizontal(); 14 | if (GUILayout.Button("1.GenCode")) 15 | { 16 | EditorTools.GenCode(); 17 | } 18 | GUILayout.Space(10); 19 | if (GUILayout.Button("2.GenData")) 20 | { 21 | EditorTools.GenData(); 22 | } 23 | GUILayout.EndHorizontal(); 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /Runtime/Mono/BTRuntimeGraph.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using GraphProcessor; 5 | 6 | namespace Lockstep.AI 7 | { 8 | public class BTRuntimeGraph : MonoBehaviour 9 | { 10 | public BaseGraph graph; 11 | public ProcessGraphProcessor processor; 12 | 13 | public GameObject assignedGameObject; 14 | 15 | private void Start() 16 | { 17 | if (graph != null) 18 | processor = new ProcessGraphProcessor(graph); 19 | } 20 | 21 | int i = 0; 22 | 23 | void Update() 24 | { 25 | if (graph != null) 26 | { 27 | graph.SetParameterValue("Input", (float)i++); 28 | graph.SetParameterValue("GameObject", assignedGameObject); 29 | processor.Run(); 30 | Debug.Log("Output: " + graph.GetParameterValue("Output")); 31 | } 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/BTProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 32dcde829cc493549a6e405cd4fc8179, type: 3} 13 | m_Name: BTProjectSettings 14 | m_EditorClassIdentifier: 15 | OutputBTBytesDir: Assets/Samples/Lockstep.BehaviourTree/0.1.0/Zombie example/Resources/Configs 16 | OutputBTBytesFilePosfix: .json 17 | CodeGenDir: Assets/Samples/Lockstep.BehaviourTree/0.1.0/Zombie example/Scripts/CodeGen 18 | CodeGenNameSpace: AIToolkitDemo 19 | CodeGenAssemblies: 20 | - Lockstep.AI.BehaviourTree.Demo01 21 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ExposedParameterPropertyView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine.UIElements; 2 | using UnityEditor.UIElements; 3 | using UnityEditor; 4 | using UnityEngine; 5 | 6 | namespace GraphProcessor 7 | { 8 | public class ExposedParameterPropertyView : VisualElement 9 | { 10 | protected BaseGraphView baseGraphView; 11 | 12 | public ExposedParameter parameter { get; private set; } 13 | 14 | public Toggle hideInInspector { get; private set; } 15 | 16 | public ExposedParameterPropertyView(BaseGraphView graphView, ExposedParameter param) 17 | { 18 | baseGraphView = graphView; 19 | parameter = param; 20 | 21 | var field = graphView.exposedParameterFactory.GetParameterSettingsField(param, (newValue) => { 22 | param.settings = newValue as ExposedParameter.Settings; 23 | }); 24 | 25 | Add(field); 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/FieldTestNode.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using GraphProcessor; 5 | using System.Linq; 6 | 7 | namespace Lockstep.AI.Test 8 | { 9 | [System.Serializable, NodeMenuItem("Test/FieldTestNode")] 10 | public class FieldTestNode : BaseNode 11 | { 12 | public string s; 13 | public int i; 14 | public float f; 15 | public Vector2 v2; 16 | public Vector3 v3; 17 | public Vector4 v4; 18 | public LayerMask layer; 19 | new public Color color; 20 | public Bounds bounds; 21 | public Rect rect; 22 | public CameraClearFlags flags = CameraClearFlags.Color; 23 | public bool toggle; 24 | public Gradient gradient; 25 | public AnimationCurve curve; 26 | 27 | public override string name => "FieldTestNode"; 28 | 29 | protected override void Process() 30 | { 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/GameTimer.cs: -------------------------------------------------------------------------------- 1 | using Lockstep.AI; 2 | using UnityEngine; 3 | 4 | namespace AIToolkitDemo 5 | { 6 | class GameTimer : TSingleton 7 | { 8 | public float gameTime 9 | { 10 | private set; 11 | get; 12 | } 13 | public float deltaTime 14 | { 15 | private set; 16 | get; 17 | } 18 | public float timeScale 19 | { 20 | get 21 | { 22 | return Time.timeScale; 23 | } 24 | } 25 | public void Init() 26 | { 27 | gameTime = 0f; 28 | deltaTime = 0f; 29 | } 30 | public void UpdateTime() 31 | { 32 | deltaTime = Time.deltaTime; 33 | gameTime += deltaTime; 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/Vector4Drawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using UnityEditor.UIElements; 4 | using UnityEngine.UIElements; 5 | 6 | namespace GraphProcessor 7 | { 8 | // We need a drawer to display Vector4 on a single line because by default it's a toggle 9 | [CustomPropertyDrawer(typeof(Vector4))] 10 | public class IngredientDrawerUIE : PropertyDrawer 11 | { 12 | public override VisualElement CreatePropertyGUI(SerializedProperty property) 13 | { 14 | var vectorField = new Vector4Field() { value = property.vector4Value }; 15 | vectorField.RegisterValueChangedCallback(e => { 16 | property.vector4Value = e.newValue; 17 | property.serializedObject.ApplyModifiedProperties(); 18 | }); 19 | 20 | return vectorField; 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/ProcessorView.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor.Experimental.GraphView; 5 | using UnityEditor.UIElements; 6 | using UnityEngine.UIElements; 7 | 8 | namespace GraphProcessor 9 | { 10 | public class ProcessorView : PinnedElementView 11 | { 12 | BaseGraphProcessor processor; 13 | 14 | public ProcessorView() 15 | { 16 | title = "Process panel"; 17 | } 18 | 19 | protected override void Initialize(BaseGraphView graphView) 20 | { 21 | processor = new ProcessGraphProcessor(graphView.graph); 22 | 23 | graphView.computeOrderUpdated += processor.UpdateComputeOrder; 24 | 25 | Button b = new Button(OnPlay) { name = "ActionButton", text = "Play !" }; 26 | 27 | content.Add(b); 28 | } 29 | 30 | void OnPlay() 31 | { 32 | processor.Run(); 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/TsiU/Util/TMathUtils.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace AIToolkitDemo 4 | { 5 | public class TMathUtils 6 | { 7 | public const float EPSILON = 0.00001f; 8 | 9 | public static bool IsZero(float v, float e = EPSILON) 10 | { 11 | return Mathf.Abs(v) < EPSILON; 12 | } 13 | public static Vector3 Vector3ZeroY(Vector3 v) 14 | { 15 | return new Vector3(v.x, 0, v.z); 16 | } 17 | public static Vector3 GetDirection2D(Vector3 to, Vector3 from) 18 | { 19 | Vector3 dir = to - from; 20 | dir.y = 0; 21 | return dir.normalized; 22 | } 23 | public static float GetDistance2D(Vector3 to, Vector3 from) 24 | { 25 | Vector3 dir = to - from; 26 | dir.y = 0; 27 | return dir.magnitude; 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/GameResourceManager.cs: -------------------------------------------------------------------------------- 1 | using Lockstep.AI; 2 | using UnityEngine; 3 | using System.Collections.Generic; 4 | 5 | namespace AIToolkitDemo 6 | { 7 | class GameResourceManager : TSingleton 8 | { 9 | private Dictionary _resourceDict; 10 | public GameResourceManager() 11 | { 12 | _resourceDict = new Dictionary(); 13 | } 14 | public GameObject LoadResource(string path) 15 | { 16 | if (!_resourceDict.ContainsKey(path)) 17 | { 18 | _resourceDict[path] = Resources.Load(path); 19 | } 20 | if (_resourceDict[path] == null) 21 | { 22 | return null; 23 | } 24 | return GameObject.Instantiate(_resourceDict[path]) as GameObject; 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Runtime/Extension/EditorExt.cs: -------------------------------------------------------------------------------- 1 | using GraphProcessor; 2 | using Unity.Collections; 3 | 4 | namespace Lockstep.AI 5 | { 6 | 7 | #if !LOCKSTEP_PURE_MODE 8 | public unsafe partial class BTActionLeaf 9 | { 10 | [Input, Vertical] public bool __input; 11 | } 12 | public unsafe partial class BTActionComposite 13 | { 14 | [Input, Vertical] public bool __input; 15 | [Output, Vertical] public bool __output; 16 | } 17 | public unsafe partial class BTActionRoot 18 | { 19 | [Output, Vertical] public bool __output; 20 | } 21 | 22 | public abstract unsafe partial class BTCondition 23 | { 24 | [Input, Vertical] public bool __input; 25 | } 26 | public unsafe partial class BTConditionComposite 27 | { 28 | [Output, Vertical] public bool __output; 29 | } 30 | public unsafe partial class BTNode : BaseNode 31 | { 32 | } 33 | #endif 34 | } -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Processing/BaseGraphProcessor.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using System.Linq; 5 | using Unity.Jobs; 6 | using Unity.Collections; 7 | // using Unity.Entities; 8 | 9 | namespace GraphProcessor 10 | { 11 | 12 | /// 13 | /// Graph processor 14 | /// 15 | public abstract class BaseGraphProcessor 16 | { 17 | protected BaseGraph graph; 18 | 19 | /// 20 | /// Manage graph scheduling and processing 21 | /// 22 | /// Graph to be processed 23 | public BaseGraphProcessor(BaseGraph graph) 24 | { 25 | this.graph = graph; 26 | 27 | UpdateComputeOrder(); 28 | } 29 | 30 | public abstract void UpdateComputeOrder(); 31 | 32 | /// 33 | /// Schedule the graph into the job system 34 | /// 35 | public abstract void Run(); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Editor/BTGraphAssetCallbacks.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | using GraphProcessor; 6 | using UnityEditor.Callbacks; 7 | using System.IO; 8 | 9 | namespace Lockstep.AI.Editor 10 | { 11 | public class NodeGraphAssetCallbacks 12 | { 13 | [MenuItem("Assets/Create/NodeGraph/BTGraph", false, 10)] 14 | public static void CreateGraphPorcessor() 15 | { 16 | var graph = ScriptableObject.CreateInstance(); 17 | ProjectWindowUtil.CreateAsset(graph, "GraphProcessor.asset"); 18 | } 19 | 20 | [OnOpenAsset(0)] 21 | public static bool OnBaseGraphOpened(int instanceID, int line) 22 | { 23 | var asset = UnityEditor.EditorUtility.InstanceIDToObject(instanceID) as BTGraph; 24 | if (asset != null) 25 | { 26 | EditorWindow.GetWindow().InitializeGraph(asset as BaseGraph); 27 | return true; 28 | } 29 | 30 | return false; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/ICreateNodeFromObject.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using Object = UnityEngine.Object; 4 | 5 | namespace GraphProcessor 6 | { 7 | /// 8 | /// Implement this interface on a BaseNode, it allows you to automatically spawn a node if an asset of type T is dropped in the graphview area 9 | /// 10 | /// The type object your node will be created from, it must be a subclass of UnityEngine.Object 11 | public interface ICreateNodeFrom where T : Object 12 | { 13 | /// 14 | /// This function is called just after creating the node from an object and allows you to initialize the node with the object data. 15 | /// 16 | /// Object value 17 | /// True if the initialization happened correctly. False otherwise, returning false will discard your node. 18 | bool InitializeNodeFromObject(T value); 19 | } 20 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc/Model/Materials/cube_diffuse.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 8 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: cube_diffuse 11 | m_Shader: {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 12 | m_ValidKeywords: [] 13 | m_InvalidKeywords: [] 14 | m_LightmapFlags: 4 15 | m_EnableInstancingVariants: 0 16 | m_DoubleSidedGI: 0 17 | m_CustomRenderQueue: -1 18 | stringTagMap: {} 19 | disabledShaderPasses: [] 20 | m_SavedProperties: 21 | serializedVersion: 3 22 | m_TexEnvs: 23 | - _MainTex: 24 | m_Texture: {fileID: 2800000, guid: 6fe469f85abaeee4ab379a5335431c19, type: 3} 25 | m_Scale: {x: 1, y: 1} 26 | m_Offset: {x: 0, y: 0} 27 | m_Ints: [] 28 | m_Floats: [] 29 | m_Colors: 30 | - _Color: {r: 1, g: 1, b: 1, a: 1} 31 | m_BuildTextureStacks: [] 32 | -------------------------------------------------------------------------------- /Editor/BTToolbarView.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | using GraphProcessor; 6 | using Status = UnityEngine.UIElements.DropdownMenuAction.Status; 7 | 8 | namespace Lockstep.AI.Editor 9 | { 10 | public class BTToolbarView : ToolbarView 11 | { 12 | public BTToolbarView(BaseGraphView graphView) : base(graphView) 13 | { 14 | } 15 | 16 | protected override void AddButtons() 17 | { 18 | AddButton("Center", graphView.ResetPositionAndZoom); 19 | 20 | AddButton("Show In Project", () => EditorGUIUtility.PingObject(graphView.graph), false); 21 | // Add the hello world button on the left of the toolbar 22 | AddButton("Hello !", () => Debug.Log("Hello World"), left: false); 23 | 24 | //bool conditionalProcessorVisible = graphView.GetPinnedElementStatus< ConditionalProcessorView >() != Status.Hidden; 25 | //AddToggle("Show Conditional Processor", conditionalProcessorVisible, (v) => graphView.ToggleView< ConditionalProcessorView>()); 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/AIEnityManager.cs: -------------------------------------------------------------------------------- 1 | using Lockstep.AI; 2 | using System.Collections.Generic; 3 | 4 | namespace AIToolkitDemo 5 | { 6 | class AIEnityManager : TSingleton 7 | { 8 | //-------------------------------------------------------------------------------------- 9 | public delegate int AIEntityUpdater(AIEntity entity, float gameTime, float deltaTime); 10 | //-------------------------------------------------------------------------------------- 11 | private List _entites; 12 | 13 | public AIEnityManager() 14 | { 15 | _entites = new List(); 16 | } 17 | public void AddEntity(AIEntity e) 18 | { 19 | _entites.Add(e); 20 | } 21 | public void IteratorDo(AIEntityUpdater updater, float gameTime, float deltaTime) 22 | { 23 | foreach (AIEntity e in _entites) 24 | { 25 | updater(e, gameTime, deltaTime); 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Runtime/Node/BTConditionComposite.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Lockstep.AI 4 | { 5 | [Serializable,GraphProcessor.NodeMenuItem("Precondition/Composite")] 6 | public partial class BTConditionComposite : BTCondition 7 | { 8 | public bool IsAllTrue; 9 | protected override bool OnEvaluate( /*in*/ BTWorkingData wData) 10 | { 11 | var count = _children.Count; 12 | if (count == 0) return true; 13 | if (IsAllTrue) 14 | { 15 | for (int i = 0; i < count; i++) 16 | { 17 | var val = ((BTCondition)_children[i]).Evaluate(wData); 18 | if (!val) return false; 19 | } 20 | 21 | return true; 22 | } 23 | else 24 | { 25 | for (int i = 0; i < count; i++) 26 | { 27 | var val = ((BTCondition)_children[i]).Evaluate(wData); 28 | if (val) return true; 29 | } 30 | return false; 31 | } 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/ConsoleLogNode.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using GraphProcessor; 3 | using UnityEngine; 4 | 5 | namespace Lockstep.AI.Test 6 | { 7 | [Serializable, NodeMenuItem("Test/TestLogNode")] 8 | public class TestLogNode : BaseNode 9 | { 10 | public override string name => "Console Log"; 11 | 12 | [Input("Object")] 13 | public object obj; 14 | 15 | [Input("Log"), SerializeField, Tooltip("If Object is null, this will be the log.")] 16 | public string logText = "Log"; 17 | 18 | public LogType logType = LogType.Log; 19 | 20 | protected override void Process() 21 | { 22 | switch(logType) 23 | { 24 | case LogType.Error: 25 | case LogType.Exception: 26 | Debug.LogError(obj != null ? obj.ToString() : logText); 27 | break; 28 | case LogType.Assert: 29 | Debug.LogAssertion(obj != null ? obj.ToString() : logText); 30 | break; 31 | case LogType.Warning: 32 | Debug.LogWarning(obj != null ? obj.ToString() : logText); 33 | break; 34 | case LogType.Log: 35 | Debug.Log(obj != null ? obj.ToString() : logText); 36 | break; 37 | } 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Processing/ProcessGraphProcessor.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using System.Linq; 5 | using Unity.Jobs; 6 | using Unity.Collections; 7 | // using Unity.Entities; 8 | 9 | namespace GraphProcessor 10 | { 11 | 12 | /// 13 | /// Graph processor 14 | /// 15 | public class ProcessGraphProcessor : BaseGraphProcessor 16 | { 17 | List< BaseNode > processList; 18 | 19 | /// 20 | /// Manage graph scheduling and processing 21 | /// 22 | /// Graph to be processed 23 | public ProcessGraphProcessor(BaseGraph graph) : base(graph) {} 24 | 25 | public override void UpdateComputeOrder() 26 | { 27 | processList = graph.nodes.OrderBy(n => n.computeOrder).ToList(); 28 | } 29 | 30 | /// 31 | /// Process all the nodes following the compute order. 32 | /// 33 | public override void Run() 34 | { 35 | int count = processList.Count; 36 | 37 | for (int i = 0; i < count; i++) 38 | processList[i].OnProcess(); 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Editor/BTGraphBehaviourEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | using UnityEngine.UIElements; 4 | 5 | namespace Lockstep.AI.Editor 6 | { 7 | [CustomEditor(typeof(BTGraphBehaviour))] 8 | public class BTGraphBehaviourEditor :UnityEditor. Editor 9 | { 10 | UnityEditor. Editor graphEditor; 11 | BTGraphBehaviour behaviour => target as BTGraphBehaviour; 12 | 13 | void OnEnable() 14 | { 15 | graphEditor = UnityEditor.Editor .CreateEditor(behaviour.graph); 16 | } 17 | 18 | void OnDisable() 19 | { 20 | DestroyImmediate(graphEditor); 21 | } 22 | 23 | public override VisualElement CreateInspectorGUI() 24 | { 25 | var root = new VisualElement(); 26 | var graphContainer = graphEditor != null ? graphEditor.CreateInspectorGUI().Q("ExposedParameters") : null; 27 | 28 | root.Add(new Button(() => EditorWindow.GetWindow().InitializeGraph(behaviour.graph)) 29 | { 30 | text = "Open" 31 | }); 32 | 33 | root.Add(graphContainer); 34 | 35 | return root; 36 | } 37 | } 38 | } -------------------------------------------------------------------------------- /Tests/Runtime/Configs/TestNodes.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: b479034dc8b5495d8270db7451704859, type: 3} 13 | m_Name: TestNodes 14 | m_EditorClassIdentifier: 15 | serializedNodes: [] 16 | nodes: [] 17 | edges: [] 18 | groups: [] 19 | stackNodes: [] 20 | pinnedElements: 21 | - position: 22 | serializedVersion: 2 23 | x: 0 24 | y: 0 25 | width: 150 26 | height: 200 27 | opened: 1 28 | editorType: 29 | serializedType: GraphProcessor.ExposedParameterView, com.alelievr.NodeGraphProcessor.Editor, 30 | Version=0.0.0.0, Culture=neutral, PublicKeyToken=null 31 | exposedParameters: [] 32 | serializedParameterList: [] 33 | stickyNotes: [] 34 | nodeInspectorReference: {fileID: 0} 35 | position: {x: 245, y: -183, z: 0} 36 | scale: {x: 1.520875, y: 1.520875, z: 1} 37 | references: 38 | version: 2 39 | RefIds: [] 40 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Resources/GraphProcessorStyles/NodeSettings.uss: -------------------------------------------------------------------------------- 1 | NodeSettingsView { 2 | position: absolute; 3 | min-width: 110px; 4 | max-width: 300px; 5 | -unity-slice-top: 40; 6 | -unity-slice-left: 80; 7 | -unity-slice-right: 25; 8 | -unity-slice-bottom: 25; 9 | padding-top: 15px; 10 | padding-left: 4px; 11 | padding-right: 4px; 12 | padding-bottom: 4px; 13 | background-image: resource("Settings_Flyout_9slice"); 14 | } 15 | 16 | NodeSettingsView > #mainContainer { 17 | padding-top: 4px; 18 | padding-left: 4px; 19 | padding-right: 4px; 20 | padding-bottom: 4px; 21 | } 22 | 23 | NodeSettingsView Label#header { 24 | padding-bottom: 4px; 25 | -unity-font-style: bold; 26 | } 27 | 28 | NodeSettingsView Label.unity-text-element { 29 | min-width: 110px; 30 | font-size: 10px; 31 | padding-right: 6px; 32 | } 33 | 34 | NodeSettingsView .unity-base-field > .unity-base-field__input { 35 | justify-content: flex-end; 36 | min-width: 20px; 37 | } 38 | 39 | NodeSettingsView > #mainContainer > #contentContainer { 40 | padding-top: 4px; 41 | padding-left: 8px; 42 | padding-right: 8px; 43 | padding-bottom: 4px; 44 | } -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Arts/Misc/Texture/Ground.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6fe469f85abaeee4ab379a5335431c19 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | serializedVersion: 2 6 | mipmaps: 7 | mipMapMode: 0 8 | enableMipMap: 1 9 | linearTexture: 0 10 | correctGamma: 0 11 | fadeOut: 0 12 | borderMipMap: 0 13 | mipMapFadeDistanceStart: 1 14 | mipMapFadeDistanceEnd: 3 15 | bumpmap: 16 | convertToNormalMap: 0 17 | externalNormalMap: 0 18 | heightScale: .25 19 | normalMapFilter: 0 20 | isReadable: 0 21 | grayScaleToAlpha: 0 22 | generateCubemap: 0 23 | seamlessCubemap: 0 24 | textureFormat: -1 25 | maxTextureSize: 1024 26 | textureSettings: 27 | filterMode: 1 28 | aniso: 8 29 | mipBias: -1 30 | wrapMode: -1 31 | nPOTScale: 1 32 | lightmap: 0 33 | compressionQuality: 50 34 | spriteMode: 0 35 | spriteExtrude: 1 36 | spriteMeshType: 1 37 | alignment: 0 38 | spritePivot: {x: .5, y: .5} 39 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 40 | spritePixelsToUnits: 100 41 | alphaIsTransparency: 0 42 | textureType: -1 43 | buildTargetSettings: [] 44 | spriteSheet: 45 | sprites: [] 46 | spritePackingTag: 47 | userData: 48 | -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Utils/StackNodeViewProvider.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using System.Collections.Generic; 3 | using System; 4 | using System.Linq; 5 | using UnityEngine; 6 | 7 | namespace GraphProcessor 8 | { 9 | public static class StackNodeViewProvider 10 | { 11 | static Dictionary< Type, Type > stackNodeViewPerType = new Dictionary< Type, Type >(); 12 | 13 | static StackNodeViewProvider() 14 | { 15 | foreach (var t in TypeCache.GetTypesWithAttribute()) 16 | { 17 | var attr = t.GetCustomAttributes(false).Select(a => a as CustomStackNodeView).FirstOrDefault(); 18 | 19 | stackNodeViewPerType.Add(attr.stackNodeType, t); 20 | // Debug.Log("Add " + attr.stackNodeType); 21 | } 22 | } 23 | 24 | public static Type GetStackNodeCustomViewType(Type stackNodeType) 25 | { 26 | // Debug.Log(stackNodeType); 27 | foreach (var t in stackNodeViewPerType) 28 | { 29 | // Debug.Log(t.Key + " -> " + t.Value); 30 | } 31 | stackNodeViewPerType.TryGetValue(stackNodeType, out var view); 32 | return view; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Utils/SerializableType.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace GraphProcessor 6 | { 7 | [Serializable] 8 | public class SerializableType : ISerializationCallbackReceiver 9 | { 10 | static Dictionary typeCache = new Dictionary(); 11 | static Dictionary typeNameCache = new Dictionary(); 12 | 13 | [SerializeField] 14 | public string serializedType; 15 | 16 | [NonSerialized] 17 | public Type type; 18 | 19 | public SerializableType(Type t) 20 | { 21 | type = t; 22 | } 23 | 24 | public void OnAfterDeserialize() 25 | { 26 | if (!String.IsNullOrEmpty(serializedType)) 27 | { 28 | if (!typeCache.TryGetValue(serializedType, out type)) 29 | { 30 | type = Type.GetType(serializedType); 31 | typeCache[serializedType] = type; 32 | } 33 | } 34 | } 35 | 36 | public void OnBeforeSerialize() 37 | { 38 | if (type != null) 39 | { 40 | if (!typeNameCache.TryGetValue(type, out serializedType)) 41 | { 42 | serializedType = type.AssemblyQualifiedName; 43 | typeNameCache[type] = serializedType; 44 | } 45 | } 46 | } 47 | } 48 | } -------------------------------------------------------------------------------- /Editor/NodeGraphProcessor.Editor/Views/NodeSettingsView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine.UIElements; 2 | using UnityEditor.UIElements; 3 | using UnityEngine; 4 | 5 | namespace GraphProcessor 6 | { 7 | class NodeSettingsView : VisualElement 8 | { 9 | VisualElement m_ContentContainer; 10 | 11 | public NodeSettingsView() 12 | { 13 | pickingMode = PickingMode.Ignore; 14 | styleSheets.Add(Resources.Load("GraphProcessorStyles/NodeSettings")); 15 | var uxml = Resources.Load("UXML/NodeSettings"); 16 | uxml.CloneTree(this); 17 | 18 | // Get the element we want to use as content container 19 | m_ContentContainer = this.Q("contentContainer"); 20 | RegisterCallback(OnMouseDown); 21 | RegisterCallback(OnMouseUp); 22 | } 23 | 24 | void OnMouseUp(MouseUpEvent evt) 25 | { 26 | evt.StopPropagation(); 27 | } 28 | 29 | void OnMouseDown(MouseDownEvent evt) 30 | { 31 | evt.StopPropagation(); 32 | } 33 | 34 | public override VisualElement contentContainer 35 | { 36 | get { return m_ContentContainer; } 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /Tests/Runtime/Scripts/UnityTypeTestNode.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEngine; 3 | using GraphProcessor; 4 | using UnityEngine.Events; 5 | 6 | namespace Lockstep.AI.Test 7 | { 8 | [System.Serializable, NodeMenuItem("Test/UnityTypeTestNode")] 9 | public class UnityTypeTestNode : BaseNode 10 | { 11 | [Input(name = "In")] public float input; 12 | 13 | [Output(name = "Out")] public float output; 14 | 15 | public UnityEvent evt; 16 | 17 | [Output(name = "Out2"), SerializeField, Vertical] 18 | public GameObject output2; 19 | 20 | public override string name => "Unity Event Node"; 21 | public List objs = new List(); 22 | 23 | [Input(name = "In"), SerializeField] public Vector4 vetical; 24 | 25 | public enum Test1 26 | { 27 | A, 28 | B, 29 | C, 30 | D 31 | } 32 | 33 | public enum Test2 34 | { 35 | T1, 36 | T2, 37 | T3, 38 | } 39 | 40 | public Test1 t1; 41 | 42 | [VisibleIf(nameof(t1), Test1.A)] public float f1; 43 | [VisibleIf(nameof(t1), Test1.B)] public int f2; 44 | 45 | [VisibleIf(nameof(t1), Test1.C)] public string s1; 46 | [VisibleIf(nameof(t1), Test1.C)] public Test2 t2; 47 | 48 | protected override void Process() 49 | { 50 | output = input * 42; 51 | } 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /Samples~/Example01_Zombie/Scripts/CodeGen/_CodeGen_BTNodeExt.cs: -------------------------------------------------------------------------------- 1 | 2 | // auto generate by tools, DO NOT Modify it!!! 3 | using Lockstep.AI; 4 | namespace AIToolkitDemo 5 | { 6 | public enum EGameBTNodeType 7 | { 8 | CON_HasReachedTarget = 7, 9 | NOD_Attack = 8, 10 | NOD_MoveTo = 9, 11 | NOD_TurnTo = 10, 12 | 13 | } 14 | 15 | public partial class BTNodeFactoryInjector 16 | { 17 | partial void _Inject() 18 | { 19 | BTNodeFactory.Register((int)(EGameBTNodeType.CON_HasReachedTarget),()=>new AIToolkitDemo.CON_HasReachedTarget()); 20 | BTNodeFactory.Register((int)(EGameBTNodeType.NOD_Attack),()=>new AIToolkitDemo.NOD_Attack()); 21 | BTNodeFactory.Register((int)(EGameBTNodeType.NOD_MoveTo),()=>new AIToolkitDemo.NOD_MoveTo()); 22 | BTNodeFactory.Register((int)(EGameBTNodeType.NOD_TurnTo),()=>new AIToolkitDemo.NOD_TurnTo()); 23 | 24 | } 25 | } 26 | 27 | partial class CON_HasReachedTarget {public override ushort TypeId=>(int)EGameBTNodeType.CON_HasReachedTarget;} 28 | partial class NOD_Attack {public override ushort TypeId=>(int)EGameBTNodeType.NOD_Attack;} 29 | partial class NOD_MoveTo {public override ushort TypeId=>(int)EGameBTNodeType.NOD_MoveTo;} 30 | partial class NOD_TurnTo {public override ushort TypeId=>(int)EGameBTNodeType.NOD_TurnTo;} 31 | 32 | } -------------------------------------------------------------------------------- /Runtime/Util/NativeHelper.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Runtime.InteropServices; 3 | 4 | namespace Lockstep.AI { 5 | public unsafe class NativeHelper { 6 | public const int STRUCT_PACK = 4; 7 | 8 | public static void Free(IntPtr ptr){ 9 | Marshal.FreeHGlobal(ptr); 10 | } 11 | 12 | public static IntPtr Alloc(int bytes){ 13 | return Marshal.AllocHGlobal(bytes); 14 | } 15 | 16 | public static unsafe void Zero(byte* ptr, int size){ 17 | for (int index = size - 1; index >= 0; --index) 18 | ptr[index] = (byte) 0; 19 | } 20 | 21 | public static unsafe void MemCpy(byte* srcptr, byte* dstptr, int size){ 22 | for (int index = size - 1; index >= 0; --index) 23 | dstptr[index] = srcptr[index]; 24 | } 25 | 26 | public static byte* AllocAndZero(int bytes){ 27 | var ptr = (byte*) (Marshal.AllocHGlobal(bytes).ToPointer()); 28 | Zero(ptr, bytes); 29 | return ptr; 30 | } 31 | 32 | public static void NullPointer(){ 33 | throw new NullReferenceException("Method invoked on null pointer."); 34 | } 35 | 36 | public static void ArrayOutOfRange(){ 37 | throw new ArgumentOutOfRangeException("Array index out of range"); 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /Runtime/NodeGraphProcessor.Runtime/Elements/BaseStackNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections.Generic; 3 | 4 | namespace GraphProcessor 5 | { 6 | /// 7 | /// Data container for the StackNode views 8 | /// 9 | [System.Serializable] 10 | public class BaseStackNode 11 | { 12 | public Vector2 position; 13 | public string title = "New Stack"; 14 | 15 | /// 16 | /// Is the stack accept drag and dropped nodes 17 | /// 18 | public bool acceptDrop; 19 | 20 | /// 21 | /// Is the stack accepting node created by pressing space over the stack node 22 | /// 23 | public bool acceptNewNode; 24 | 25 | /// 26 | /// List of node GUID that are in the stack 27 | /// 28 | /// 29 | /// 30 | public List< string > nodeGUIDs = new List< string >(); 31 | 32 | public BaseStackNode(Vector2 position, string title = "Stack", bool acceptDrop = true, bool acceptNewNode = true) 33 | { 34 | this.position = position; 35 | this.title = title; 36 | this.acceptDrop = acceptDrop; 37 | this.acceptNewNode = acceptNewNode; 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /Editor/UIBuilder/NodeView.uxml: -------------------------------------------------------------------------------- 1 | 2 |