# Knob.xml [[Go back to index]](..\..\..\Template_Explorer.html) Asobo\(Generic\)Complex\\Knob.xml --------------------------------- Source XML <ModelBehaviors> <!-- Finite rotating object, using incrementing and decrementing events, anim based on simvar. Required parameter: ANIM\_SIMVAR ANIM\_SIMVAR\_UNITS ANIM\_SIMVAR\_MIN ANIM\_SIMVAR\_MAX ANIM\_NAME CLOCKWISE\_CODE ANTICLOCKWISE\_CODE --> <Template Name = "ASOBO\_GT\_Knob\_Finite\_Simvar"> <DefaultTemplateParameters> <ANIM\_SIMVAR\_UNITS>percent</ANIM\_SIMVAR\_UNITS> <ANIM\_SIMVAR\_MIN>0</ANIM\_SIMVAR\_MIN> <ANIM\_SIMVAR\_MAX>100</ANIM\_SIMVAR\_MAX> <EXTRA\_INTERACTION/> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <ANIMTIP\_0></ANIMTIP\_0> <ANIMTIP\_1></ANIMTIP\_1> <ANIM\_LAG>100</ANIM\_LAG> <ANIM\_WRAP>False</ANIM\_WRAP> <!-- Should not be overriden except from generic template --> </DefaultTemplateParameters> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE> (A:\#ANIM\_SIMVAR\#, \#ANIM\_SIMVAR\_UNITS\#) \#ANIM\_SIMVAR\_MIN\# - \#ANIM\_SIMVAR\_MAX\# \#ANIM\_SIMVAR\_MIN\# - / 100 \* </ANIM\_CODE> </UseTemplate> <!-- <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"/> --> <UseTemplate Name = "ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\#"> <CLOCKWISE\_CODE> \#CLOCKWISE\_CODE\# </CLOCKWISE\_CODE> <ANTICLOCKWISE\_CODE> \#ANTICLOCKWISE\_CODE\# </ANTICLOCKWISE\_CODE> </UseTemplate> <Condition Valid="WWISE\_EVENT"> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"> </UseTemplate> </Condition> </Template> <!-- Finite rotating object, using incrementing and decrementing events, anim based on code. Required parameter: ANIM\_CODE ANIM\_NAME CLOCKWISE\_CODE ANTICLOCKWISE\_CODE --> <Template Name = "ASOBO\_GT\_Knob\_Finite\_Code"> <DefaultTemplateParameters> <EXTRA\_INTERACTION/> <COUNT>10</COUNT> <WRAP>False</WRAP> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <ANIMTIP\_0></ANIMTIP\_0> <ANIMTIP\_1></ANIMTIP\_1> <ANIM\_LAG>100</ANIM\_LAG> <!-- Should not be overriden except from generic template --> <Condition Valid="PUSH"> <True> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> </True> </Condition> </DefaultTemplateParameters> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_WRAP>\#WRAP\#</ANIM\_WRAP> </UseTemplate> <Condition Valid="PUSH"> <True> <Update Frequency = "10"> (O:\_ButtonPressed) 0 > if{ \#ANIM\_LENGTH\_PUSH\# (>O:\_PushAnimVar) } els{ (O:\_PushAnimVar) \#ANIM\_LENGTH\_PUSH\# 0.7 \* - 0 max (>O:\_PushAnimVar) } </Update> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <ANIM\_CODE>(O:\_PushAnimVar)</ANIM\_CODE> </UseTemplate> </True> </Condition> <Condition Check="WWISE\_EVENT"> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"> </UseTemplate> </Condition> <UseTemplate Name = "ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\#"> </UseTemplate> </Template> <!-- Finite rotating object, with no effect beyond animation. Required parameter: KNOB\_NAME --> <Template Name = "ASOBO\_GT\_Knob\_Finite\_Dummy"> <DefaultTemplateParameters> <ANIM\_NAME>\#KNOB\_NAME\#</ANIM\_NAME> <NODE\_NAME>\#KNOB\_NAME\#</NODE\_NAME> <KNOB\_POSITION\_VAR\_TYPE>O</KNOB\_POSITION\_VAR\_TYPE> <KNOB\_POSITION\_VAR>\#KNOB\_NAME\#</KNOB\_POSITION\_VAR> <KNOB\_SPEED>4</KNOB\_SPEED> </DefaultTemplateParameters> <Component ID="\#KNOB\_NAME\#" Node="\#NODE\_NAME\#"> <Condition Check="INIT\_VALUE"> <Update Once="True"> \#INIT\_VALUE\# (>\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#) </Update> </Condition> <UseTemplate Name="ASOBO\_GT\_Knob\_Finite\_Code"> <PART\_ID>\#KNOB\_NAME\#</PART\_ID> <ANIM\_LENGTH>100</ANIM\_LENGTH> <ANIM\_CODE>(\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#)</ANIM\_CODE> <CLOCKWISE\_CODE>(\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#) \#KNOB\_SPEED\# + 100 min (>\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#)</CLOCKWISE\_CODE> <ANTICLOCKWISE\_CODE>(\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#) \#KNOB\_SPEED\# - 0 max (>\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#)</ANTICLOCKWISE\_CODE> </UseTemplate> <Condition Check="WWISE\_EVENT"> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"/> </Condition> </Component> </Template> <!-- Finite rotating object, using incrementing and decrementing events, anim based on simvar. Also has a switch interaction when clicking on the center. Required parameter: ANIM\_SIMVAR\_KNOB ANIM\_SIMVAR\_UNITS\_KNOB ANIM\_SIMVAR\_SWITCH ANIM\_SIMVAR\_UNITS\_SWITCH ANIM\_NAME\_SWITCH ANIM\_NAME\_KNOB CLOCKWISE\_CODE ANTICLOCKWISE\_CODE LEFT\_SINGLE\_CODE --> <Template Name = "ASOBO\_GT\_Knob\_Finite\_Switch"> <DefaultTemplateParameters> <ANIM\_SIMVAR\_SCALE\_KNOB>1</ANIM\_SIMVAR\_SCALE\_KNOB> <ANIM\_SIMVAR\_MAX>100</ANIM\_SIMVAR\_MAX> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ANIM\_LENGTH\_SWITCH>100</ANIM\_LENGTH\_SWITCH> <ANIM\_SIMVAR\_SCALE\_SWITCH>1</ANIM\_SIMVAR\_SCALE\_SWITCH> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <ANIM\_WRAP>False</ANIM\_WRAP> <USE\_SIMVAR\_FOR\_BUTTON\_ANIM>True</USE\_SIMVAR\_FOR\_BUTTON\_ANIM> </DefaultTemplateParameters> <Condition Valid="USE\_SIMVAR\_FOR\_BUTTON\_ANIM"> <True> <UseTemplate Name = "ASOBO\_GT\_Anim\_Sim"> <ANIM\_NAME>\#ANIM\_NAME\_SWITCH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_SWITCH\#</ANIM\_LENGTH> <ANIM\_SIMVAR>\#ANIM\_SIMVAR\_SWITCH\#</ANIM\_SIMVAR> <ANIM\_SIMVAR\_SCALE>\#ANIM\_SIMVAR\_SCALE\_SWITCH\#</ANIM\_SIMVAR\_SCALE> <ANIM\_SIMVAR\_UNITS>\#ANIM\_SIMVAR\_UNITS\_SWITCH\#</ANIM\_SIMVAR\_UNITS> <Condition Check="ANIM\_LAG\_SWITCH"> <ANIM\_LAG>\#ANIM\_LAG\_SWITCH\#</ANIM\_LAG> </Condition> <ANIM\_WRAP>False</ANIM\_WRAP> </UseTemplate> </True> <False> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>\#ANIM\_CODE\_SWITCH\#</ANIM\_CODE> <ANIM\_NAME>\#ANIM\_NAME\_SWITCH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_SWITCH\#</ANIM\_LENGTH> <Condition Check="ANIM\_LAG\_SWITCH"> <ANIM\_LAG>\#ANIM\_LAG\_SWITCH\#</ANIM\_LAG> </Condition> </UseTemplate> </False> </Condition> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_SWITCH\#</ANIM\_NAME> </UseTemplate> <Condition Valid="USE\_SIMVAR\_FOR\_KNOB\_ANIM"> <True> <UseTemplate Name = "ASOBO\_GT\_Knob\_Finite\_Simvar"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_SIMVAR>\#ANIM\_SIMVAR\_KNOB\#</ANIM\_SIMVAR> <ANIM\_SIMVAR\_UNITS>\#ANIM\_SIMVAR\_UNITS\_KNOB\#</ANIM\_SIMVAR\_UNITS> <ANIM\_SIMVAR\_SCALE>\#ANIM\_SIMVAR\_SCALE\_KNOB\#</ANIM\_SIMVAR\_SCALE> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> <Condition Check="ANIM\_LAG\_KNOB"> <ANIM\_LAG>\#ANIM\_LAG\_KNOB\#</ANIM\_LAG> </Condition> </UseTemplate> </True> <False> <UseTemplate Name = "ASOBO\_GT\_Knob\_Finite\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_CODE>\#KNOB\_ANIM\_CODE\#</ANIM\_CODE> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> <Condition Check="ANIM\_LAG\_KNOB"> <ANIM\_LAG>\#ANIM\_LAG\_KNOB\#</ANIM\_LAG> </Condition> </UseTemplate> </False> </Condition> </Template> <!-- Infinite rotating object, using incrementing and decrementing events, anim based on iteraction. Required parameter: ANIM\_NAME CLOCKWISE\_CODE ANTICLOCKWISE\_CODE --> <Template Name = "ASOBO\_GT\_Knob\_Infinite"> <Parameters Type="Default"> <ROTATION\_SPEED>10</ROTATION\_SPEED> <EXTRA\_INTERACTION/><!-- Should not be overriden except from generic template --> <CLOCKWISE\_CONDITION> 1 </CLOCKWISE\_CONDITION> <ANTICLOCKWISE\_CONDITION> 1 </ANTICLOCKWISE\_CONDITION> <ANIM\_LAG>100</ANIM\_LAG> </Parameters> <Parameters Type="Override"> <Condition> <Test> <Or> <Arg Valid="ANIM\_VAR\_HANDLED\_SEPARATELY"/> <Arg Valid="NO\_KNOB\_ANIM\_VAR\_UPDATE"/> </Or> </Test> <True> <INC\_ANIM\_VAR\_CODE/> <DEC\_ANIM\_VAR\_CODE/> </True> <False> <INC\_ANIM\_VAR\_CODE>(O:\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>O:\_KnobAnimVar)</INC\_ANIM\_VAR\_CODE> <DEC\_ANIM\_VAR\_CODE>(O:\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>O:\_KnobAnimVar)</DEC\_ANIM\_VAR\_CODE> </False> </Condition> </Parameters> <Condition Valid="ANIM\_HANDLED\_SEPARATELY"> <False> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <Condition Check="OVERRIDE\_ANIM\_CODE"> <True> <ANIM\_CODE>\#OVERRIDE\_ANIM\_CODE\#</ANIM\_CODE> </True> <False> <ANIM\_CODE>(O:\_KnobAnimVar) 3.6 / </ANIM\_CODE> <ANIM\_WRAP>True</ANIM\_WRAP> </False> </Condition> </UseTemplate> <Condition Check="WWISE\_EVENT"> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"> </UseTemplate> </Condition> </False> </Condition> <UseTemplate Name = "ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\#"> <Condition> <Test> <And> <Arg NotEmpty="CLOCKWISE\_CODE\_DEFAULT\_IM"/> <Arg NotEmpty="CLOCKWISE\_CODE\_DRAG\_IM"/> </And> </Test> <True> <CLOCKWISE\_CODE\_DEFAULT\_IM> \#CLOCKWISE\_CONDITION\# if{ \#INC\_ANIM\_VAR\_CODE\# \#CLOCKWISE\_CODE\_DEFAULT\_IM\# } </CLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM> \#CLOCKWISE\_CONDITION\# if{ \#INC\_ANIM\_VAR\_CODE\# \#CLOCKWISE\_CODE\_DRAG\_IM\# } </CLOCKWISE\_CODE\_DRAG\_IM> </True> <False> <Condition NotEmpty="CLOCKWISE\_CODE"> <CLOCKWISE\_CODE> \#CLOCKWISE\_CONDITION\# if{ \#INC\_ANIM\_VAR\_CODE\# \#CLOCKWISE\_CODE\# } </CLOCKWISE\_CODE> </Condition> </False> </Condition> <Condition> <Test> <And> <Arg NotEmpty="ANTICLOCKWISE\_CODE\_DEFAULT\_IM"/> <Arg NotEmpty="ANTICLOCKWISE\_CODE\_DRAG\_IM"/> </And> </Test> <True> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM> \#ANTICLOCKWISE\_CONDITION\# if{ \#DEC\_ANIM\_VAR\_CODE\# \#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\# } </ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM> \#ANTICLOCKWISE\_CONDITION\# if{ \#DEC\_ANIM\_VAR\_CODE\# \#ANTICLOCKWISE\_CODE\_DRAG\_IM\# } </ANTICLOCKWISE\_CODE\_DRAG\_IM> </True> <False> <Condition NotEmpty="ANTICLOCKWISE\_CODE"> <ANTICLOCKWISE\_CODE> \#ANTICLOCKWISE\_CONDITION\# if{ \#DEC\_ANIM\_VAR\_CODE\# \#ANTICLOCKWISE\_CODE\# } </ANTICLOCKWISE\_CODE> </Condition> </False> </Condition> </UseTemplate> </Template> <!-- Infinite rotating object, using incrementing and decrementing events, anim based on iteraction. Required parameter: ANIM\_NAME HITBOX\_UP\_NODE\_ID HITBOX\_DOWN\_NODE\_ID --> <Template Name = "ASOBO\_GT\_Knob\_Infinite\_SeparatedInteraction"> <DefaultTemplateParameters> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CURSOR\_LEFT>TurnLeft</CURSOR\_LEFT> <CURSOR\_RIGHT>TurnRight</CURSOR\_RIGHT> <CURSOR\_UP>UpArrow</CURSOR\_UP> <CURSOR\_DOWN>DownArrow</CURSOR\_DOWN> <LEFT\_SINGLE\_DOWN></LEFT\_SINGLE\_DOWN> <ANIM\_LAG>100</ANIM\_LAG> <HIGHLIGHT\_NODE\_ID>\#NODE\_ID\#</HIGHLIGHT\_NODE\_ID> <INVERT\_WHEEL\_INTERACTION>True</INVERT\_WHEEL\_INTERACTION> </DefaultTemplateParameters> <OverrideTemplateParameters> <Condition> <Test> <And> <Arg NotEmpty="CLOCKWISE\_CODE\_DEFAULT\_IM"/> <Arg NotEmpty="CLOCKWISE\_CODE\_DRAG\_IM"/> </And> </Test> <True> <CLOCKWISE\_CODE\_DEFAULT\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#CLOCKWISE\_CODE\_DEFAULT\_IM\# </CLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#CLOCKWISE\_CODE\_DRAG\_IM\# </CLOCKWISE\_CODE\_DRAG\_IM> </True> <False> <CLOCKWISE\_CODE\_DEFAULT\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#CLOCKWISE\_CODE\# </CLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#CLOCKWISE\_CODE\# </CLOCKWISE\_CODE\_DRAG\_IM> </False> </Condition> <Condition> <Test> <And> <Arg NotEmpty="ANTICLOCKWISE\_CODE\_DEFAULT\_IM"/> <Arg NotEmpty="ANTICLOCKWISE\_CODE\_DRAG\_IM"/> </And> </Test> <True> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\# </ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#ANTICLOCKWISE\_CODE\_DRAG\_IM\# </ANTICLOCKWISE\_CODE\_DRAG\_IM> </True> <False> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#ANTICLOCKWISE\_CODE\# </ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#ANTICLOCKWISE\_CODE\# </ANTICLOCKWISE\_CODE\_DRAG\_IM> </False> </Condition> <LEFT\_SINGLE\_CODE\_OUTER>1 (>O:\_Interacting)</LEFT\_SINGLE\_CODE\_OUTER> <LEFT\_SINGLE\_CODE\_INNER>1 (>O:\_Interacting)</LEFT\_SINGLE\_CODE\_INNER> <LEFT\_LEAVE\_CODE\_OUTER>0 (>O:\_Interacting)</LEFT\_LEAVE\_CODE\_OUTER> <LEFT\_LEAVE\_CODE\_INNER>0 (>O:\_Interacting)</LEFT\_LEAVE\_CODE\_INNER> <NO\_PUSH\_PULL\_LOCK>True</NO\_PUSH\_PULL\_LOCK> <CURSOR\_LEFT/> <CURSOR\_RIGHT/> </OverrideTemplateParameters> <Component ID="\#NODE\_ID\#" Node="\#NODE\_ID\#"> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(I:\#NODE\_ID\#\_KnobAnimVar) 3.6 / </ANIM\_CODE> <ANIM\_WRAP>True</ANIM\_WRAP> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"> </UseTemplate> </Component> <Component ID="\#HITBOX\_UP\_NODE\_ID\#" Node="\#HITBOX\_UP\_NODE\_ID\#"> <UseTemplate Name = "ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle"> <Condition Check="SWITCH\_DIRECTION" Match="Vertical"> <CURSOR>\#CURSOR\_UP\#</CURSOR> <CODE\_UP>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_UP> <CODE\_DN>\#CLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_DN> <CODE\_LEFT>0</CODE\_LEFT> <CODE\_RIGHT>0</CODE\_RIGHT> </Condition> <Condition Check="SWITCH\_DIRECTION" Match="Horizontal"> <CURSOR>\#CURSOR\_LEFT\#</CURSOR> <CODE\_UP>0</CODE\_UP> <CODE\_DN>0</CODE\_DN> <CODE\_LEFT>\#CLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_LEFT> <CODE\_RIGHT>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_RIGHT> </Condition> <Condition Valid="INVERT\_WHEEL\_INTERACTION"> <True> <CLOCKWISE\_CODE\_DEFAULT\_IM>\#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\#</CLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM>\#CLOCKWISE\_CODE\_DEFAULT\_IM\#</ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CLOCKWISE\_CODE\_DRAG\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM>\#CLOCKWISE\_CODE\_DRAG\_IM\#</ANTICLOCKWISE\_CODE\_DRAG\_IM> </True> </Condition> <UPDATE\_DEFAULT\_IM> (O:\_Interacting) if{ \#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\# } </UPDATE\_DEFAULT\_IM> </UseTemplate> </Component> <Component ID="\#HITBOX\_DOWN\_NODE\_ID\#" Node="\#HITBOX\_DOWN\_NODE\_ID\#"> <UseTemplate Name = "ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle"> <Condition Check="SWITCH\_DIRECTION" Match="Vertical"> <CURSOR>\#CURSOR\_DOWN\#</CURSOR> <CODE\_UP>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_UP> <CODE\_DN>\#CLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_DN> <CODE\_LEFT>0</CODE\_LEFT> <CODE\_RIGHT>0</CODE\_RIGHT> </Condition> <Condition Check="SWITCH\_DIRECTION" Match="Horizontal"> <CURSOR>\#CURSOR\_RIGHT\#</CURSOR> <CODE\_UP>0</CODE\_UP> <CODE\_DN>0</CODE\_DN> <CODE\_LEFT>\#CLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_LEFT> <CODE\_RIGHT>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_RIGHT> </Condition> <Condition Valid="INVERT\_WHEEL\_INTERACTION"> <True> <CLOCKWISE\_CODE\_DEFAULT\_IM>\#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\#</CLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM>\#CLOCKWISE\_CODE\_DEFAULT\_IM\#</ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CLOCKWISE\_CODE\_DRAG\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM>\#CLOCKWISE\_CODE\_DRAG\_IM\#</ANTICLOCKWISE\_CODE\_DRAG\_IM> </True> </Condition> <UPDATE\_DEFAULT\_IM> (O:\_Interacting) if{ \#CLOCKWISE\_CODE\_DEFAULT\_IM\# } </UPDATE\_DEFAULT\_IM> </UseTemplate> </Component> </Template> <!-- Infinite rotating object, using incrementing and decrementing events, anim based on sim. Required parameter: ANIM\_NAME ANIM\_SIMVAR ANIM\_SIMVAR\_UNITS CLOCKWISE\_CODE ANTICLOCKWISE\_CODE --> <Template Name = "ASOBO\_GT\_Knob\_Infinite\_Sim"> <UseTemplate Name = "ASOBO\_GT\_Anim\_Sim"> <ANIM\_WRAP>True</ANIM\_WRAP> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_Interaction\_WheelAndContinuousLeft"> </UseTemplate> </Template> <!-- Knob with push button object. Required parameter: ANIM\_NAME\_PUSH ANIM\_NAME\_KNOB CLOCKWISE\_CODE ANTICLOCKWISE\_CODE LEFT\_SINGLE\_CODE --> <Template Name = "ASOBO\_GT\_Knob\_Infinite\_Push"> <DefaultTemplateParameters> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <ANIMREF\_ID>-1</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <OVERRIDE\_PUSH\_ANIM\_CODE>(O:\_PushAnimVar)</OVERRIDE\_PUSH\_ANIM\_CODE> </DefaultTemplateParameters> <Condition> <Test> <Or> <Arg Valid="ANIM\_HANDLED\_SEPARATELY"/> <Arg Valid="PUSH\_ANIM\_HANDLED\_SEPARATELY"/> </Or> </Test> <False> <Update Frequency = "10"> (O:\_ButtonPressed) 0 > if{ \#ANIM\_LENGTH\_PUSH\# (>O:\_PushAnimVar) } els{ (O:\_PushAnimVar) \#ANIM\_LENGTH\_PUSH\# 0.7 \* - 0 max (>O:\_PushAnimVar) } </Update> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <ANIM\_CODE>\#OVERRIDE\_PUSH\_ANIM\_CODE\#</ANIM\_CODE> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> </UseTemplate> </False> </Condition> <UseTemplate Name="ASOBO\_GT\_Knob\_Infinite"> <Condition Valid="ANIM\_HANDLED\_SEPARATELY"> <False> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> </False> </Condition> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> </UseTemplate> </Template> <!-- Knob with push button object. Required parameter: ANIM\_NAME\_PULL ANIM\_NAME\_KNOB CLOCKWISE\_CODE ANTICLOCKWISE\_CODE LEFT\_SINGLE\_CODE --> <Template Name = "ASOBO\_GT\_Knob\_Infinite\_Pull"> <DefaultTemplateParameters> <ANIM\_LENGTH\_PULL>100</ANIM\_LENGTH\_PULL> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <ANIMREF\_ID>-1</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <LEFT\_SINGLE\_CODE>(O:PullAnimVar) ! (>O:PullAnimVar)</LEFT\_SINGLE\_CODE> <ANIM\_CODE>(O:PullAnimVar)</ANIM\_CODE> </DefaultTemplateParameters> <UseTemplate Name = "ASOBO\_GT\_Anim"> <ANIM\_NAME>\#ANIM\_NAME\_PULL\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PULL\#</ANIM\_LENGTH> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PULL\#</ANIM\_NAME> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_Knob\_Infinite"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> </UseTemplate> </Template> <!-- Knob with push button object. Required parameter: ANIM\_NAME\_PULL ANIM\_NAME\_KNOB CLOCKWISE\_CODE ANTICLOCKWISE\_CODE LEFT\_SINGLE\_CODE --> <Template Name = "ASOBO\_GT\_Knob\_Infinite\_PushPull"> <Parameters Type="Default"> <ANIM\_LENGTH\_PUSHPULL>100</ANIM\_LENGTH\_PUSHPULL> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0</CENTER\_RADIUS> <ANIMREF\_ID>-1</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <WWISE\_EVENT\_PUSH>\#WWISE\_EVENT\_1\#</WWISE\_EVENT\_PUSH> <WWISE\_EVENT\_PULL>\#WWISE\_EVENT\_1\#</WWISE\_EVENT\_PULL> <WWISE\_EVENT\_BACK\_TO\_CENTER>\#WWISE\_EVENT\_2\#</WWISE\_EVENT\_BACK\_TO\_CENTER> <NORMALIZED\_TIME\_PUSH\_ON>0.6</NORMALIZED\_TIME\_PUSH\_ON> <NORMALIZED\_TIME\_PUSH\_OFF>0.9</NORMALIZED\_TIME\_PUSH\_OFF> <NORMALIZED\_TIME\_PULL\_ON>0.4</NORMALIZED\_TIME\_PULL\_ON> <NORMALIZED\_TIME\_PULL\_OFF>0.1</NORMALIZED\_TIME\_PULL\_OFF> </Parameters> <UseTemplate Name = "ASOBO\_GT\_Anim"> <ANIM\_NAME>\#ANIM\_NAME\_PUSHPULL\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSHPULL\#</ANIM\_LENGTH> <ANIM\_CODE>(O:IsPulled) if{ 0 } els{ 100 50 (O:IsPushed) ? }</ANIM\_CODE> </UseTemplate> <!-- PUSH sound event --> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSHPULL\#</ANIM\_NAME> <WWISE\_EVENT\_1>\#WWISE\_EVENT\_PUSH\#</WWISE\_EVENT\_1> <WWISE\_EVENT\_2>\#WWISE\_EVENT\_BACK\_TO\_CENTER\#</WWISE\_EVENT\_2> <NORMALIZED\_TIME\_1>\#NORMALIZED\_TIME\_PUSH\_ON\#</NORMALIZED\_TIME\_1> <NORMALIZED\_TIME\_2>\#NORMALIZED\_TIME\_PUSH\_OFF\#</NORMALIZED\_TIME\_2> </UseTemplate> <!-- PULL sound event --> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSHPULL\#</ANIM\_NAME> <WWISE\_EVENT\_1>\#WWISE\_EVENT\_PULL\#</WWISE\_EVENT\_1> <WWISE\_EVENT\_2>\#WWISE\_EVENT\_BACK\_TO\_CENTER\#</WWISE\_EVENT\_2> <NORMALIZED\_TIME\_1>\#NORMALIZED\_TIME\_PULL\_ON\#</NORMALIZED\_TIME\_1> <NORMALIZED\_TIME\_2>\#NORMALIZED\_TIME\_PULL\_OFF\#</NORMALIZED\_TIME\_2> <DIRECTION\_1>Backward</DIRECTION\_1> <DIRECTION\_2>Forward</DIRECTION\_2> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_Knob\_Infinite"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_PushPull</EXTRA\_INTERACTION> </UseTemplate> </Template> <!-- Knob with push button object whith short or long left click events based on time pushed. Required parameter: ANIM\_NAME\_PUSH ANIM\_NAME\_KNOB CLOCKWISE\_CODE ANTICLOCKWISE\_CODE LEFT\_SINGLE\_CODE LONG\_CLICK\_CODE SHORT\_CLICK\_CODE LONG\_CLICK\_TIME --> <Template Name = "ASOBO\_GT\_Knob\_Infinite\_Push\_Timed"> <DefaultTemplateParameters> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <LEFT\_SINGLE\_CODE/> <LEFT\_LEAVE\_CODE/> <LOCKABLE\_EVENT\_SECONDARY>LeftRelease</LOCKABLE\_EVENT\_SECONDARY> <NO\_LOCK\_EVENT\_SECONDARY>RightRelease</NO\_LOCK\_EVENT\_SECONDARY> <MOUSEFLAGS\_DRAG\_IM>RightAll+LeftAll+Wheel+Lock+Unlock</MOUSEFLAGS\_DRAG\_IM> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Knob\_Infinite"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_LeftSingleTimed</EXTRA\_INTERACTION> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <ANIM\_CODE>(O:\_PressTime) 0 > if{ \#ANIM\_LENGTH\_PUSH\# (>O:\_PushAnimVar) } els{ (O:\_PushAnimVar) \#ANIM\_LENGTH\_PUSH\# 0.7 \* - 0 max (>O:\_PushAnimVar) } (O:\_PushAnimVar)</ANIM\_CODE> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> </UseTemplate> </Template> <!-- Finite Knob with push button object whith short or long left click events based on time pushed. Required parameter: ANIM\_NAME\_PUSH ANIM\_NAME\_KNOB ANIM\_CODE\_KNOB CLOCKWISE\_CODE ANTICLOCKWISE\_CODE LEFT\_SINGLE\_CODE LONG\_CLICK\_CODE SHORT\_CLICK\_CODE LONG\_CLICK\_TIME --> <Template Name = "ASOBO\_GT\_Knob\_Finite\_Code\_Push\_Timed"> <DefaultTemplateParameters> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <LEFT\_SINGLE\_CODE/> <LEFT\_LEAVE\_CODE/> <ANIM\_CODE\_KNOB/> <LOCKABLE\_EVENT\_SECONDARY>LeftRelease</LOCKABLE\_EVENT\_SECONDARY> <NO\_LOCK\_EVENT\_SECONDARY>RightRelease</NO\_LOCK\_EVENT\_SECONDARY> <MOUSEFLAGS\_DRAG\_IM>RightAll+LeftAll+Wheel+Lock+Unlock</MOUSEFLAGS\_DRAG\_IM> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Knob\_Finite\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <ANIM\_CODE>\#ANIM\_CODE\_KNOB\#</ANIM\_CODE> <EXTRA\_INTERACTION>\_LeftSingleTimed</EXTRA\_INTERACTION> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <ANIM\_CODE>(O:\_PressTime) 0 > if{ \#ANIM\_LENGTH\_PUSH\# (>O:\_PushAnimVar) } els{ (O:\_PushAnimVar) \#ANIM\_LENGTH\_PUSH\# 0.7 \* - 0 max (>O:\_PushAnimVar) } (O:\_PushAnimVar)</ANIM\_CODE> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> </UseTemplate> </Template> </ModelBehaviors>     ### Templates Template list 1. [ASOBO\_GT\_Knob\_Finite\_Simvar](#ASOBO_GT_Knob_Finite_Simvar) 2. [ASOBO\_GT\_Knob\_Finite\_Code](#ASOBO_GT_Knob_Finite_Code) 3. [ASOBO\_GT\_Knob\_Finite\_Dummy](#ASOBO_GT_Knob_Finite_Dummy) 4. [ASOBO\_GT\_Knob\_Finite\_Switch](#ASOBO_GT_Knob_Finite_Switch) 5. [ASOBO\_GT\_Knob\_Infinite](#ASOBO_GT_Knob_Infinite) 6. [ASOBO\_GT\_Knob\_Infinite\_SeparatedInteraction](#ASOBO_GT_Knob_Infinite_SeparatedInteraction) 7. [ASOBO\_GT\_Knob\_Infinite\_Sim](#ASOBO_GT_Knob_Infinite_Sim) 8. [ASOBO\_GT\_Knob\_Infinite\_Push](#ASOBO_GT_Knob_Infinite_Push) 9. [ASOBO\_GT\_Knob\_Infinite\_Pull](#ASOBO_GT_Knob_Infinite_Pull) 10. [ASOBO\_GT\_Knob\_Infinite\_PushPull](#ASOBO_GT_Knob_Infinite_PushPull) 11. [ASOBO\_GT\_Knob\_Infinite\_Push\_Timed](#ASOBO_GT_Knob_Infinite_Push_Timed) 12. [ASOBO\_GT\_Knob\_Finite\_Code\_Push\_Timed](#ASOBO_GT_Knob_Finite_Code_Push_Timed) - #### ASOBO\_GT\_Knob\_Finite\_Simvar Definition from XML <Template Name="ASOBO\_GT\_Knob\_Finite\_Simvar"> <DefaultTemplateParameters> <ANIM\_SIMVAR\_UNITS>percent</ANIM\_SIMVAR\_UNITS> <ANIM\_SIMVAR\_MIN>0</ANIM\_SIMVAR\_MIN> <ANIM\_SIMVAR\_MAX>100</ANIM\_SIMVAR\_MAX> <EXTRA\_INTERACTION/> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <ANIMTIP\_0/> <ANIMTIP\_1/> <ANIM\_LAG>100</ANIM\_LAG> <ANIM\_WRAP>False</ANIM\_WRAP> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE> (A:\#ANIM\_SIMVAR\#, \#ANIM\_SIMVAR\_UNITS\#) \#ANIM\_SIMVAR\_MIN\# - \#ANIM\_SIMVAR\_MAX\# \#ANIM\_SIMVAR\_MIN\# - / 100 \* </ANIM\_CODE> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\#"> <CLOCKWISE\_CODE> \#CLOCKWISE\_CODE\# </CLOCKWISE\_CODE> <ANTICLOCKWISE\_CODE> \#ANTICLOCKWISE\_CODE\# </ANTICLOCKWISE\_CODE> </UseTemplate> <Condition Valid="WWISE\_EVENT"> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"/> </Condition> </Template> Parameters initialization: - Default Parameters set: - ANIM\_SIMVAR\_UNITS - ANIM\_SIMVAR\_MIN - ANIM\_SIMVAR\_MAX - EXTRA\_INTERACTION - ANIMREF\_ID - ANIMTIP\_0\_ON\_CURSOR - ANIMTIP\_1\_ON\_CURSOR - ANIMTIP\_0 - ANIMTIP\_1 - ANIM\_LAG - ANIM\_WRAP Parameters read: - EXTRA\_INTERACTION   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE (using ANIM\_SIMVAR, ANIM\_SIMVAR\_UNITS, ANIM\_SIMVAR\_MIN, ANIM\_SIMVAR\_MAX) - ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\# - May resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Parameters set: - CLOCKWISE\_CODE (using CLOCKWISE\_CODE) - ANTICLOCKWISE\_CODE (using ANTICLOCKWISE\_CODE) Condition: Valid(WWISE\_EVENT) - Case: True   Templates used: - [ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same](../animationtriggers/#ASOBO_GT_AnimTriggers_SoundEvents_Same) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Finite\_Code Definition from XML <Template Name="ASOBO\_GT\_Knob\_Finite\_Code"> <DefaultTemplateParameters> <EXTRA\_INTERACTION/> <COUNT>10</COUNT> <WRAP>False</WRAP> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <ANIMTIP\_0/> <ANIMTIP\_1/> <ANIM\_LAG>100</ANIM\_LAG> <Condition Valid="PUSH"> <True> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> </True> </Condition> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_WRAP>\#WRAP\#</ANIM\_WRAP> </UseTemplate> <Condition Valid="PUSH"> <True> <Update Frequency="10"> (O:\_ButtonPressed) 0 > if{ \#ANIM\_LENGTH\_PUSH\# (>O:\_PushAnimVar) } els{ (O:\_PushAnimVar) \#ANIM\_LENGTH\_PUSH\# 0.7 \* - 0 max (>O:\_PushAnimVar) } </Update> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <ANIM\_CODE>(O:\_PushAnimVar)</ANIM\_CODE> </UseTemplate> </True> </Condition> <Condition Check="WWISE\_EVENT"> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"/> </Condition> <UseTemplate Name="ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\#"/> </Template> Parameters initialization: - Default Parameters set: - EXTRA\_INTERACTION - COUNT - WRAP - ANIMREF\_ID - ANIMTIP\_0\_ON\_CURSOR - ANIMTIP\_1\_ON\_CURSOR - ANIMTIP\_0 - ANIMTIP\_1 - ANIM\_LAG Condition: Valid(PUSH) - Case: True Parameters set: - EXTRA\_INTERACTION - ANIM\_LENGTH\_PUSH Parameters read: - EXTRA\_INTERACTION   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_WRAP (using WRAP) - ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\# - May resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Condition: Valid(PUSH) - Case: True Parameters read: - ANIM\_LENGTH\_PUSH   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) - ANIM\_LENGTH (using ANIM\_LENGTH\_PUSH) - ANIM\_CODE Condition: Check(WWISE\_EVENT) - Case: True   Templates used: - [ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same](../animationtriggers/#ASOBO_GT_AnimTriggers_SoundEvents_Same) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Finite\_Dummy Definition from XML <Template Name="ASOBO\_GT\_Knob\_Finite\_Dummy"> <DefaultTemplateParameters> <ANIM\_NAME>\#KNOB\_NAME\#</ANIM\_NAME> <NODE\_NAME>\#KNOB\_NAME\#</NODE\_NAME> <KNOB\_POSITION\_VAR\_TYPE>O</KNOB\_POSITION\_VAR\_TYPE> <KNOB\_POSITION\_VAR>\#KNOB\_NAME\#</KNOB\_POSITION\_VAR> <KNOB\_SPEED>4</KNOB\_SPEED> </DefaultTemplateParameters> <Component ID="\#KNOB\_NAME\#" Node="\#NODE\_NAME\#"> <Condition Check="INIT\_VALUE"> <Update Once="True"> \#INIT\_VALUE\# (>\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#) </Update> </Condition> <UseTemplate Name="ASOBO\_GT\_Knob\_Finite\_Code"> <PART\_ID>\#KNOB\_NAME\#</PART\_ID> <ANIM\_LENGTH>100</ANIM\_LENGTH> <ANIM\_CODE>(\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#)</ANIM\_CODE> <CLOCKWISE\_CODE>(\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#) \#KNOB\_SPEED\# + 100 min (>\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#)</CLOCKWISE\_CODE> <ANTICLOCKWISE\_CODE>(\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#) \#KNOB\_SPEED\# - 0 max (>\#KNOB\_POSITION\_VAR\_TYPE\#:\#KNOB\_POSITION\_VAR\#)</ANTICLOCKWISE\_CODE> </UseTemplate> <Condition Check="WWISE\_EVENT"> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"/> </Condition> </Component> </Template> Parameters initialization: - Default Parameters set: - ANIM\_NAME (using KNOB\_NAME) - NODE\_NAME (using KNOB\_NAME) - KNOB\_POSITION\_VAR\_TYPE - KNOB\_POSITION\_VAR (using KNOB\_NAME) - KNOB\_SPEED Parameters read: - KNOB\_NAME - NODE\_NAME Components: - \#KNOB\_NAME\# (Node: \#NODE\_NAME\#)   Templates used: - [ASOBO\_GT\_Knob\_Finite\_Code](knob/#ASOBO_GT_Knob_Finite_Code) - May include a subtemplate using the parameter 'EXTRA\_INTERACTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Parameters set: - PART\_ID (using KNOB\_NAME) - ANIM\_LENGTH - ANIM\_CODE (using KNOB\_POSITION\_VAR\_TYPE, KNOB\_POSITION\_VAR) - CLOCKWISE\_CODE (using KNOB\_POSITION\_VAR\_TYPE, KNOB\_POSITION\_VAR, KNOB\_SPEED) - ANTICLOCKWISE\_CODE (using KNOB\_POSITION\_VAR\_TYPE, KNOB\_POSITION\_VAR, KNOB\_SPEED) Condition: Check(INIT\_VALUE) - Case: True Parameters read: - INIT\_VALUE - KNOB\_POSITION\_VAR\_TYPE - KNOB\_POSITION\_VAR Condition: Check(WWISE\_EVENT) - Case: True   Templates used: - [ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same](../animationtriggers/#ASOBO_GT_AnimTriggers_SoundEvents_Same) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Finite\_Switch Definition from XML <Template Name="ASOBO\_GT\_Knob\_Finite\_Switch"> <DefaultTemplateParameters> <ANIM\_SIMVAR\_SCALE\_KNOB>1</ANIM\_SIMVAR\_SCALE\_KNOB> <ANIM\_SIMVAR\_MAX>100</ANIM\_SIMVAR\_MAX> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ANIM\_LENGTH\_SWITCH>100</ANIM\_LENGTH\_SWITCH> <ANIM\_SIMVAR\_SCALE\_SWITCH>1</ANIM\_SIMVAR\_SCALE\_SWITCH> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <ANIM\_WRAP>False</ANIM\_WRAP> <USE\_SIMVAR\_FOR\_BUTTON\_ANIM>True</USE\_SIMVAR\_FOR\_BUTTON\_ANIM> </DefaultTemplateParameters> <Condition Valid="USE\_SIMVAR\_FOR\_BUTTON\_ANIM"> <True> <UseTemplate Name="ASOBO\_GT\_Anim\_Sim"> <ANIM\_NAME>\#ANIM\_NAME\_SWITCH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_SWITCH\#</ANIM\_LENGTH> <ANIM\_SIMVAR>\#ANIM\_SIMVAR\_SWITCH\#</ANIM\_SIMVAR> <ANIM\_SIMVAR\_SCALE>\#ANIM\_SIMVAR\_SCALE\_SWITCH\#</ANIM\_SIMVAR\_SCALE> <ANIM\_SIMVAR\_UNITS>\#ANIM\_SIMVAR\_UNITS\_SWITCH\#</ANIM\_SIMVAR\_UNITS> <Condition Check="ANIM\_LAG\_SWITCH"> <ANIM\_LAG>\#ANIM\_LAG\_SWITCH\#</ANIM\_LAG> </Condition> <ANIM\_WRAP>False</ANIM\_WRAP> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>\#ANIM\_CODE\_SWITCH\#</ANIM\_CODE> <ANIM\_NAME>\#ANIM\_NAME\_SWITCH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_SWITCH\#</ANIM\_LENGTH> <Condition Check="ANIM\_LAG\_SWITCH"> <ANIM\_LAG>\#ANIM\_LAG\_SWITCH\#</ANIM\_LAG> </Condition> </UseTemplate> </False> </Condition> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_SWITCH\#</ANIM\_NAME> </UseTemplate> <Condition Valid="USE\_SIMVAR\_FOR\_KNOB\_ANIM"> <True> <UseTemplate Name="ASOBO\_GT\_Knob\_Finite\_Simvar"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_SIMVAR>\#ANIM\_SIMVAR\_KNOB\#</ANIM\_SIMVAR> <ANIM\_SIMVAR\_UNITS>\#ANIM\_SIMVAR\_UNITS\_KNOB\#</ANIM\_SIMVAR\_UNITS> <ANIM\_SIMVAR\_SCALE>\#ANIM\_SIMVAR\_SCALE\_KNOB\#</ANIM\_SIMVAR\_SCALE> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> <Condition Check="ANIM\_LAG\_KNOB"> <ANIM\_LAG>\#ANIM\_LAG\_KNOB\#</ANIM\_LAG> </Condition> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO\_GT\_Knob\_Finite\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_CODE>\#KNOB\_ANIM\_CODE\#</ANIM\_CODE> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> <Condition Check="ANIM\_LAG\_KNOB"> <ANIM\_LAG>\#ANIM\_LAG\_KNOB\#</ANIM\_LAG> </Condition> </UseTemplate> </False> </Condition> </Template> Parameters initialization: - Default Parameters set: - ANIM\_SIMVAR\_SCALE\_KNOB - ANIM\_SIMVAR\_MAX - ANIM\_LENGTH\_KNOB - ANIM\_LENGTH\_SWITCH - ANIM\_SIMVAR\_SCALE\_SWITCH - CENTER\_RADIUS - ANIM\_WRAP - USE\_SIMVAR\_FOR\_BUTTON\_ANIM   Templates used: - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_SWITCH) Condition: Valid(USE\_SIMVAR\_FOR\_BUTTON\_ANIM) - Case: True   Templates used: - [ASOBO\_GT\_Anim\_Sim](../animations/#ASOBO_GT_Anim_Sim) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_SWITCH) - ANIM\_LENGTH (using ANIM\_LENGTH\_SWITCH) - ANIM\_SIMVAR (using ANIM\_SIMVAR\_SWITCH) - ANIM\_SIMVAR\_SCALE (using ANIM\_SIMVAR\_SCALE\_SWITCH) - ANIM\_SIMVAR\_UNITS (using ANIM\_SIMVAR\_UNITS\_SWITCH) - ANIM\_WRAP Condition: Check(ANIM\_LAG\_SWITCH) - Case: True Parameters set: - ANIM\_LAG (using ANIM\_LAG\_SWITCH) - Case: False   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE (using ANIM\_CODE\_SWITCH) - ANIM\_NAME (using ANIM\_NAME\_SWITCH) - ANIM\_LENGTH (using ANIM\_LENGTH\_SWITCH) Condition: Check(ANIM\_LAG\_SWITCH) - Case: True Parameters set: - ANIM\_LAG (using ANIM\_LAG\_SWITCH) Condition: Valid(USE\_SIMVAR\_FOR\_KNOB\_ANIM) - Case: True   Templates used: - [ASOBO\_GT\_Knob\_Finite\_Simvar](knob/#ASOBO_GT_Knob_Finite_Simvar) - May include a subtemplate using the parameter 'EXTRA\_INTERACTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_KNOB) - ANIM\_SIMVAR (using ANIM\_SIMVAR\_KNOB) - ANIM\_SIMVAR\_UNITS (using ANIM\_SIMVAR\_UNITS\_KNOB) - ANIM\_SIMVAR\_SCALE (using ANIM\_SIMVAR\_SCALE\_KNOB) - ANIM\_LENGTH (using ANIM\_LENGTH\_KNOB) - EXTRA\_INTERACTION Condition: Check(ANIM\_LAG\_KNOB) - Case: True Parameters set: - ANIM\_LAG (using ANIM\_LAG\_KNOB) - Case: False   Templates used: - [ASOBO\_GT\_Knob\_Finite\_Code](knob/#ASOBO_GT_Knob_Finite_Code) - May include a subtemplate using the parameter 'EXTRA\_INTERACTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_KNOB) - ANIM\_CODE (using KNOB\_ANIM\_CODE) - ANIM\_LENGTH (using ANIM\_LENGTH\_KNOB) - EXTRA\_INTERACTION Condition: Check(ANIM\_LAG\_KNOB) - Case: True Parameters set: - ANIM\_LAG (using ANIM\_LAG\_KNOB) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Infinite Definition from XML <Template Name="ASOBO\_GT\_Knob\_Infinite"> <Parameters Type="Default"> <ROTATION\_SPEED>10</ROTATION\_SPEED> <EXTRA\_INTERACTION/> <CLOCKWISE\_CONDITION> 1 </CLOCKWISE\_CONDITION> <ANTICLOCKWISE\_CONDITION> 1 </ANTICLOCKWISE\_CONDITION> <ANIM\_LAG>100</ANIM\_LAG> </Parameters> <Parameters Type="Override"> <Condition> <Test> <Or> <Arg Valid="ANIM\_VAR\_HANDLED\_SEPARATELY"/> <Arg Valid="NO\_KNOB\_ANIM\_VAR\_UPDATE"/> </Or> </Test> <True> <INC\_ANIM\_VAR\_CODE/> <DEC\_ANIM\_VAR\_CODE/> </True> <False> <INC\_ANIM\_VAR\_CODE>(O:\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>O:\_KnobAnimVar)</INC\_ANIM\_VAR\_CODE> <DEC\_ANIM\_VAR\_CODE>(O:\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>O:\_KnobAnimVar)</DEC\_ANIM\_VAR\_CODE> </False> </Condition> </Parameters> <Condition Valid="ANIM\_HANDLED\_SEPARATELY"> <False> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <Condition Check="OVERRIDE\_ANIM\_CODE"> <True> <ANIM\_CODE>\#OVERRIDE\_ANIM\_CODE\#</ANIM\_CODE> </True> <False> <ANIM\_CODE>(O:\_KnobAnimVar) 3.6 / </ANIM\_CODE> <ANIM\_WRAP>True</ANIM\_WRAP> </False> </Condition> </UseTemplate> <Condition Check="WWISE\_EVENT"> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"/> </Condition> </False> </Condition> <UseTemplate Name="ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\#"> <Condition> <Test> <And> <Arg NotEmpty="CLOCKWISE\_CODE\_DEFAULT\_IM"/> <Arg NotEmpty="CLOCKWISE\_CODE\_DRAG\_IM"/> </And> </Test> <True> <CLOCKWISE\_CODE\_DEFAULT\_IM> \#CLOCKWISE\_CONDITION\# if{ \#INC\_ANIM\_VAR\_CODE\# \#CLOCKWISE\_CODE\_DEFAULT\_IM\# } </CLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM> \#CLOCKWISE\_CONDITION\# if{ \#INC\_ANIM\_VAR\_CODE\# \#CLOCKWISE\_CODE\_DRAG\_IM\# } </CLOCKWISE\_CODE\_DRAG\_IM> </True> <False> <Condition NotEmpty="CLOCKWISE\_CODE"> <CLOCKWISE\_CODE> \#CLOCKWISE\_CONDITION\# if{ \#INC\_ANIM\_VAR\_CODE\# \#CLOCKWISE\_CODE\# } </CLOCKWISE\_CODE> </Condition> </False> </Condition> <Condition> <Test> <And> <Arg NotEmpty="ANTICLOCKWISE\_CODE\_DEFAULT\_IM"/> <Arg NotEmpty="ANTICLOCKWISE\_CODE\_DRAG\_IM"/> </And> </Test> <True> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM> \#ANTICLOCKWISE\_CONDITION\# if{ \#DEC\_ANIM\_VAR\_CODE\# \#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\# } </ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM> \#ANTICLOCKWISE\_CONDITION\# if{ \#DEC\_ANIM\_VAR\_CODE\# \#ANTICLOCKWISE\_CODE\_DRAG\_IM\# } </ANTICLOCKWISE\_CODE\_DRAG\_IM> </True> <False> <Condition NotEmpty="ANTICLOCKWISE\_CODE"> <ANTICLOCKWISE\_CODE> \#ANTICLOCKWISE\_CONDITION\# if{ \#DEC\_ANIM\_VAR\_CODE\# \#ANTICLOCKWISE\_CODE\# } </ANTICLOCKWISE\_CODE> </Condition> </False> </Condition> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ROTATION\_SPEED - EXTRA\_INTERACTION - CLOCKWISE\_CONDITION - ANTICLOCKWISE\_CONDITION - ANIM\_LAG - Override Condition: Test(ANIM\_VAR\_HANDLED\_SEPARATELY, NO\_KNOB\_ANIM\_VAR\_UPDATE) - Case: True Parameters set: - INC\_ANIM\_VAR\_CODE - DEC\_ANIM\_VAR\_CODE - Case: False Parameters set: - INC\_ANIM\_VAR\_CODE (using ROTATION\_SPEED) - DEC\_ANIM\_VAR\_CODE (using ROTATION\_SPEED) Parameters read: - EXTRA\_INTERACTION   Templates used: - ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\#EXTRA\_INTERACTION\# - May resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Condition: Test(CLOCKWISE\_CODE\_DEFAULT\_IM, CLOCKWISE\_CODE\_DRAG\_IM) - Case: True Parameters set: - CLOCKWISE\_CODE\_DEFAULT\_IM (using CLOCKWISE\_CONDITION, INC\_ANIM\_VAR\_CODE, CLOCKWISE\_CODE\_DEFAULT\_IM) - CLOCKWISE\_CODE\_DRAG\_IM (using CLOCKWISE\_CONDITION, INC\_ANIM\_VAR\_CODE, CLOCKWISE\_CODE\_DRAG\_IM) - Case: False Condition: NotEmpty(CLOCKWISE\_CODE) - Case: True Parameters set: - CLOCKWISE\_CODE (using CLOCKWISE\_CONDITION, INC\_ANIM\_VAR\_CODE, CLOCKWISE\_CODE) Condition: Test(ANTICLOCKWISE\_CODE\_DEFAULT\_IM, ANTICLOCKWISE\_CODE\_DRAG\_IM) - Case: True Parameters set: - ANTICLOCKWISE\_CODE\_DEFAULT\_IM (using ANTICLOCKWISE\_CONDITION, DEC\_ANIM\_VAR\_CODE, ANTICLOCKWISE\_CODE\_DEFAULT\_IM) - ANTICLOCKWISE\_CODE\_DRAG\_IM (using ANTICLOCKWISE\_CONDITION, DEC\_ANIM\_VAR\_CODE, ANTICLOCKWISE\_CODE\_DRAG\_IM) - Case: False Condition: NotEmpty(ANTICLOCKWISE\_CODE) - Case: True Parameters set: - ANTICLOCKWISE\_CODE (using ANTICLOCKWISE\_CONDITION, DEC\_ANIM\_VAR\_CODE, ANTICLOCKWISE\_CODE) Condition: Valid(ANIM\_HANDLED\_SEPARATELY) - Case: False   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Condition: Check(OVERRIDE\_ANIM\_CODE) - Case: True Parameters set: - ANIM\_CODE (using OVERRIDE\_ANIM\_CODE) - Case: False Parameters set: - ANIM\_CODE - ANIM\_WRAP Condition: Check(WWISE\_EVENT) - Case: True   Templates used: - [ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same](../animationtriggers/#ASOBO_GT_AnimTriggers_SoundEvents_Same) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Infinite\_SeparatedInteraction Definition from XML <Template Name="ASOBO\_GT\_Knob\_Infinite\_SeparatedInteraction"> <DefaultTemplateParameters> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CURSOR\_LEFT>TurnLeft</CURSOR\_LEFT> <CURSOR\_RIGHT>TurnRight</CURSOR\_RIGHT> <CURSOR\_UP>UpArrow</CURSOR\_UP> <CURSOR\_DOWN>DownArrow</CURSOR\_DOWN> <LEFT\_SINGLE\_DOWN/> <ANIM\_LAG>100</ANIM\_LAG> <HIGHLIGHT\_NODE\_ID>\#NODE\_ID\#</HIGHLIGHT\_NODE\_ID> <INVERT\_WHEEL\_INTERACTION>True</INVERT\_WHEEL\_INTERACTION> </DefaultTemplateParameters> <OverrideTemplateParameters> <Condition> <Test> <And> <Arg NotEmpty="CLOCKWISE\_CODE\_DEFAULT\_IM"/> <Arg NotEmpty="CLOCKWISE\_CODE\_DRAG\_IM"/> </And> </Test> <True> <CLOCKWISE\_CODE\_DEFAULT\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#CLOCKWISE\_CODE\_DEFAULT\_IM\# </CLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#CLOCKWISE\_CODE\_DRAG\_IM\# </CLOCKWISE\_CODE\_DRAG\_IM> </True> <False> <CLOCKWISE\_CODE\_DEFAULT\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#CLOCKWISE\_CODE\# </CLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# + dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#CLOCKWISE\_CODE\# </CLOCKWISE\_CODE\_DRAG\_IM> </False> </Condition> <Condition> <Test> <And> <Arg NotEmpty="ANTICLOCKWISE\_CODE\_DEFAULT\_IM"/> <Arg NotEmpty="ANTICLOCKWISE\_CODE\_DRAG\_IM"/> </And> </Test> <True> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\# </ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#ANTICLOCKWISE\_CODE\_DRAG\_IM\# </ANTICLOCKWISE\_CODE\_DRAG\_IM> </True> <False> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#ANTICLOCKWISE\_CODE\# </ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM> (I:\#NODE\_ID\#\_KnobAnimVar) \#ROTATION\_SPEED\# - dnor (>I:\#NODE\_ID\#\_KnobAnimVar) \#ANTICLOCKWISE\_CODE\# </ANTICLOCKWISE\_CODE\_DRAG\_IM> </False> </Condition> <LEFT\_SINGLE\_CODE\_OUTER>1 (>O:\_Interacting)</LEFT\_SINGLE\_CODE\_OUTER> <LEFT\_SINGLE\_CODE\_INNER>1 (>O:\_Interacting)</LEFT\_SINGLE\_CODE\_INNER> <LEFT\_LEAVE\_CODE\_OUTER>0 (>O:\_Interacting)</LEFT\_LEAVE\_CODE\_OUTER> <LEFT\_LEAVE\_CODE\_INNER>0 (>O:\_Interacting)</LEFT\_LEAVE\_CODE\_INNER> <NO\_PUSH\_PULL\_LOCK>True</NO\_PUSH\_PULL\_LOCK> <CURSOR\_LEFT/> <CURSOR\_RIGHT/> </OverrideTemplateParameters> <Component ID="\#NODE\_ID\#" Node="\#NODE\_ID\#"> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(I:\#NODE\_ID\#\_KnobAnimVar) 3.6 / </ANIM\_CODE> <ANIM\_WRAP>True</ANIM\_WRAP> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"/> </Component> <Component ID="\#HITBOX\_UP\_NODE\_ID\#" Node="\#HITBOX\_UP\_NODE\_ID\#"> <UseTemplate Name="ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle"> <Condition Check="SWITCH\_DIRECTION" Match="Vertical"> <CURSOR>\#CURSOR\_UP\#</CURSOR> <CODE\_UP>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_UP> <CODE\_DN>\#CLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_DN> <CODE\_LEFT>0</CODE\_LEFT> <CODE\_RIGHT>0</CODE\_RIGHT> </Condition> <Condition Check="SWITCH\_DIRECTION" Match="Horizontal"> <CURSOR>\#CURSOR\_LEFT\#</CURSOR> <CODE\_UP>0</CODE\_UP> <CODE\_DN>0</CODE\_DN> <CODE\_LEFT>\#CLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_LEFT> <CODE\_RIGHT>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_RIGHT> </Condition> <Condition Valid="INVERT\_WHEEL\_INTERACTION"> <True> <CLOCKWISE\_CODE\_DEFAULT\_IM>\#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\#</CLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM>\#CLOCKWISE\_CODE\_DEFAULT\_IM\#</ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CLOCKWISE\_CODE\_DRAG\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM>\#CLOCKWISE\_CODE\_DRAG\_IM\#</ANTICLOCKWISE\_CODE\_DRAG\_IM> </True> </Condition> <UPDATE\_DEFAULT\_IM> (O:\_Interacting) if{ \#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\# } </UPDATE\_DEFAULT\_IM> </UseTemplate> </Component> <Component ID="\#HITBOX\_DOWN\_NODE\_ID\#" Node="\#HITBOX\_DOWN\_NODE\_ID\#"> <UseTemplate Name="ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle"> <Condition Check="SWITCH\_DIRECTION" Match="Vertical"> <CURSOR>\#CURSOR\_DOWN\#</CURSOR> <CODE\_UP>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_UP> <CODE\_DN>\#CLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_DN> <CODE\_LEFT>0</CODE\_LEFT> <CODE\_RIGHT>0</CODE\_RIGHT> </Condition> <Condition Check="SWITCH\_DIRECTION" Match="Horizontal"> <CURSOR>\#CURSOR\_RIGHT\#</CURSOR> <CODE\_UP>0</CODE\_UP> <CODE\_DN>0</CODE\_DN> <CODE\_LEFT>\#CLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_LEFT> <CODE\_RIGHT>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CODE\_RIGHT> </Condition> <Condition Valid="INVERT\_WHEEL\_INTERACTION"> <True> <CLOCKWISE\_CODE\_DEFAULT\_IM>\#ANTICLOCKWISE\_CODE\_DEFAULT\_IM\#</CLOCKWISE\_CODE\_DEFAULT\_IM> <ANTICLOCKWISE\_CODE\_DEFAULT\_IM>\#CLOCKWISE\_CODE\_DEFAULT\_IM\#</ANTICLOCKWISE\_CODE\_DEFAULT\_IM> <CLOCKWISE\_CODE\_DRAG\_IM>\#ANTICLOCKWISE\_CODE\_DRAG\_IM\#</CLOCKWISE\_CODE\_DRAG\_IM> <ANTICLOCKWISE\_CODE\_DRAG\_IM>\#CLOCKWISE\_CODE\_DRAG\_IM\#</ANTICLOCKWISE\_CODE\_DRAG\_IM> </True> </Condition> <UPDATE\_DEFAULT\_IM> (O:\_Interacting) if{ \#CLOCKWISE\_CODE\_DEFAULT\_IM\# } </UPDATE\_DEFAULT\_IM> </UseTemplate> </Component> </Template> Parameters initialization: - Default Parameters set: - ROTATION\_SPEED - CURSOR\_LEFT - CURSOR\_RIGHT - CURSOR\_UP - CURSOR\_DOWN - LEFT\_SINGLE\_DOWN - ANIM\_LAG - HIGHLIGHT\_NODE\_ID (using NODE\_ID) - INVERT\_WHEEL\_INTERACTION - Override Parameters set: - LEFT\_SINGLE\_CODE\_OUTER - LEFT\_SINGLE\_CODE\_INNER - LEFT\_LEAVE\_CODE\_OUTER - LEFT\_LEAVE\_CODE\_INNER - NO\_PUSH\_PULL\_LOCK - CURSOR\_LEFT - CURSOR\_RIGHT Condition: Test(CLOCKWISE\_CODE\_DEFAULT\_IM, CLOCKWISE\_CODE\_DRAG\_IM) - Case: True Parameters set: - CLOCKWISE\_CODE\_DEFAULT\_IM (using NODE\_ID, ROTATION\_SPEED, CLOCKWISE\_CODE\_DEFAULT\_IM) - CLOCKWISE\_CODE\_DRAG\_IM (using NODE\_ID, ROTATION\_SPEED, CLOCKWISE\_CODE\_DRAG\_IM) - Case: False Parameters set: - CLOCKWISE\_CODE\_DEFAULT\_IM (using NODE\_ID, ROTATION\_SPEED, CLOCKWISE\_CODE) - CLOCKWISE\_CODE\_DRAG\_IM (using NODE\_ID, ROTATION\_SPEED, CLOCKWISE\_CODE) Condition: Test(ANTICLOCKWISE\_CODE\_DEFAULT\_IM, ANTICLOCKWISE\_CODE\_DRAG\_IM) - Case: True Parameters set: - ANTICLOCKWISE\_CODE\_DEFAULT\_IM (using NODE\_ID, ROTATION\_SPEED, ANTICLOCKWISE\_CODE\_DEFAULT\_IM) - ANTICLOCKWISE\_CODE\_DRAG\_IM (using NODE\_ID, ROTATION\_SPEED, ANTICLOCKWISE\_CODE\_DRAG\_IM) - Case: False Parameters set: - ANTICLOCKWISE\_CODE\_DEFAULT\_IM (using NODE\_ID, ROTATION\_SPEED, ANTICLOCKWISE\_CODE) - ANTICLOCKWISE\_CODE\_DRAG\_IM (using NODE\_ID, ROTATION\_SPEED, ANTICLOCKWISE\_CODE) Parameters read: - NODE\_ID - HITBOX\_UP\_NODE\_ID - HITBOX\_DOWN\_NODE\_ID Components: - \#NODE\_ID\# (Node: \#NODE\_ID\#)   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE (using NODE\_ID) - ANIM\_WRAP - [ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same](../animationtriggers/#ASOBO_GT_AnimTriggers_SoundEvents_Same) - \#HITBOX\_UP\_NODE\_ID\# (Node: \#HITBOX\_UP\_NODE\_ID\#)   Templates used: - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) Parameters set: - UPDATE\_DEFAULT\_IM (using ANTICLOCKWISE\_CODE\_DEFAULT\_IM) Condition: Check(SWITCH\_DIRECTION) - Case: True Parameters set: - CURSOR (using CURSOR\_UP) - CODE\_UP (using ANTICLOCKWISE\_CODE\_DRAG\_IM) - CODE\_DN (using CLOCKWISE\_CODE\_DRAG\_IM) - CODE\_LEFT - CODE\_RIGHT Condition: Check(SWITCH\_DIRECTION) - Case: True Parameters set: - CURSOR (using CURSOR\_LEFT) - CODE\_UP - CODE\_DN - CODE\_LEFT (using CLOCKWISE\_CODE\_DRAG\_IM) - CODE\_RIGHT (using ANTICLOCKWISE\_CODE\_DRAG\_IM) Condition: Valid(INVERT\_WHEEL\_INTERACTION) - Case: True Parameters set: - CLOCKWISE\_CODE\_DEFAULT\_IM (using ANTICLOCKWISE\_CODE\_DEFAULT\_IM) - ANTICLOCKWISE\_CODE\_DEFAULT\_IM (using CLOCKWISE\_CODE\_DEFAULT\_IM) - CLOCKWISE\_CODE\_DRAG\_IM (using ANTICLOCKWISE\_CODE\_DRAG\_IM) - ANTICLOCKWISE\_CODE\_DRAG\_IM (using CLOCKWISE\_CODE\_DRAG\_IM) - \#HITBOX\_DOWN\_NODE\_ID\# (Node: \#HITBOX\_DOWN\_NODE\_ID\#)   Templates used: - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) Parameters set: - UPDATE\_DEFAULT\_IM (using CLOCKWISE\_CODE\_DEFAULT\_IM) Condition: Check(SWITCH\_DIRECTION) - Case: True Parameters set: - CURSOR (using CURSOR\_DOWN) - CODE\_UP (using ANTICLOCKWISE\_CODE\_DRAG\_IM) - CODE\_DN (using CLOCKWISE\_CODE\_DRAG\_IM) - CODE\_LEFT - CODE\_RIGHT Condition: Check(SWITCH\_DIRECTION) - Case: True Parameters set: - CURSOR (using CURSOR\_RIGHT) - CODE\_UP - CODE\_DN - CODE\_LEFT (using CLOCKWISE\_CODE\_DRAG\_IM) - CODE\_RIGHT (using ANTICLOCKWISE\_CODE\_DRAG\_IM) Condition: Valid(INVERT\_WHEEL\_INTERACTION) - Case: True Parameters set: - CLOCKWISE\_CODE\_DEFAULT\_IM (using ANTICLOCKWISE\_CODE\_DEFAULT\_IM) - ANTICLOCKWISE\_CODE\_DEFAULT\_IM (using CLOCKWISE\_CODE\_DEFAULT\_IM) - CLOCKWISE\_CODE\_DRAG\_IM (using ANTICLOCKWISE\_CODE\_DRAG\_IM) - ANTICLOCKWISE\_CODE\_DRAG\_IM (using CLOCKWISE\_CODE\_DRAG\_IM) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Infinite\_Sim Definition from XML <Template Name="ASOBO\_GT\_Knob\_Infinite\_Sim"> <UseTemplate Name="ASOBO\_GT\_Anim\_Sim"> <ANIM\_WRAP>True</ANIM\_WRAP> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_Interaction\_WheelAndContinuousLeft"/> </Template>   Templates used: - [ASOBO\_GT\_Anim\_Sim](../animations/#ASOBO_GT_Anim_Sim) Parameters set: - ANIM\_WRAP - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) - May include a subtemplate using the parameter 'SWITCH\_DIRECTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_Horizontal](../subtemplates/interactions-subtemplates/#ASOBO_GT_Interaction_WheelAndContinuousLeft_Horizontal) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Infinite\_Push Definition from XML <Template Name="ASOBO\_GT\_Knob\_Infinite\_Push"> <DefaultTemplateParameters> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <ANIMREF\_ID>-1</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <OVERRIDE\_PUSH\_ANIM\_CODE>(O:\_PushAnimVar)</OVERRIDE\_PUSH\_ANIM\_CODE> </DefaultTemplateParameters> <Condition> <Test> <Or> <Arg Valid="ANIM\_HANDLED\_SEPARATELY"/> <Arg Valid="PUSH\_ANIM\_HANDLED\_SEPARATELY"/> </Or> </Test> <False> <Update Frequency="10"> (O:\_ButtonPressed) 0 > if{ \#ANIM\_LENGTH\_PUSH\# (>O:\_PushAnimVar) } els{ (O:\_PushAnimVar) \#ANIM\_LENGTH\_PUSH\# 0.7 \* - 0 max (>O:\_PushAnimVar) } </Update> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <ANIM\_CODE>\#OVERRIDE\_PUSH\_ANIM\_CODE\#</ANIM\_CODE> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> </UseTemplate> </False> </Condition> <UseTemplate Name="ASOBO\_GT\_Knob\_Infinite"> <Condition Valid="ANIM\_HANDLED\_SEPARATELY"> <False> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> </False> </Condition> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_LENGTH\_PUSH - ANIM\_LENGTH\_KNOB - ROTATION\_SPEED - CENTER\_RADIUS - ANIMREF\_ID - ANIMTIP\_0\_ON\_CURSOR - ANIMTIP\_1\_ON\_CURSOR - OVERRIDE\_PUSH\_ANIM\_CODE   Templates used: - [ASOBO\_GT\_Knob\_Infinite](knob/#ASOBO_GT_Knob_Infinite) - May include a subtemplate using the parameter 'EXTRA\_INTERACTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Parameters set: - EXTRA\_INTERACTION Condition: Valid(ANIM\_HANDLED\_SEPARATELY) - Case: False Parameters set: - ANIM\_NAME (using ANIM\_NAME\_KNOB) - ANIM\_LENGTH (using ANIM\_LENGTH\_KNOB) Condition: Test(ANIM\_HANDLED\_SEPARATELY, PUSH\_ANIM\_HANDLED\_SEPARATELY) - Case: False Parameters read: - ANIM\_LENGTH\_PUSH   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) - ANIM\_LENGTH (using ANIM\_LENGTH\_PUSH) - ANIM\_CODE (using OVERRIDE\_PUSH\_ANIM\_CODE) - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Infinite\_Pull Definition from XML <Template Name="ASOBO\_GT\_Knob\_Infinite\_Pull"> <DefaultTemplateParameters> <ANIM\_LENGTH\_PULL>100</ANIM\_LENGTH\_PULL> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <ANIMREF\_ID>-1</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <LEFT\_SINGLE\_CODE>(O:PullAnimVar) ! (>O:PullAnimVar)</LEFT\_SINGLE\_CODE> <ANIM\_CODE>(O:PullAnimVar)</ANIM\_CODE> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim"> <ANIM\_NAME>\#ANIM\_NAME\_PULL\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PULL\#</ANIM\_LENGTH> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PULL\#</ANIM\_NAME> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_Knob\_Infinite"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_LeftSingle</EXTRA\_INTERACTION> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_LENGTH\_PULL - ANIM\_LENGTH\_KNOB - ROTATION\_SPEED - CENTER\_RADIUS - ANIMREF\_ID - ANIMTIP\_0\_ON\_CURSOR - ANIMTIP\_1\_ON\_CURSOR - LEFT\_SINGLE\_CODE - ANIM\_CODE   Templates used: - [ASOBO\_GT\_Anim](../animations/#ASOBO_GT_Anim) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PULL) - ANIM\_LENGTH (using ANIM\_LENGTH\_PULL) - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PULL) - [ASOBO\_GT\_Knob\_Infinite](knob/#ASOBO_GT_Knob_Infinite) - May include a subtemplate using the parameter 'EXTRA\_INTERACTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_KNOB) - ANIM\_LENGTH (using ANIM\_LENGTH\_KNOB) - EXTRA\_INTERACTION [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Infinite\_PushPull Definition from XML <Template Name="ASOBO\_GT\_Knob\_Infinite\_PushPull"> <Parameters Type="Default"> <ANIM\_LENGTH\_PUSHPULL>100</ANIM\_LENGTH\_PUSHPULL> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0</CENTER\_RADIUS> <ANIMREF\_ID>-1</ANIMREF\_ID> <ANIMTIP\_0\_ON\_CURSOR>TurnLeft</ANIMTIP\_0\_ON\_CURSOR> <ANIMTIP\_1\_ON\_CURSOR>TurnRight</ANIMTIP\_1\_ON\_CURSOR> <WWISE\_EVENT\_PUSH>\#WWISE\_EVENT\_1\#</WWISE\_EVENT\_PUSH> <WWISE\_EVENT\_PULL>\#WWISE\_EVENT\_1\#</WWISE\_EVENT\_PULL> <WWISE\_EVENT\_BACK\_TO\_CENTER>\#WWISE\_EVENT\_2\#</WWISE\_EVENT\_BACK\_TO\_CENTER> <NORMALIZED\_TIME\_PUSH\_ON>0.6</NORMALIZED\_TIME\_PUSH\_ON> <NORMALIZED\_TIME\_PUSH\_OFF>0.9</NORMALIZED\_TIME\_PUSH\_OFF> <NORMALIZED\_TIME\_PULL\_ON>0.4</NORMALIZED\_TIME\_PULL\_ON> <NORMALIZED\_TIME\_PULL\_OFF>0.1</NORMALIZED\_TIME\_PULL\_OFF> </Parameters> <UseTemplate Name="ASOBO\_GT\_Anim"> <ANIM\_NAME>\#ANIM\_NAME\_PUSHPULL\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSHPULL\#</ANIM\_LENGTH> <ANIM\_CODE>(O:IsPulled) if{ 0 } els{ 100 50 (O:IsPushed) ? }</ANIM\_CODE> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSHPULL\#</ANIM\_NAME> <WWISE\_EVENT\_1>\#WWISE\_EVENT\_PUSH\#</WWISE\_EVENT\_1> <WWISE\_EVENT\_2>\#WWISE\_EVENT\_BACK\_TO\_CENTER\#</WWISE\_EVENT\_2> <NORMALIZED\_TIME\_1>\#NORMALIZED\_TIME\_PUSH\_ON\#</NORMALIZED\_TIME\_1> <NORMALIZED\_TIME\_2>\#NORMALIZED\_TIME\_PUSH\_OFF\#</NORMALIZED\_TIME\_2> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSHPULL\#</ANIM\_NAME> <WWISE\_EVENT\_1>\#WWISE\_EVENT\_PULL\#</WWISE\_EVENT\_1> <WWISE\_EVENT\_2>\#WWISE\_EVENT\_BACK\_TO\_CENTER\#</WWISE\_EVENT\_2> <NORMALIZED\_TIME\_1>\#NORMALIZED\_TIME\_PULL\_ON\#</NORMALIZED\_TIME\_1> <NORMALIZED\_TIME\_2>\#NORMALIZED\_TIME\_PULL\_OFF\#</NORMALIZED\_TIME\_2> <DIRECTION\_1>Backward</DIRECTION\_1> <DIRECTION\_2>Forward</DIRECTION\_2> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_Knob\_Infinite"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_PushPull</EXTRA\_INTERACTION> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_LENGTH\_PUSHPULL - ANIM\_LENGTH\_KNOB - ROTATION\_SPEED - CENTER\_RADIUS - ANIMREF\_ID - ANIMTIP\_0\_ON\_CURSOR - ANIMTIP\_1\_ON\_CURSOR - WWISE\_EVENT\_PUSH (using WWISE\_EVENT\_1) - WWISE\_EVENT\_PULL (using WWISE\_EVENT\_1) - WWISE\_EVENT\_BACK\_TO\_CENTER (using WWISE\_EVENT\_2) - NORMALIZED\_TIME\_PUSH\_ON - NORMALIZED\_TIME\_PUSH\_OFF - NORMALIZED\_TIME\_PULL\_ON - NORMALIZED\_TIME\_PULL\_OFF   Templates used: - [ASOBO\_GT\_Anim](../animations/#ASOBO_GT_Anim) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSHPULL) - ANIM\_LENGTH (using ANIM\_LENGTH\_PUSHPULL) - ANIM\_CODE - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSHPULL) - WWISE\_EVENT\_1 (using WWISE\_EVENT\_PUSH) - WWISE\_EVENT\_2 (using WWISE\_EVENT\_BACK\_TO\_CENTER) - NORMALIZED\_TIME\_1 (using NORMALIZED\_TIME\_PUSH\_ON) - NORMALIZED\_TIME\_2 (using NORMALIZED\_TIME\_PUSH\_OFF) - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSHPULL) - WWISE\_EVENT\_1 (using WWISE\_EVENT\_PULL) - WWISE\_EVENT\_2 (using WWISE\_EVENT\_BACK\_TO\_CENTER) - NORMALIZED\_TIME\_1 (using NORMALIZED\_TIME\_PULL\_ON) - NORMALIZED\_TIME\_2 (using NORMALIZED\_TIME\_PULL\_OFF) - DIRECTION\_1 - DIRECTION\_2 - [ASOBO\_GT\_Knob\_Infinite](knob/#ASOBO_GT_Knob_Infinite) - May include a subtemplate using the parameter 'EXTRA\_INTERACTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_PushPull](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_PushPull) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_KNOB) - ANIM\_LENGTH (using ANIM\_LENGTH\_KNOB) - EXTRA\_INTERACTION [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Infinite\_Push\_Timed Definition from XML <Template Name="ASOBO\_GT\_Knob\_Infinite\_Push\_Timed"> <DefaultTemplateParameters> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <LEFT\_SINGLE\_CODE/> <LEFT\_LEAVE\_CODE/> <LOCKABLE\_EVENT\_SECONDARY>LeftRelease</LOCKABLE\_EVENT\_SECONDARY> <NO\_LOCK\_EVENT\_SECONDARY>RightRelease</NO\_LOCK\_EVENT\_SECONDARY> <MOUSEFLAGS\_DRAG\_IM>RightAll+LeftAll+Wheel+Lock+Unlock</MOUSEFLAGS\_DRAG\_IM> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Knob\_Infinite"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <EXTRA\_INTERACTION>\_LeftSingleTimed</EXTRA\_INTERACTION> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <ANIM\_CODE>(O:\_PressTime) 0 > if{ \#ANIM\_LENGTH\_PUSH\# (>O:\_PushAnimVar) } els{ (O:\_PushAnimVar) \#ANIM\_LENGTH\_PUSH\# 0.7 \* - 0 max (>O:\_PushAnimVar) } (O:\_PushAnimVar)</ANIM\_CODE> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_LENGTH\_PUSH - ANIM\_LENGTH\_KNOB - ROTATION\_SPEED - CENTER\_RADIUS - LEFT\_SINGLE\_CODE - LEFT\_LEAVE\_CODE - LOCKABLE\_EVENT\_SECONDARY - NO\_LOCK\_EVENT\_SECONDARY - MOUSEFLAGS\_DRAG\_IM   Templates used: - [ASOBO\_GT\_Knob\_Infinite](knob/#ASOBO_GT_Knob_Infinite) - May include a subtemplate using the parameter 'EXTRA\_INTERACTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingleTimed](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingleTimed) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_KNOB) - ANIM\_LENGTH (using ANIM\_LENGTH\_KNOB) - EXTRA\_INTERACTION - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) - ANIM\_LENGTH (using ANIM\_LENGTH\_PUSH) - ANIM\_CODE (using ANIM\_LENGTH\_PUSH) - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Knob\_Finite\_Code\_Push\_Timed Definition from XML <Template Name="ASOBO\_GT\_Knob\_Finite\_Code\_Push\_Timed"> <DefaultTemplateParameters> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> <ANIM\_LENGTH\_KNOB>100</ANIM\_LENGTH\_KNOB> <ROTATION\_SPEED>10</ROTATION\_SPEED> <CENTER\_RADIUS>0.004</CENTER\_RADIUS> <LEFT\_SINGLE\_CODE/> <LEFT\_LEAVE\_CODE/> <ANIM\_CODE\_KNOB/> <LOCKABLE\_EVENT\_SECONDARY>LeftRelease</LOCKABLE\_EVENT\_SECONDARY> <NO\_LOCK\_EVENT\_SECONDARY>RightRelease</NO\_LOCK\_EVENT\_SECONDARY> <MOUSEFLAGS\_DRAG\_IM>RightAll+LeftAll+Wheel+Lock+Unlock</MOUSEFLAGS\_DRAG\_IM> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Knob\_Finite\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_KNOB\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_KNOB\#</ANIM\_LENGTH> <ANIM\_CODE>\#ANIM\_CODE\_KNOB\#</ANIM\_CODE> <EXTRA\_INTERACTION>\_LeftSingleTimed</EXTRA\_INTERACTION> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <ANIM\_CODE>(O:\_PressTime) 0 > if{ \#ANIM\_LENGTH\_PUSH\# (>O:\_PushAnimVar) } els{ (O:\_PushAnimVar) \#ANIM\_LENGTH\_PUSH\# 0.7 \* - 0 max (>O:\_PushAnimVar) } (O:\_PushAnimVar)</ANIM\_CODE> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_LENGTH\_PUSH - ANIM\_LENGTH\_KNOB - ROTATION\_SPEED - CENTER\_RADIUS - LEFT\_SINGLE\_CODE - LEFT\_LEAVE\_CODE - ANIM\_CODE\_KNOB - LOCKABLE\_EVENT\_SECONDARY - NO\_LOCK\_EVENT\_SECONDARY - MOUSEFLAGS\_DRAG\_IM   Templates used: - [ASOBO\_GT\_Knob\_Finite\_Code](knob/#ASOBO_GT_Knob_Finite_Code) - May include a subtemplate using the parameter 'EXTRA\_INTERACTION' and resolve to the following template(s): - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingleTimed](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingleTimed) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft\_LeftSingle](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle) - [ASOBO\_GT\_Interaction\_WheelAndContinuousLeft](../interactions/#ASOBO_GT_Interaction_WheelAndContinuousLeft) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_KNOB) - ANIM\_LENGTH (using ANIM\_LENGTH\_KNOB) - ANIM\_CODE (using ANIM\_CODE\_KNOB) - EXTRA\_INTERACTION - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) - ANIM\_LENGTH (using ANIM\_LENGTH\_PUSH) - ANIM\_CODE (using ANIM\_LENGTH\_PUSH) - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html)