# Multiply Node ## Description Returns the result of input **A** multiplied by input **B**. If both inputs are a vector type, the output type will be a vector type with the same dimension as the evaluated type of those inputs. If both inputs are a matrix type, the output type will be a matrix type with the same dimension as the evaluated type of those inputs. If one input is a vector type and the other is a matrix type, then output type will be a vector with the same dimension as the vector type input. ## Ports | Name | Direction | Type | Description | |:------------ |:-------------|:-----|:---| | A | Input | Dynamic | First input value | | B | Input | Dynamic | Second input value | | Out | Output | Dynamic | Output value | ## Generated Code Example The following example code represents different possible outcomes of this node. **Vector * Vector** ``` void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out) { Out = A * B; } ``` **Vector * Matrix** ``` void Unity_Multiply_float4_float4x4(float4 A, float4x4 B, out float4 Out) { Out = mul(A, B); } ``` **Matrix * Matrix** ``` void Unity_Multiply_float4x4_float4x4(float4x4 A, float4x4 B, out float4x4 Out) { Out = mul(A, B); } ```