
Downloads / loja de ativos / documentação
Apoie Xnode em Ko-Fi ou Patreon
Para apoio completo do Odin, considere usar o garfo do Kajed82
Pensando em desenvolver um plug-in baseado em nós? Então isso é para você. Você pode baixá -lo como um arquivo e descompactar para um novo projeto de unidade ou conectá -lo como submodule Git.
O XNode é super amigável, intuitivo e o ajudará a colher os benefícios dos gráficos de nós em pouco tempo. Com uma pegada mínima, é ideal como base para máquinas de estado personalizadas, sistemas de diálogo, tomadores de decisão etc.

Via Git URL (requer a versão de unidade 2018.3.0b7 ou acima)
Para instalar este projeto como uma dependência do GIT usando o Unity Package Manager, adicione a seguinte linha ao manifest.json do seu projeto:
"com.github.siccity.xnode": "https://github.com/siccity/xNode.git"
Você precisará instalar o Git e disponível no caminho do seu sistema.
Se você estiver usando definições de montagem em seu projeto, precisará adicionar XNode e/ou XNodeEditor como referências de definição de montagem.
Via openUpm
O pacote está disponível no registro do OpenUPM. É recomendável instalá-lo via openUpm-cli.
openupm add com.github.siccity.xnode
Via submódulo Git
Para adicionar Xnode como um submódulo em seu projeto Git existente, execute o seguinte comando git da sua raiz do projeto:
git submodule add [email protected]:Siccity/xNode.git Assets/Submodules/xNode
Se nenhum controle de origem ou gerenciador de pacotes estiver disponível para você, basta copiar/colar os arquivos de origem na pasta de ativos.
// 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 ;
}
}Os plugins são repositórios que adicionam funcionalidade ao xnode
Junte -se ao servidor Discord para deixar feedback ou obter suporte. Sinta -se à vontade para também deixar sugestões/solicitações na página de problemas.