Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A helper library of visual scripting custom nodes in Godot.

License

NotificationsYou must be signed in to change notification settings

swarnimarun/visual-scripting-node-library

Repository files navigation

This library is a collection of visual script custom nodes that anyone can use in their projects.

It's purpose is to make thevisual scripting work flow in Godot easier.

Some nodes from the library in use:

EXAMPLE


Follow me at:Twitter: @steincodes and Find Tutorials about this atYoutube:Steincodes


Steps for using the Library

To use the custom nodes in this library you have to copy theaddons folder from this repo into your project.

Then go toProject Setting>Plugins and set the status of theVisualScript Library plugin to activate.

Project Settings Window

Explanation of the nodes

TheLoad Directory node

This node is useful for loading all the files in a directory into adictionary. These files can be any files that can be loaded with theResourceLoader. This is useful for loading random scenes or textures for example.

Apply a random texture from theSprites folder to a sprite:

Load Random Texture

How you can contribute

You can contribute in many ways; If you have questions or suggestions, just open an issue here on GitHub. If you have an idea for a node, be sure to first post it in the Node Brainstorming issue (#4), so you can get feedback. After your idea has been approved, follow these steps:

  1. Get started by making a forkfork of this repository and creating a branch for your custom node

  2. Create a new Godot project and either copy theaddons folder into it or create a symlink. Theaddons folder is where Godot loads plugins from, so it's name is important.

  3. Create a new GDScript in theaddons/vs_custom_nodes directory. Name it by the name of your custom node inCamelCase, which should not include the word "Node" and describe what is does, for exampleEatApples.

  4. Now it's time to get started scripting our custom node! All custom nodes should extendVisualScriptCustomNode and have atool keyword at the top.

    1557600176008

  5. There are some getter functions you will need to add to set some parameters. Look at some of the existing nodes to see what you need. Only add functions that are really needed, you don't need a_has_input_sequence_port if it should returnfalse for example.1557600238543

  6. Now comes the most important part of your custom node, the_step function. All the logic happens in here. You can modify theoutput array and theworking_mem to create your functionality.If you want to throw an error, if the inputs are incorrect for example, then you need to return the error as a string. When everything goes all right, return the id of the sequence port which should be called next. If your custom node doesn't have any, just return 0.

  7. If you have your custom node all done, you need to register it inaddvsnodes.gd. Add a ppreload statement at the top, aadd_custom_node one in_enter_tree and aremove_custom_node in_exit_tree. Be sure to give it a unique id and the correct category.

  8. Now you can test your node by enabling the plugin inProject->Project Settings->Plugins and adding your custom node to a VisualScript.Project Settings Window

  9. If it works how you want it to, create a pull requestpullrequest and wait for it to be merged.

For help PM me on @steincodes on Twitter and follow me there for more updates on the project.

Keep track in the project board of any updates and plans before starting something.

About

A helper library of visual scripting custom nodes in Godot.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors2

  •  
  •  

[8]ページ先頭

©2009-2025 Movatter.jp