HoudiniEngineUnity.HEU_ParameterUtility.GetParameterFloatValue C# (CSharp) Method

GetParameterFloatValue() public static method

public static GetParameterFloatValue ( HoudiniEngineUnity.HEU_SessionBase session, HAPI_NodeId nodeID, Array parameters, string parameterName, float defaultValue, float &returnValue ) : bool
session HoudiniEngineUnity.HEU_SessionBase
nodeID HAPI_NodeId
parameters Array
parameterName string
defaultValue float
returnValue float
return bool
	public static bool GetParameterFloatValue(HEU_SessionBase session, HAPI_NodeId nodeID, HAPI_ParmInfo[] parameters, string parameterName, float defaultValue, out float returnValue)
	{
	    int parameterIndex = GetParameterIndexFromNameOrTag(session, nodeID, parameters, parameterName);
	    if (parameterIndex < 0 || parameterIndex >= parameters.Length)
	    {
		returnValue = defaultValue;
		return false;
	    }

	    int valueIndex = parameters[parameterIndex].floatValuesIndex;
	    float[] value = new float[1];

	    if (session.GetParamFloatValues(nodeID, value, valueIndex, 1))
	    {
		returnValue = value[0];
		return true;
	    }

	    returnValue = defaultValue;
	    return false;
	}

Usage Example

	// Gets the alpha of the material
	// Checks ogl_use_alpha_transparency to make sure that it's enabled.
	internal static bool GetMaterialAlpha(HEU_SessionBase session, HAPI_NodeId nodeID, HAPI_ParmInfo[] parameters, float defaultValue, out float alpha)
	{

	    int foundUseParmId = HEU_ParameterUtility.GetParameterIndexFromNameOrTag(session, nodeID, parameters, HEU_Defines.MAT_OGL_TRANSPARENCY_ATTR_ENABLED);
	    if (foundUseParmId >= 0)
	    {
		// Found a valid "use" parameter. Check if it is disabled.
		int[] useValue = new int[1];
		int intValuesIndex = parameters[foundUseParmId].intValuesIndex;

		if (session.GetParamIntValues(nodeID, useValue, parameters[foundUseParmId].intValuesIndex, 1))
		{
		    if (useValue.Length > 0 && useValue[0] == 0)
		    {
			// We found the texture, but the use tag is disabled, so don't use it!
			alpha = defaultValue;
			return false;
		    }
		}
	    }

	    if (HEU_ParameterUtility.GetParameterFloatValue(session, nodeID, parameters, HEU_Defines.MAT_OGL_ALPHA_ATTR, defaultValue, out alpha))
	    {
		return true;
	    }

	    if (HEU_ParameterUtility.GetParameterFloatValue(session, nodeID, parameters, HEU_Defines.MAT_ALPHA_ATTR, defaultValue, out alpha))
	    {
		return true;
	    }

	    if (HEU_ParameterUtility.GetParameterFloatValue(session, nodeID, parameters, HEU_Defines.MAT_OGL_TRANSPARENCY_ATTR, defaultValue, out alpha))
	    {
		alpha = 1 - alpha;
		return true;
	    }

	    alpha = defaultValue;
	    return false;
	}
All Usage Examples Of HoudiniEngineUnity.HEU_ParameterUtility::GetParameterFloatValue