[Go back to index]

Asobo_EX1\(Generic\)Shared\(Templates\)ParametersFn\Material.xml

Source XML

<ModelBehaviors> <!– IN: EMISSIVE_SIMVAR name of the simvar used to drive the animation –> <!– IN: EMISSIVE_SIMVAR_UNITS name of the simvar used to drive the animation –> <!– IN (opt): EMISSIVE_SIMVAR_BIAS value added to the simvar value returned –> <!– IN (opt): EMISSIVE_SIMVAR_SCALE value multiplied to the simvar value returned (w/ bias already applied) –> <!– IN (opt): OUT_EMISSIVE_CODE_PARAM_NAME Name given to the parameter out, EMISSIVE_CODE by default –> <!– OUT: EMISSIVE_CODE code for this simvar –> <ParametersFn Name=“ASOBO_Emissive_Simvar_Code_Parameters”> <Parameters Type=“Default”> <UseParametersFn Name=“ASOBO_Material_Sim_Default_Parameters”/> <OUT_EMISSIVE_CODE_PARAM_NAME>EMISSIVE_CODE</OUT_EMISSIVE_CODE_PARAM_NAME> <FORMAT_SIMVAR>True</FORMAT_SIMVAR> </Parameters> <ReturnParameters> <UseParametersFn Name=“ASOBO_Transform_Simvar_Helper”> <IN_SIMVAR>#EMISSIVE_SIMVAR#</IN_SIMVAR> <IN_SIMVAR_UNITS>#EMISSIVE_SIMVAR_UNITS#</IN_SIMVAR_UNITS> <Condition NotEmpty=“EMISSIVE_SIMVAR_BIAS”> <OUT_SIMVAR_BIAS>#EMISSIVE_SIMVAR_BIAS#</OUT_SIMVAR_BIAS> </Condition> <Condition NotEmpty=“EMISSIVE_SIMVAR_SCALE”> <OUT_SIMVAR_SCALE>#EMISSIVE_SIMVAR_SCALE#</OUT_SIMVAR_SCALE> </Condition> <IN_PARAM_NAME>EMISSIVE_CODE</IN_PARAM_NAME> <OUT_PARAM_NAME>#OUT_EMISSIVE_CODE_PARAM_NAME#</OUT_PARAM_NAME> </UseParametersFn> </ReturnParameters> </ParametersFn> <!– IN: EMISSIVE_CODE (RPN snippet) –> <!– IN: EMISSIVE_TEST_NO_FAILURE_CODE (RPN snippet, return false to trigger the failure) –> <!– IN (opt): OUT_EMISSIVE_CODE_PARAM_NAME Name given to the parameter out, EMISSIVE_CODE by default –> <!– OUT: EMISSIVE_CODE code for this simvar –> <ParametersFn Name=“ASOBO_Emissive_Failure_Parameters”> <Parameters Type=“Default”> <OUT_EMISSIVE_CODE_PARAM_NAME>EMISSIVE_CODE</OUT_EMISSIVE_CODE_PARAM_NAME> <CODE_WHEN_NO_FAILURE_ACTIVE>#EMISSIVE_CODE#</CODE_WHEN_NO_FAILURE_ACTIVE> </Parameters> <ReturnParameters> <UseParametersFn Name=“ASOBO_Failure_Helper”> <TEST_NO_FAILURE>#EMISSIVE_TEST_NO_FAILURE_CODE#</TEST_NO_FAILURE> <OUT_PARAM_NAME>#OUT_EMISSIVE_CODE_PARAM_NAME#</OUT_PARAM_NAME> </UseParametersFn> </ReturnParameters> </ParametersFn> <!– IN: EMISSIVE_CODE (RPN snippet) –> <!– IN: EMISSIVE_BOOST –> <!– OUT: EMISSIVE_CODE code scaled –> <ParametersFn Name=“ASOBO_Emissive_Boost_Parameters”> <ReturnParameters> <EMISSIVE_CODE>#EMISSIVE_CODE# #EMISSIVE_BOOST# *</EMISSIVE_CODE> </ReturnParameters> </ParametersFn> <!– IN: EMISSIVE_CODE (RPN snippet) –> <!– IN: POTENTIOMETER_FACTOR (ID of the Potentiometer) –> <!– IN: POTENTIOMETER_FACTOR_MIN (Pct Below which the emissive does not go) –> <!– OUT: EMISSIVE_CODE code scaled –> <ParametersFn Name=“ASOBO_Emissive_Potentiometer_Factor_Parameters”> <Parameters Type=“Override”> <POTENTIOMETER_CODE>(A:LIGHT POTENTIOMETER:#POTENTIOMETER_FACTOR#, Percent over 100) *</POTENTIOMETER_CODE> </Parameters> <Parameters Type=“Override”> <Condition NotEmpty=“POTENTIOMETER_FACTOR_MIN”> <POTENTIOMETER_CODE>#POTENTIOMETER_FACTOR_MIN# - #POTENTIOMETER_CODE# #POTENTIOMETER_FACTOR_MIN# +</POTENTIOMETER_CODE> </Condition> </Parameters> <ReturnParameters> <EMISSIVE_CODE>#EMISSIVE_CODE# #POTENTIOMETER_CODE#</EMISSIVE_CODE> </ReturnParameters> </ParametersFn> <!– IN: EMISSIVE_CODE (RPN snippet) –> <!– IN: BOUNCE_POTENTIOMETER (ID of the Potentiometer) –> <!– OUT: EMISSIVE_CODE code with potentiometer set –> <ParametersFn Name=“ASOBO_Emissive_Bounce_Potentiometer_Parameters”> <Parameters Type=“Override”> <SET_POTENTIOMETER_CODE>d 100 * #BOUNCE_POTENTIOMETER# (>K:2:LIGHT_POTENTIOMETER_SET)</SET_POTENTIOMETER_CODE> </Parameters> <ReturnParameters> <EMISSIVE_CODE>#EMISSIVE_CODE# #SET_POTENTIOMETER_CODE#</EMISSIVE_CODE> </ReturnParameters> </ParametersFn> <!– IN: EMISSIVE_CODE (RPN snippet) –> <!– IN: EMISSIVE_FACTOR –> <!– OUT: EMISSIVE_CODE code inverted –> <ParametersFn Name=“ASOBO_Emissive_Invert_Parameters”> <ReturnParameters> <EMISSIVE_CODE>#EMISSIVE_FACTOR# #EMISSIVE_CODE# -</EMISSIVE_CODE> </ReturnParameters> </ParametersFn> <!– Save transforms into Emissive_Code_Transform_Stack depending on some parameters –> <ParametersFn Name=“ASOBO_Process_Emissive_Transforms_Parameters”> <Parameters Type=“Default”> <USE_ASOBO_EMISSIVE_TRANSFORMS>True</USE_ASOBO_EMISSIVE_TRANSFORMS> </Parameters> <Parameters Type=“Default”> <!– Order of definition decides which will be applied first –> <Condition NotEmpty=“PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_FIRST”> <UseParametersFn Name="#PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_FIRST#"/> </Condition> <Condition Valid=“USE_ASOBO_EMISSIVE_TRANSFORMS”> <Condition NotEmpty=“EMISSIVE_TEST_NO_FAILURE_CODE”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Failure_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> <Condition Valid=“INVERT_EMISSIVE”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Invert_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> <Condition NotEmpty=“EMISSIVE_BOOST”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Boost_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> <Condition NotEmpty=“POTENTIOMETER_FACTOR”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Potentiometer_Factor_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> <Condition NotEmpty=“BOUNCE_POTENTIOMETER”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Bounce_Potentiometer_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> </Condition> <Condition NotEmpty=“PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_LAST”> <UseParametersFn Name="#PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_LAST#"/> </Condition> </Parameters> </ParametersFn> <!– IN (opt): OUT_PARAM_NAME (Name of the param to receive the transform index value) –> <!– OUT: Next safe transform index to use –> <ParametersFn Name=“ASOBO_Emissive_Get_Next_Safe_Transform_Index”> <Parameters Type=“Override”> <LoadParameters ID=“Emissive_Code_Transform_Stack”/> </Parameters> <Parameters Type=“Default”> <OUT_PARAM_NAME>NEXT_SAFE_TRANSFORM_INDEX</OUT_PARAM_NAME> </Parameters> <Parameters Type=“Override”> <UseParametersFn Name=“ASOBO_Increment_ID_Helper”> <OUT_PARAM_ID_NAME>NEXT_SAFE_TRANSFORM_INDEX</OUT_PARAM_ID_NAME> </UseParametersFn> </Parameters> <ReturnParameters> <SaveParameters ID=“Emissive_Code_Transform_Stack” Append=“Override”> <NEXT_SAFE_TRANSFORM_INDEX>#NEXT_SAFE_TRANSFORM_INDEX#</NEXT_SAFE_TRANSFORM_INDEX> </SaveParameters> <#OUT_PARAM_NAME#>#NEXT_SAFE_TRANSFORM_INDEX#</#OUT_PARAM_NAME#> </ReturnParameters> </ParametersFn> <ParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <Parameters Type=“Override”> <UseParametersFn Name=“ASOBO_Emissive_Get_Next_Safe_Transform_Index”/> </Parameters> <ReturnParameters> <SaveParameters ID=“Emissive_Code_Transform_Stack” Append=“Default”> <EMISSIVE_CODE_TRANSFORM_PFN_#NEXT_SAFE_TRANSFORM_INDEX#>#TRANSFORM_PFN#</EMISSIVE_CODE_TRANSFORM_PFN_#NEXT_SAFE_TRANSFORM_INDEX#> </SaveParameters> </ReturnParameters> </ParametersFn> </ModelBehaviors>

 

 

ParametersFn

  • ASOBO_Emissive_Simvar_Code_Parameters

    Definition from XML

    <ParametersFn Name=“ASOBO_Emissive_Simvar_Code_Parameters”> <Parameters Type=“Default”> <UseParametersFn Name=“ASOBO_Material_Sim_Default_Parameters”/> <OUT_EMISSIVE_CODE_PARAM_NAME>EMISSIVE_CODE</OUT_EMISSIVE_CODE_PARAM_NAME> <FORMAT_SIMVAR>True</FORMAT_SIMVAR> </Parameters> <ReturnParameters> <UseParametersFn Name=“ASOBO_Transform_Simvar_Helper”> <IN_SIMVAR>#EMISSIVE_SIMVAR#</IN_SIMVAR> <IN_SIMVAR_UNITS>#EMISSIVE_SIMVAR_UNITS#</IN_SIMVAR_UNITS> <Condition NotEmpty=“EMISSIVE_SIMVAR_BIAS”> <OUT_SIMVAR_BIAS>#EMISSIVE_SIMVAR_BIAS#</OUT_SIMVAR_BIAS> </Condition> <Condition NotEmpty=“EMISSIVE_SIMVAR_SCALE”> <OUT_SIMVAR_SCALE>#EMISSIVE_SIMVAR_SCALE#</OUT_SIMVAR_SCALE> </Condition> <IN_PARAM_NAME>EMISSIVE_CODE</IN_PARAM_NAME> <OUT_PARAM_NAME>#OUT_EMISSIVE_CODE_PARAM_NAME#</OUT_PARAM_NAME> </UseParametersFn> </ReturnParameters> </ParametersFn>

    Parameters initialization:

    Return parameters:

    ParametersFn used:

    • ASOBO_Transform_Simvar_Helper Parameters set:

      • IN_SIMVAR (using EMISSIVE_SIMVAR)
      • IN_SIMVAR_UNITS (using EMISSIVE_SIMVAR_UNITS)
      • IN_PARAM_NAME
      • OUT_PARAM_NAME (using OUT_EMISSIVE_CODE_PARAM_NAME)

      Condition: NotEmpty(EMISSIVE_SIMVAR_BIAS)

      • Case: True

        Parameters set:

        • OUT_SIMVAR_BIAS (using EMISSIVE_SIMVAR_BIAS)

      Condition: NotEmpty(EMISSIVE_SIMVAR_SCALE)

      • Case: True

        Parameters set:

        • OUT_SIMVAR_SCALE (using EMISSIVE_SIMVAR_SCALE)
  • ASOBO_Emissive_Failure_Parameters

    Definition from XML

    <ParametersFn Name=“ASOBO_Emissive_Failure_Parameters”> <Parameters Type=“Default”> <OUT_EMISSIVE_CODE_PARAM_NAME>EMISSIVE_CODE</OUT_EMISSIVE_CODE_PARAM_NAME> <CODE_WHEN_NO_FAILURE_ACTIVE>#EMISSIVE_CODE#</CODE_WHEN_NO_FAILURE_ACTIVE> </Parameters> <ReturnParameters> <UseParametersFn Name=“ASOBO_Failure_Helper”> <TEST_NO_FAILURE>#EMISSIVE_TEST_NO_FAILURE_CODE#</TEST_NO_FAILURE> <OUT_PARAM_NAME>#OUT_EMISSIVE_CODE_PARAM_NAME#</OUT_PARAM_NAME> </UseParametersFn> </ReturnParameters> </ParametersFn>

    Parameters initialization:

    • Default Parameters set:

      • OUT_EMISSIVE_CODE_PARAM_NAME
      • CODE_WHEN_NO_FAILURE_ACTIVE (using EMISSIVE_CODE)

    Return parameters:

    ParametersFn used:

    • ASOBO_Failure_Helper Parameters set:

      • TEST_NO_FAILURE (using EMISSIVE_TEST_NO_FAILURE_CODE)
      • OUT_PARAM_NAME (using OUT_EMISSIVE_CODE_PARAM_NAME)
  • ASOBO_Emissive_Boost_Parameters

    Definition from XML

    <ParametersFn Name=“ASOBO_Emissive_Boost_Parameters”> <ReturnParameters> <EMISSIVE_CODE>#EMISSIVE_CODE# #EMISSIVE_BOOST# *</EMISSIVE_CODE> </ReturnParameters> </ParametersFn>

    Return parameters:

    Parameters set:

    • EMISSIVE_CODE (using EMISSIVE_CODE, EMISSIVE_BOOST)
  • ASOBO_Emissive_Potentiometer_Factor_Parameters

    Definition from XML

    <ParametersFn Name=“ASOBO_Emissive_Potentiometer_Factor_Parameters”> <Parameters Type=“Override”> <POTENTIOMETER_CODE>(A:LIGHT POTENTIOMETER:#POTENTIOMETER_FACTOR#, Percent over 100) *</POTENTIOMETER_CODE> </Parameters> <Parameters Type=“Override”> <Condition NotEmpty=“POTENTIOMETER_FACTOR_MIN”> <POTENTIOMETER_CODE>#POTENTIOMETER_FACTOR_MIN# - #POTENTIOMETER_CODE# #POTENTIOMETER_FACTOR_MIN# +</POTENTIOMETER_CODE> </Condition> </Parameters> <ReturnParameters> <EMISSIVE_CODE>#EMISSIVE_CODE# #POTENTIOMETER_CODE#</EMISSIVE_CODE> </ReturnParameters> </ParametersFn>

    Parameters initialization:

    • Override Parameters set:

      • POTENTIOMETER_CODE (using POTENTIOMETER_FACTOR)
    • Override Condition: NotEmpty(POTENTIOMETER_FACTOR_MIN)

      • Case: True

        Parameters set:

        • POTENTIOMETER_CODE (using POTENTIOMETER_FACTOR_MIN, POTENTIOMETER_CODE)

    Return parameters:

    Parameters set:

    • EMISSIVE_CODE (using EMISSIVE_CODE, POTENTIOMETER_CODE)
  • ASOBO_Emissive_Bounce_Potentiometer_Parameters

    Definition from XML

    <ParametersFn Name=“ASOBO_Emissive_Bounce_Potentiometer_Parameters”> <Parameters Type=“Override”> <SET_POTENTIOMETER_CODE>d 100 * #BOUNCE_POTENTIOMETER# (>K:2:LIGHT_POTENTIOMETER_SET)</SET_POTENTIOMETER_CODE> </Parameters> <ReturnParameters> <EMISSIVE_CODE>#EMISSIVE_CODE# #SET_POTENTIOMETER_CODE#</EMISSIVE_CODE> </ReturnParameters> </ParametersFn>

    Parameters initialization:

    • Override Parameters set:

      • SET_POTENTIOMETER_CODE (using BOUNCE_POTENTIOMETER)

    Return parameters:

    Parameters set:

    • EMISSIVE_CODE (using EMISSIVE_CODE, SET_POTENTIOMETER_CODE)
  • ASOBO_Emissive_Invert_Parameters

    Definition from XML

    <ParametersFn Name=“ASOBO_Emissive_Invert_Parameters”> <ReturnParameters> <EMISSIVE_CODE>#EMISSIVE_FACTOR# #EMISSIVE_CODE# -</EMISSIVE_CODE> </ReturnParameters> </ParametersFn>

    Return parameters:

    Parameters set:

    • EMISSIVE_CODE (using EMISSIVE_FACTOR, EMISSIVE_CODE)
  • ASOBO_Process_Emissive_Transforms_Parameters

    Definition from XML

    <ParametersFn Name=“ASOBO_Process_Emissive_Transforms_Parameters”> <Parameters Type=“Default”> <USE_ASOBO_EMISSIVE_TRANSFORMS>True</USE_ASOBO_EMISSIVE_TRANSFORMS> </Parameters> <Parameters Type=“Default”> <Condition NotEmpty=“PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_FIRST”> <UseParametersFn Name="#PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_FIRST#"/> </Condition> <Condition Valid=“USE_ASOBO_EMISSIVE_TRANSFORMS”> <Condition NotEmpty=“EMISSIVE_TEST_NO_FAILURE_CODE”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Failure_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> <Condition Valid=“INVERT_EMISSIVE”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Invert_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> <Condition NotEmpty=“EMISSIVE_BOOST”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Boost_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> <Condition NotEmpty=“POTENTIOMETER_FACTOR”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Potentiometer_Factor_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> <Condition NotEmpty=“BOUNCE_POTENTIOMETER”> <UseParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <TRANSFORM_PFN>ASOBO_Emissive_Bounce_Potentiometer_Parameters</TRANSFORM_PFN> </UseParametersFn> </Condition> </Condition> <Condition NotEmpty=“PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_LAST”> <UseParametersFn Name="#PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_LAST#"/> </Condition> </Parameters> </ParametersFn>

    Parameters initialization:

    • Default Parameters set:

      • USE_ASOBO_EMISSIVE_TRANSFORMS
    • Default Condition: NotEmpty(PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_FIRST)

      • Case: True

        Parameters read:

        • PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_FIRST

        ParametersFn used:

        • #PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_FIRST#

      Condition: Valid(USE_ASOBO_EMISSIVE_TRANSFORMS)

      Condition: NotEmpty(PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_LAST)

      • Case: True

        Parameters read:

        • PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_LAST

        ParametersFn used:

        • #PFN_REGISTER_EMISSIVE_TRANSFORM_APPLIED_LAST#
  • ASOBO_Emissive_Get_Next_Safe_Transform_Index

    Definition from XML

    <ParametersFn Name=“ASOBO_Emissive_Get_Next_Safe_Transform_Index”> <Parameters Type=“Override”> <LoadParameters ID=“Emissive_Code_Transform_Stack”/> </Parameters> <Parameters Type=“Default”> <OUT_PARAM_NAME>NEXT_SAFE_TRANSFORM_INDEX</OUT_PARAM_NAME> </Parameters> <Parameters Type=“Override”> <UseParametersFn Name=“ASOBO_Increment_ID_Helper”> <OUT_PARAM_ID_NAME>NEXT_SAFE_TRANSFORM_INDEX</OUT_PARAM_ID_NAME> </UseParametersFn> </Parameters> <ReturnParameters> <SaveParameters ID=“Emissive_Code_Transform_Stack” Append=“Override”> <NEXT_SAFE_TRANSFORM_INDEX>#NEXT_SAFE_TRANSFORM_INDEX#</NEXT_SAFE_TRANSFORM_INDEX> </SaveParameters> <#OUT_PARAM_NAME#>#NEXT_SAFE_TRANSFORM_INDEX#</#OUT_PARAM_NAME#> </ReturnParameters> </ParametersFn>

    Parameters initialization:

    • Override

    • Default Parameters set:

      • OUT_PARAM_NAME
    • Override ParametersFn used:

    Return parameters:

    Parameters set:

    • NEXT_SAFE_TRANSFORM_INDEX (using NEXT_SAFE_TRANSFORM_INDEX)
    • #OUT_PARAM_NAME# (using NEXT_SAFE_TRANSFORM_INDEX)
  • ASOBO_Emissive_Add_Transform_Helper

    Definition from XML

    <ParametersFn Name=“ASOBO_Emissive_Add_Transform_Helper”> <Parameters Type=“Override”> <UseParametersFn Name=“ASOBO_Emissive_Get_Next_Safe_Transform_Index”/> </Parameters> <ReturnParameters> <SaveParameters ID=“Emissive_Code_Transform_Stack” Append=“Default”> <EMISSIVE_CODE_TRANSFORM_PFN_#NEXT_SAFE_TRANSFORM_INDEX#>#TRANSFORM_PFN#</EMISSIVE_CODE_TRANSFORM_PFN_#NEXT_SAFE_TRANSFORM_INDEX#> </SaveParameters> </ReturnParameters> </ParametersFn>

    Parameters initialization:

    Return parameters:

    Parameters set:

    • EMISSIVE_CODE_TRANSFORM_PFN_#NEXT_SAFE_TRANSFORM_INDEX# (using TRANSFORM_PFN)