ProtoFlux:Continuously Changing Relay: Difference between revisions

From Resonite Wiki
m ProbablePrime moved page Continuously Changing Relay (ProtoFlux) to ProtoFlux:Continuously Changing Relay: Creating protoflux Namespace
m links
(2 intermediate revisions by 2 users not shown)
Line 15: Line 15:
|}}
|}}


This is a value/object passthrough node that is marked with the ContinuouslyChanging attribute, which means that the output of this node will be evaluated every engine update cycle, which roughly equivalates to every frame.
The '''Continuously Changing Relay''' node is a utility node marked with the [[ContinuouslyChanging]] attribute. This causes the entire node group that the node is connected to be evaluated every [[engine update]] when paired with a [[Type:IExecutionChangeListener|listener]] node, such as a [[drive]] or [[ProtoFlux:Display|display]].


This node can cause lag / low performance if used excessively. Mostly you should try to avoid using it.
This node is unnecessary for most use cases, but it can still find usefulness when working with [[ProtoFlux:Store|stores]], which do not propagate change signals due to existing outside the [[FrooxEngine]] [[data model]]. Additionally, non-ContinuouslyChanging nodes that can have their outputs change without any change in inputs (such as a [[ProtoFlux:Find Child By Name|Find Child By Name]] node) can benefit from this relay if the output is needed to drive something that otherwise isn't part of a ContinuousChanges node group.
 
Use the Value variant of the node for Value Types such as Int, Bool, Float.
 
Use the Object variant of the node for Object Types such as Slot, User, String.


== Inputs ==
== Inputs ==
Line 27: Line 23:
=== Input (Generic) ===
=== Input (Generic) ===


I am an input that can be of any type.
The output of a previous node that should be continuously polled every engine update.
<br>Example inputs: [[Type:Bool|Bool]], [[Type:Int|Int]], [[Type:Slot|Slot]]


== Outputs ==
== Outputs ==
Line 34: Line 29:
=== * (Generic) ===
=== * (Generic) ===


I am an output that evaluates continuously!
The same output, yet continuously changing for future listeners to utilize.


== Examples ==
== Examples ==
Put example pics here in a gallery.


[[Category:ProtoFlux:Utility]]
[[Category:ProtoFlux:Utility]]

Revision as of 15:24, 9 April 2025

Continuous Relay
Input
*
Utility

The Continuously Changing Relay node is a utility node marked with the ContinuouslyChanging attribute. This causes the entire node group that the node is connected to be evaluated every engine update when paired with a listener node, such as a drive or display.

This node is unnecessary for most use cases, but it can still find usefulness when working with stores, which do not propagate change signals due to existing outside the FrooxEngine data model. Additionally, non-ContinuouslyChanging nodes that can have their outputs change without any change in inputs (such as a Find Child By Name node) can benefit from this relay if the output is needed to drive something that otherwise isn't part of a ContinuousChanges node group.

Inputs

Input (Generic)

The output of a previous node that should be continuously polled every engine update.

Outputs

* (Generic)

The same output, yet continuously changing for future listeners to utilize.

Examples