
Загрузки / магазин активов / документация
Поддержите Xnode на Ko-Fi или Patreon
Для полной поддержки ODIN рассмотрите возможность использования вилки Kajed82
Думаете о разработке плагина на основе узлов? Тогда это для вас. Вы можете скачать его как архив и распаковать с новым проектом Unity или подключить его как подмодуль GIT.
Xnode очень дружественен, интуитивно понятен и поможет вам пожинать преимущества графиков узлов в кратчайшие сроки. С минимальным следствием, он идеально подходит в качестве базы для пользовательских государственных машин, диалоговых систем, лиц, принимающих решения, и т. Д.

Через URL через git (требуется версия Unity 2018.3.0b7 или выше)
Чтобы установить этот проект в качестве зависимости GIT, используя диспетчер пакетов Unity, добавьте следующую строку в manifest.json вашего проекта:
"com.github.siccity.xnode": "https://github.com/siccity/xNode.git"
Вам нужно будет установить GIT и доступен на пути вашей системы.
Если вы используете определения сборки в своем проекте, вам нужно будет добавить XNode и/или XNodeEditor в качестве ссылок на определение сборки.
Через OpenUpm
Пакет доступен в реестре OpenUpm. Рекомендуется установить его через OpenUpm-CLI.
openupm add com.github.siccity.xnode
Через Git Submodule
Чтобы добавить Xnode в качестве подмодуля в существующий проект GIT, запустите следующую команду GIT из вашего проекта root:
git submodule add [email protected]:Siccity/xNode.git Assets/Submodules/xNode
Если вам нет управления источником или диспетчера пакетов, вы можете просто скопировать/вставить исходные файлы в папку Assets.
// public classes deriving from Node are registered as nodes for use within a graph
public class MathNode : Node {
// Adding [Input] or [Output] is all you need to do to register a field as a valid port on your node
[ Input ] public float a ;
[ Input ] public float b ;
// The value of an output node field is not used for anything, but could be used for caching output results
[ Output ] public float result ;
[ Output ] public float sum ;
// The value of 'mathType' will be displayed on the node in an editable format, similar to the inspector
public MathType mathType = MathType . Add ;
public enum MathType { Add , Subtract , Multiply , Divide }
// GetValue should be overridden to return a value for any specified output port
public override object GetValue ( NodePort port ) {
// Get new a and b values from input connections. Fallback to field values if input is not connected
float a = GetInputValue < float > ( "a" , this . a ) ;
float b = GetInputValue < float > ( "b" , this . b ) ;
// After you've gotten your input values, you can perform your calculations and return a value
if ( port . fieldName == "result" )
switch ( mathType ) {
case MathType . Add : default : return a + b ;
case MathType . Subtract : return a - b ;
case MathType . Multiply : return a * b ;
case MathType . Divide : return a / b ;
}
else if ( port . fieldName == "sum" ) return a + b ;
else return 0f ;
}
}Плагины - это репозитории, которые добавляют функциональность к Xnode
Присоединяйтесь к серверу Discord, чтобы оставить обратную связь или получить поддержку. Не стесняйтесь оставлять предложения/запросы на странице проблем.