World Builder – Signals – Portals United https://www.portalsunited.com:443 Wed, 02 Jul 2025 15:03:02 +0000 en-US hourly 1 https://wordpress.org/?v=6.8.2 https://www.portalsunited.com:443/wp-content/uploads/2024/10/cropped-pu-favicon-alt-32x32.png World Builder – Signals – Portals United https://www.portalsunited.com:443 32 32 World Builder – Signals Manager https://www.portalsunited.com:443/docs/world-builder-signals/ Tue, 11 Mar 2025 15:23:56 +0000 https://www.portalsunited.com:443/?post_type=docs&p=155 This is the place where you can manage all your signals, which serve as transmitters of values between components of your location. You can create new signals or modify existing ones.

See also:
World Builder – What are signals?

]]>
World Builder – What are signals? https://www.portalsunited.com:443/docs/world-builder-what-are-signals/ https://www.portalsunited.com:443/docs/world-builder-what-are-signals/#respond Thu, 13 Mar 2025 10:10:06 +0000 https://www.portalsunited.com:443/?post_type=docs&p=205 General

Signals are carriers and transmitters of values. Objects connected to a signal can send an updated version of a value. For example, a slider connected to a sending signal will send a decimal number between 0 and 1 every time it is dragged. Another object, for example a display, can receive this signal to show the value on a screen.

A signal’s value can also be set in the logic editor, and nodes of the logic editor can react to changes in a signal’s value.

Properties

Start Value

Every signal has a start value, that is set when the location is loaded in Portal Hopper.

Always Inform

If “always inform” is set to true, receivers of the signal always detect an updated signal value, even when the new value is the same as the old one.

If “always inform is set to false, receivers of the signal only detect an updated signal value, if the the new value is different from the old one.

Signal Types

True/False (Boolean)

Signals of this type can only take two values: true and false. A typical use case of true/false signals are buttons.

1 2 3 (Integer)

Signals of this type can take any integer number, also negative ones.

3.141 (Float)

Signals of this type can take any decimal number, also negative ones.

Text (String)

Signals of this type can take text as value. The information is stored as a string, meaning any combination of characters that C# strings support can be the value of a text signal.

Object

An object signal’s value can be any object in the location. Typical use cases of object signals are trigger zones and snap fields.

]]>
https://www.portalsunited.com:443/docs/world-builder-what-are-signals/feed/ 0
World Builder – How to create signals? https://www.portalsunited.com:443/docs/world-builder-how-to-create-signals/ https://www.portalsunited.com:443/docs/world-builder-how-to-create-signals/#respond Thu, 13 Mar 2025 11:24:02 +0000 https://www.portalsunited.com:443/?post_type=docs&p=207 Quick Signal Creation

If you open the inspector of an object in your location, some entries will have signal connector buttons. There are two types, one for sending signals (plug symbol) and one for receiving signals (megaphone symbol). Clicking on such a button opens a panel showing all the existing signals that match the required signal type. You can now create a new signal using the plus button. Then select all signals that you want to connect and confirm. The signal connector button will show up red if at least one signal is connected.

A signal created through quick signal creation will have a generic name, a default start value and the “always inform” property set to false. You can make changes to your signal later on in the signals manager.

Creation and Modification in Signals Manager

Use the bottom line in the signals manager to create new signals. You need to give your signal a name and a type. Then set the value of the “always inform” property, decide on a start value and click “Create”. Your new signal will then appear in the list of signals.

You can modify existing signals directly in the list. However, the type cannot be changed later on. In that case, you need to delete your signal and create a new one.

]]>
https://www.portalsunited.com:443/docs/world-builder-how-to-create-signals/feed/ 0
World Builder – How to use signals in location view? https://www.portalsunited.com:443/docs/world-builder-how-to-use-signals-in-location-view/ https://www.portalsunited.com:443/docs/world-builder-how-to-use-signals-in-location-view/#respond Thu, 13 Mar 2025 12:06:26 +0000 https://www.portalsunited.com:443/?post_type=docs&p=209 Example: Button and Light Source

First, connect a signal called “Light switch” to the sending signal connector (megaphone symbol) in the inspector of a button object. Change the Button Mode to “Toggle”.

Then, connect the same signal to the receiving signal connector (plug symbol) in the visibility inspector of your light object.

If the connecting signal is set up correctly, you can now turn the light on and off using the button when your location is loaded in Portal Hopper.

]]>
https://www.portalsunited.com:443/docs/world-builder-how-to-use-signals-in-location-view/feed/ 0
World Builder – How to use signals in logic editor? https://www.portalsunited.com:443/docs/world-builder-how-to-use-signals-in-logic-editor/ https://www.portalsunited.com:443/docs/world-builder-how-to-use-signals-in-logic-editor/#respond Thu, 13 Mar 2025 12:34:09 +0000 https://www.portalsunited.com:443/?post_type=docs&p=211 Signal Value Nodes

Drag a signal from the list of signals on the lower right side of the logic editor into the grid. A context menu will appear, allowing you to choose whether to create a value node or a callback node. Select “Value Node.”

In the example below, the “Light Switch” signal will be set to true when the location is loaded in Portal Hopper.

Generally, the “Set” flow input will update the value of the signal. The new value is pulled from any node that is connected to the value input.

Instead of a boolean node, you could use another signal’s value node to set the value of the “Light switch” signal (see image below). In this way, you can also use signals as variables.

Signal Callback Nodes

Drag a signal from the list of signals on the lower right side of the logic editor into the grid. A context menu will appear, allowing you to choose whether to create a value node or a callback node. Select “Callback Node.”

Whenever the signal’s value is updated, the “On Value Changed” output of the callback node will forward the flow to the connected node. In the example below, the “Light Switch” signal’s new value will change the visibility of the Light object.

Keep in mind: When a signal’s value is updated and its “always inform” property is false, “On Value Changed” will only trigger a flow, when the new value is different from the old one. On the other hand, if “always inform” is true, “On Value Changed will always trigger a flow.

See also:
World Builder – What are signals?
World Builder – How to use signals in location view?

]]>
https://www.portalsunited.com:443/docs/world-builder-how-to-use-signals-in-logic-editor/feed/ 0
World Builder – Input Signal Type https://www.portalsunited.com:443/docs/input-signal-node-type/ https://www.portalsunited.com:443/docs/input-signal-node-type/#respond Wed, 02 Jul 2025 14:59:27 +0000 https://www.portalsunited.com:443/?post_type=docs&p=1810 As the Portal Hopper is built on top of the new Input System, you can have access to this functionality via this Signal Type. The Input system uses strings to describe device attributes such as controller buttons or keyboard keys. NOTE: Our current implementation treats any input as a button, so no analog values can be accessed.

To read the A button from the right hand controller, create a signal of type input and enter the string <XRController>{RightHand}/{PrimaryButton}

Here are some more useful examples:
Button A: <XRController>{RightHand}/{PrimaryButton}
Button B: <XRController>{RightHand}/{secondaryButton
Button X: <XRController>{LeftHand}/{PrimaryButton}
Button Y: <XRController>{LeftHand}/{SecondaryButton}
Keyboard A:
<Keyboard>/a

Some control strings require modifiers such as Shift or Control. These modifiers are appended to the string using a ‘|’ (Pipe) symbol. For instance, to define Ctrl-A, use <Keyboard>/a|/<Keyboard>/ctrl
You can add up to 2 modifiers to the string.

Please refer to the Unity manuals for input mappings for XR devices.

]]>
https://www.portalsunited.com:443/docs/input-signal-node-type/feed/ 0