Category:ProtoFlux: Difference between revisions

Category page
Add Users ProtoFlux Category to main page (Not finished)
Updated link to the new Community ProtoFlux Library page.
 
(16 intermediate revisions by 5 users not shown)
Line 1: Line 1:
The different [[ProtoFlux]] nodes in Resonite as seen in Resonite.
The different [[ProtoFlux]] nodes in the [[ProtoFlux Node Browser]] as seen in [[Resonite]].


See also: [[:Category:ProtoFlux:All|Alphabetical list of all nodes]]
See also: [[:Category:ProtoFlux:All|Alphabetical list of all nodes]]


Editors See also: [[Example ProtoFlux Node]] for making pages
Editors See also: [[Example ProtoFlux Node]] for making pages
== Main Nodes ==
{{Table ProtoFluxCategorySubcategories
{{Table ProtoFluxCategorySubcategories
|Actions| Writing, shifting, and animating values.
|Actions| Writing, shifting, and animating values.
|Assets| loading, attaching, reading, and sampling assets.
|Assets| Loading, attaching, reading, and sampling assets.
|Audio| Playing Entire Sounds.
|Audio| Playing Entire Sounds.
|Avatars| Working with [[Type:User|User]] body parts, and Anchors.
|Avatars| Working with [[Type:User|User]] body parts, and Anchors.
|Casts| Casting [[Type:Nullable`1|Nullables]]/Values into Objects.
|Casts| Casting [[Type:Nullable`1|Nullables]]/Values into Objects.
|Colors| [[Type:Color|Colors]], ColorChannels, [[Type:Color|Color]] Math.
|Colors| [[Type:Color|Colors]], ColorChannels, [[Type:Color|Color]] Math.
|Components| Getting/Setting an [[Component|IComponent]]'s Enabled state, Get User From Component.
|Components| Getting/Setting an [[Type:IComponent|IComponent]]'s Enabled state, Get User From Component.
|Core| Core nodes like displays, inputs, and casting values from [[Type:Float3|float3]] to [[Type:Float2|float2]].
|Core| Core nodes like displays, inputs, and casting values from [[Type:Float3|float3]] to [[Type:Float2|float2]].
|Debug| Useful for telling you where, what, or how fast something is. Like a debug menu.
|Debug| Useful for telling you where, what, or how fast something is. Like a debug menu.
|Devices| keyboards, haptics, display, and mouse input/output interaction.
|Devices| Keyboards, haptics, display, and mouse input/output interaction.
|Enums| converting to/from and cycling [[:Category:Enums|Enums]].
|Enums| Converting to/from and cycling [[:Category:Enums|Enums]].
|Experimental| Bleeding edge flux nodes that are in alpha phase. Here be dragons.
|Experimental| Bleeding edge flux nodes that are in alpha phase. Here be dragons.
|Flow| Doing events and single frame actions.
|Flow| Async, events, triggers, program flow control.
|Interaction| Events regarding interactions with UI's/Objects/buttons/grabbables/context menu.
|Interaction| Events regarding interactions with UI's/Objects/buttons/grabbables/context menu.
|Locomotion| Reading, changing, and installing a [[Type:User|user]]'s locomotion module.
|Locomotion| Reading, changing, and installing a [[Type:User|user]]'s locomotion module.
|Math| Complex math types like Trig, Phys, Lerp, Avg, Abs, and too many more to list here.
|Math| Complex math nodes like Trigonometry, Geometry, Interpolation and too many more to list here.
|Media| Playing, Stopping, Scrubbing, and measuring playable media like [[AnimJ]] and Audio.
|Media| Playing, Stopping, Scrubbing, and measuring playable media like [[AnimJ]] and Audio.
|Network| Twitch API, Websockets, GET and POST Web requests, and [[Type:Uri|URI]]/URL operations.
|Network| Twitch API, Websockets, GET and POST Web requests, and [[Type:Uri|URI]]/URL operations.
|Nodes| Packing/Unpacking nodes. What most community made node managers use.
|Nodes| Packing/Unpacking nodes. What most community made node managers use.
|Operators| Simple math types like adding, dividing, (un)packing, vectors, boolean logic gates.
|Operators| Simple math types like adding, dividing, (un)packing, vectors, boolean logic gates.
|Physics| Collisions, All Character Physics, Raycasting.
|Physics| Collisions, All Character Physics, Raycasting. (Not to be confused with the [[:Category:ProtoFlux:Math:Physics|Mathematical Physics Category]])
|References| Getting Field pointers, Spawned [[Type:User|User]], [[Type:RefID|RefID]]s, and an Element's Removal Status.
|References| Getting Field pointers, Spawned [[Type:User|User]], [[Type:RefID|RefID]]s, and an Element's Removal Status.
|Rendering| Baking, flashing meshes, rendering camera views, and raycast color sampling.
|Rendering| Baking, flashing meshes, rendering camera views, and raycast color sampling.
Line 34: Line 36:
|Tools| Equipping, Using, and reading [[Tools|Tool]] usage or lack thereof.
|Tools| Equipping, Using, and reading [[Tools|Tool]] usage or lack thereof.
|Transform| Working with [[Coordinate spaces]], directions, and bounding boxes.
|Transform| Working with [[Coordinate spaces]], directions, and bounding boxes.
|Undo| Adding Undo actions for a [[Types:User|User]] for one or more world changes.
|Undo| Adding Undo actions for a [[Type:User|User]] for one or more world changes.
|Users| World defined attributes for a [[Type:User|User (Type)]] like FPS, Ping, and Slots.
|Users| World defined attributes for a [[Type:User|User (Type)]] like FPS, Ping, and Slots.
|Utility| (De)multiplexing, Binary (de)composition, [[:Category:Type|Type's]] Color/ID, GUID, and pick random.
|Variables| Variables, DynamicVariables, Cloud Variables.
|Variables| Variables, DynamicVariables, Cloud Variables.
|World| World attributes like URI/URL, visibility, name, focusing and opening worlds.
}}


== Misc Nodes ==


{{Table ProtoFluxCategoryNodes
|Function Proxy||A type of node that allows for calling of [[Sync Delegates]] and returns data.
|Method Proxy||A type of node that allows for calling of [[Sync Delegates]].
}}
}}
== Custom Nodes ==
Custom nodes are an extention of the functionality within [[ProtoFlux]] and by proxy [[Resonite]]. They enable the [[User|user]] to do more things with the system and add customizability to the way they code. There is currently two types of custom nodes: Officially Supported Custom Nodes, and Community-Based Custom Nodes.
=== Official Custom Node Support ===
Currently, Resonite has no official custom node support. However, it is planned, according to [https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/564 Issue #564] & [https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/962 Issue #962], there will be a way to create, pack, and edit/update the custom nodes.
=== Community Custom Node Support ===
The community has also made various tools to emulate the functionality of what custom nodes would look and feel like in Resonite. There is the [[Community ProtoFlux Library|Community ProtoFlux Library]] that catalogs and keeps track of the community made tools and custom nodes. These nodes would technically be UGC (User Generated Content) and is not up to the same scrutiny as the official nodes, so beware of any issues or bugs from the nodes you use here in your projects, and contact the node creator to let them know of any bugs you find to help them update their custom nodes.

Latest revision as of 21:17, 22 August 2024

The different ProtoFlux nodes in the ProtoFlux Node Browser as seen in Resonite.

See also: Alphabetical list of all nodes

Editors See also: Example ProtoFlux Node for making pages

Main Nodes

Subcategories
Category Summary
Actions Writing, shifting, and animating values.
Assets Loading, attaching, reading, and sampling assets.
Audio Playing Entire Sounds.
Avatars Working with User body parts, and Anchors.
Casts Casting Nullables/Values into Objects.
Colors Colors, ColorChannels, Color Math.
Components Getting/Setting an IComponent's Enabled state, Get User From Component.
Core Core nodes like displays, inputs, and casting values from float3 to float2.
Debug Useful for telling you where, what, or how fast something is. Like a debug menu.
Devices Keyboards, haptics, display, and mouse input/output interaction.
Enums Converting to/from and cycling Enums.
Experimental Bleeding edge flux nodes that are in alpha phase. Here be dragons.
Flow Async, events, triggers, program flow control.
Interaction Events regarding interactions with UI's/Objects/buttons/grabbables/context menu.
Locomotion Reading, changing, and installing a user's locomotion module.
Math Complex math nodes like Trigonometry, Geometry, Interpolation and too many more to list here.
Media Playing, Stopping, Scrubbing, and measuring playable media like AnimJ and Audio.
Network Twitch API, Websockets, GET and POST Web requests, and URI/URL operations.
Nodes Packing/Unpacking nodes. What most community made node managers use.
Operators Simple math types like adding, dividing, (un)packing, vectors, boolean logic gates.
Physics Collisions, All Character Physics, Raycasting. (Not to be confused with the Mathematical Physics Category)
References Getting Field pointers, Spawned User, RefIDs, and an Element's Removal Status.
Rendering Baking, flashing meshes, rendering camera views, and raycast color sampling.
Security User Join Verifying.
Slots Adding, Removing, Reading, Traversing, and getting info on Slots in the world.
Strings Many Different functions for Modifying Strings and Characters.
Time Working with delta time, DateTime, TimeSpan, and TimeZones.
Tools Equipping, Using, and reading Tool usage or lack thereof.
Transform Working with Coordinate spaces, directions, and bounding boxes.
Undo Adding Undo actions for a User for one or more world changes.
Users World defined attributes for a User (Type) like FPS, Ping, and Slots.
Utility (De)multiplexing, Binary (de)composition, Type's Color/ID, GUID, and pick random.
Variables Variables, DynamicVariables, Cloud Variables.
World World attributes like URI/URL, visibility, name, focusing and opening worlds.

Misc Nodes

Nodes
Node Name Description
Function Proxy A type of node that allows for calling of Sync Delegates and returns data.
Method Proxy A type of node that allows for calling of Sync Delegates.

Custom Nodes

Custom nodes are an extention of the functionality within ProtoFlux and by proxy Resonite. They enable the user to do more things with the system and add customizability to the way they code. There is currently two types of custom nodes: Officially Supported Custom Nodes, and Community-Based Custom Nodes.

Official Custom Node Support

Currently, Resonite has no official custom node support. However, it is planned, according to Issue #564 & Issue #962, there will be a way to create, pack, and edit/update the custom nodes.

Community Custom Node Support

The community has also made various tools to emulate the functionality of what custom nodes would look and feel like in Resonite. There is the Community ProtoFlux Library that catalogs and keeps track of the community made tools and custom nodes. These nodes would technically be UGC (User Generated Content) and is not up to the same scrutiny as the official nodes, so beware of any issues or bugs from the nodes you use here in your projects, and contact the node creator to let them know of any bugs you find to help them update their custom nodes.

Subcategories

This category has the following 36 subcategories, out of 36 total.

P

Pages in category "ProtoFlux"

The following 2 pages are in this category, out of 2 total.