Description

The Envelope template allows you to control HALion's multi-stage zone envelopes. The template contains a combination of controls, for example, to control the zoom level or values of the selected node. These controls are connected using UI parameters, and they must be part of the template and must use the UI variables as they are defined in the delivered template.


The envelope view that is used in the template cannot be created as an independent control directly on the macro page. If certain controls are not required or wanted, for example, no editing of values for the selected node, these controls can be removed for a user envelope template.



On this page:


Template Properties

PropertyDescription
Size

Attach
Tooltip
TemplateThe referenced template.
Env PointsConnect this to the Envelope Points parameter of the envelope (zone parameter).
ModeConnect this to the Mode parameter of the envelope (zone parameter).
SyncConnect this to the Sync parameter of the envelope (zone parameter).
TripletConnect this to the Triplet parameter of the envelope (zone parameter).
Loop StartConnect this to the LoopStart parameter of the envelope (zone parameter).
Loop EndConnect this to the LoopEnd parameter of the envelope (zone parameter).
SustainConnect this to the SustainIndex parameter of the envelope (zone parameter).
Playback PosConnect this to the PlaybackPos parameter of the envelope (zone parameter).

Components and how they are used

UI Variables

These variables are defined to allow the communication between the envelope view and other controls in the template.

VariableDescriptionTypeRange
indexIndex of the selected nodeintegern.a.
levelLevel of the selected nodefloat0 - 100
timeTime of the selected notefloat0 - 30000
curveCurvature of the selected note segmentfloat-10 - 10
beatTime in beatsrationaln.a.
syncnoteSpecifies the note gridstringlist1/1, 1/2, 1/4, 1/8, 1/16, 1/32, 1/64, 1/128, 1/256

Controls and Sub Templates

ItemDescription
Scroll & Zoom

This group view contains several controls which allow you to access the scroll and zoom functionalities of the envelope.

  • Scrollbar: A range slider which needs to be configured with Low Value = "@ScrollMin" and High Value = "@ScrollMax".
  • Scrollbar Background: An image that delivers the background bitmap for the scrollbar.
  • Zoom Out: A switch that allows you to trigger the zoom out function of the envelope. Its value must be set to "@ZoomOut".
  • Zoom In: A switch that allows you to trigger the zoom in function of the envelope. Its value must be set to "@ZoomIn".
  • Zoom Alternate: A switch that allows you to switch between the last zoom state and a full zoom out. Its value must be set to "@StateA".
  • Zoom1: A switch that allows you to call zoom state 1 of the envelope. Its value must be set to "@State1".
  • Zoom2: A switch that allows you to call zoom state 2 of the envelope. Its value must be set to "@State2".
  • Zoom3: A switch that allows you to call zoom state 3 of the envelope. Its value must be set to "@State3".
Edit

This group view contains several controls which allow to control the selected node, as well as some edit options of the envelope.

  • Time: A stack with two edit controls to either set the time of a node in ms or beats. Its value is exported as "Sync", to allow a connection to the Sync parameter of the HALion engine. The "Time ms" control is set to Value = "@time", the "Time Beat" control is set to Value = "@beat".
  • Mode: A menu template, with an exported value (Mode) that can be connected to the Mode parameter of the envelope in the HALion zone.
  • Sync: A switch template, with an exported value (Sync) that can be connected to the sync parameter of the envelope in the HALion zone.
  • Fixed: A switch template, with a value set to "@fixed", which represents an integer variable defined under "Variables". This way, you can control the HALion UI parameter "Fixed" which is no Zone parameter.
  • Curve: An edit template, with a value set to "@curve", which allows you to control the curve setting of the selected node.
  • Level: An edit template, with a value set to "@level", which allows you to control the level setting of the selected node.
  • Index: An edit template, with a value set to "@index", which allows you to specify which node is selected.
  • SyncNote: A disable view, with an exported value (Sync) that can be connected to the Sync parameter of the envelope in the HALion zone. If Sync is active, the contained templates can be used to set Sync Note and Triplet.
    • Sync Note: A menu template, with a value set to "@syncnote", which represents a stringlist variable defined under "Variables". This way, you can control the HALion UI parameter "Sync Note" which is no Zone parameter.
    • Triplet: A switch template, with an exported value (Triplet), which can be connected to the Triplet parameter of the envelope in the HALion zone.
Envelope ViewProvides a graphical envelope editor. Several of its parameters are exported to be connected on a template instance level to the HALion engine (Value, Mode, Sync, Triplet, Loop Start/End, Sustain, Play Pos). Other parameters are set to the same internal variables as the controls mentioned above, to allow for communication between the envelope view and the connected controls (SyncNote, Fixed, Index, Level, Time, Beat, Curve).
Env BackgroundThis image delivers the background bitmap for the envelope.

Envelope View

Properties

In addition to standard properties like size, position, etc., the envelope view provides a number of properties and colors to customize its appearance and behavior.

PropertyDescription
NameThe name of the envelope view.
Size
Attach
Tooltip
Style
  • Bipolar: Activate this style for bipolar envelopes like pitch or pan.
  • Scrollbar: If this is active, the view can be scrolled and zoomed.
  • Cross: Shows a cross line when editing nodes.
  • Grid: Shows a time grid.
  • Play Pos: Shows the current playback position on the curve.
  • Nodes: Shows nodes.
  • Add/Rem: Allows adding and removing of nodes. Deactivate this option to provide an ADSR envelope with a fixed number of nodes, for example.
  • Sel Nod: Allows you to select a node.
  • Sustain: Shows a sustain line. For this, a mode with sustain must be active.
  • Loop: Shows a graphical frame overlay for the loop region. For this, the Envelope mode must be switched to Loop.
  • Free End: Allows to ...
Env ValueExported to the template (see template parameters above).
ModeExported to the template (see template parameters above).
SyncExported to the template (see template parameters above).
TripletExported to the template (see template parameters above).
SyncNoteConnected using @syncnote variable.
FixedConnected using @fixed variable.
ToolConnected using @tool variable. Only for Shaper mode, therefore use Envelope Shaper template  (Minimum HALion7 )
ShapeSaveConnected using @shapesave variable. Only for Shaper mode, therefore use Envelope Shaper template  (Minimum HALion7 )
ShapeSelectConnected using @shapeselect variable. Only for Shaper mode, therefore use Envelope Shaper template  (Minimum HALion7 )
ShapeConnected using @shape variable. Only for Shaper mode, therefore use Envelope Shaper template  (Minimum HALion7 )
IndexConnected using @index variable.
LevelConnected using @level variable.
TimeConnected using @time variable.
BeatConnected using @beat variable.
CurveConnected using @curve variable.
Loop StartExported to the template (see template parameters above).
Loop EndExported to the template (see template parameters above).
SustainExported to the template (see template parameters above).
Play PosExported to the template (see template parameters above).
Min XThe minimal horizontal zoom value.
Max XThe maximum horizontal zoom value.
Min YThe minimal vertical zoom value.
Max YThe maximum vertical zoom value.

Colors

PropertyDescription
LineCurve line
Fill

Fill color of the nodes

FillSelectedFill color of selected nodes (only used if "Sel Node" style is active)

FrameFocus

Focused node frame
FrameNode frame
HoverHover frame
SustainSustain line (only used if "Sustain" style is active)
SyncedDot color of nodes that are snapped to a sync grid position (only used if Sync is active)
Crosshair

Node edit crosshair (only used if "Crosshair" style is active)

Playback

Playback position indicator

BorderOverall border
Grid VMain vertical grid (only used if "Grid" style is active)
Grid V2Additional vertical fine grid (only used if "Grid" style is active)
Grid HMain horizontal grid (only used if "Grid" style is active)
Grid H2Additional horizontal fine grid (only used if "Grid" style is active)
FontScale font
SelFrameSelection area frame
LoopLoop area
LoopFrameLoop area frame
ZoomZoom area
ZoomFrameZoom area frame