# C1.Util.DX.Vector4

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_Util_DX_Vector4" data-uid="C1.Util.DX.Vector4" class="text-break">Vector4 Struct
</h1>
  <div class="markdown level0 summary"><p>Represents a four dimensional mathematical vector.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iequatable-1">IEquatable</a>&lt;<a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a>&gt;</div>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iformattable">IFormattable</a></div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="C1.Util.DX.html">C1.Util.DX</a></h6>
  <h6><strong>Assembly</strong>: C1.Win.DX.4.8.dll</h6>
  <h5 id="C1_Util_DX_Vector4_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[TypeConverter(typeof(Vector4Converter))]
public struct Vector4 : IEquatable&lt;Vector4&gt;, IFormattable</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">&lt;TypeConverter(GetType(Vector4Converter))&gt;
Public Structure Vector4
    Implements IEquatable(Of Vector4), IFormattable</code></pre>
  </div>
  <h3 id="constructors">Constructors
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_Vector4__ctor_C1_Util_DX_Vector2_System_Single_System_Single_" data-uid="C1.Util.DX.Vector4.#ctor(C1.Util.DX.Vector2,System.Single,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.-ctor.html#C1_Util_DX_Vector4__ctor_C1_Util_DX_Vector2_System_Single_System_Single_">Vector4(Vector2, float, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> struct.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4__ctor_C1_Util_DX_Vector3_System_Single_" data-uid="C1.Util.DX.Vector4.#ctor(C1.Util.DX.Vector3,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.-ctor.html#C1_Util_DX_Vector4__ctor_C1_Util_DX_Vector3_System_Single_">Vector4(Vector3, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> struct.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4__ctor_System_Single_" data-uid="C1.Util.DX.Vector4.#ctor(System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.-ctor.html#C1_Util_DX_Vector4__ctor_System_Single_">Vector4(float)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> struct.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4__ctor_System_Single_System_Single_System_Single_System_Single_" data-uid="C1.Util.DX.Vector4.#ctor(System.Single,System.Single,System.Single,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.-ctor.html#C1_Util_DX_Vector4__ctor_System_Single_System_Single_System_Single_System_Single_">Vector4(float, float, float, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> struct.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4__ctor_System_Single___" data-uid="C1.Util.DX.Vector4.#ctor(System.Single[])">
          <a class="xref" href="C1.Util.DX.Vector4.-ctor.html#C1_Util_DX_Vector4__ctor_System_Single___">Vector4(float[])</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> struct.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="fields">Fields
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_Vector4_One" data-uid="C1.Util.DX.Vector4.One">
          <a class="xref" href="C1.Util.DX.Vector4.One.html">One</a>
        </td>
        <td class="markdown level1 summary"><p>A <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> with all of its components set to one.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_SizeInBytes" data-uid="C1.Util.DX.Vector4.SizeInBytes">
          <a class="xref" href="C1.Util.DX.Vector4.SizeInBytes.html">SizeInBytes</a>
        </td>
        <td class="markdown level1 summary"><p>The size of the <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> type, in bytes.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_UnitW" data-uid="C1.Util.DX.Vector4.UnitW">
          <a class="xref" href="C1.Util.DX.Vector4.UnitW.html">UnitW</a>
        </td>
        <td class="markdown level1 summary"><p>The W unit <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> (0, 0, 0, 1).</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_UnitX" data-uid="C1.Util.DX.Vector4.UnitX">
          <a class="xref" href="C1.Util.DX.Vector4.UnitX.html">UnitX</a>
        </td>
        <td class="markdown level1 summary"><p>The X unit <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> (1, 0, 0, 0).</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_UnitY" data-uid="C1.Util.DX.Vector4.UnitY">
          <a class="xref" href="C1.Util.DX.Vector4.UnitY.html">UnitY</a>
        </td>
        <td class="markdown level1 summary"><p>The Y unit <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> (0, 1, 0, 0).</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_UnitZ" data-uid="C1.Util.DX.Vector4.UnitZ">
          <a class="xref" href="C1.Util.DX.Vector4.UnitZ.html">UnitZ</a>
        </td>
        <td class="markdown level1 summary"><p>The Z unit <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> (0, 0, 1, 0).</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_W" data-uid="C1.Util.DX.Vector4.W">
          <a class="xref" href="C1.Util.DX.Vector4.W.html">W</a>
        </td>
        <td class="markdown level1 summary"><p>The W component of the vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_X" data-uid="C1.Util.DX.Vector4.X">
          <a class="xref" href="C1.Util.DX.Vector4.X.html">X</a>
        </td>
        <td class="markdown level1 summary"><p>The X component of the vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Y" data-uid="C1.Util.DX.Vector4.Y">
          <a class="xref" href="C1.Util.DX.Vector4.Y.html">Y</a>
        </td>
        <td class="markdown level1 summary"><p>The Y component of the vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Z" data-uid="C1.Util.DX.Vector4.Z">
          <a class="xref" href="C1.Util.DX.Vector4.Z.html">Z</a>
        </td>
        <td class="markdown level1 summary"><p>The Z component of the vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Zero" data-uid="C1.Util.DX.Vector4.Zero">
          <a class="xref" href="C1.Util.DX.Vector4.Zero.html">Zero</a>
        </td>
        <td class="markdown level1 summary"><p>A <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> with all of its components set to zero.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_Vector4_IsNormalized" data-uid="C1.Util.DX.Vector4.IsNormalized">
          <a class="xref" href="C1.Util.DX.Vector4.IsNormalized.html#C1_Util_DX_Vector4_IsNormalized">IsNormalized</a>
        </td>
        <td class="markdown level1 summary"><p>Gets a value indicting whether this instance is normalized.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Item_System_Int32_" data-uid="C1.Util.DX.Vector4.Item(System.Int32)">
          <a class="xref" href="C1.Util.DX.Vector4.Item.html#C1_Util_DX_Vector4_Item_System_Int32_">this[int]</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the component at the specified index.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Length" data-uid="C1.Util.DX.Vector4.Length">
          <a class="xref" href="C1.Util.DX.Vector4.Length.html#C1_Util_DX_Vector4_Length">Length</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the length of the vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_LengthSquared" data-uid="C1.Util.DX.Vector4.LengthSquared">
          <a class="xref" href="C1.Util.DX.Vector4.LengthSquared.html#C1_Util_DX_Vector4_LengthSquared">LengthSquared</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the squared length of the vector.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_Vector4_Abs_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Abs(C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Abs.html#C1_Util_DX_Vector4_Abs_C1_Util_DX_Vector4_">Abs(Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a vector whose elements are the absolute values of each of the specified vector's elements.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_AbsRef_C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.AbsRef(C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.AbsRef.html#C1_Util_DX_Vector4_AbsRef_C1_Util_DX_Vector4__">AbsRef(ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Calculates the absolute value vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_AbsRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.AbsRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.AbsRef.html#C1_Util_DX_Vector4_AbsRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__">AbsRef(out Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a vector whose elements are the absolute values of each of the specified vector's elements.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Add_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Add(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Add.html#C1_Util_DX_Vector4_Add_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">Add(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Adds two vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_AddRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.AddRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.AddRef.html#C1_Util_DX_Vector4_AddRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__">AddRef(out Vector4, ref Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Adds two vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Clamp_C1_Util_DX_Vector4_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Clamp(C1.Util.DX.Vector4,C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Clamp.html#C1_Util_DX_Vector4_Clamp_C1_Util_DX_Vector4_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">Clamp(Vector4, Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Restricts a vector between a minimum and a maximum value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_ClampRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.ClampRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.ClampRef.html#C1_Util_DX_Vector4_ClampRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__">ClampRef(out Vector4, ref Vector4, ref Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Restricts a vector between a minimum and a maximum value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Divide_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Divide(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Divide.html#C1_Util_DX_Vector4_Divide_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">Divide(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Divides the first vector by the second.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Divide_C1_Util_DX_Vector4_System_Single_" data-uid="C1.Util.DX.Vector4.Divide(C1.Util.DX.Vector4,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.Divide.html#C1_Util_DX_Vector4_Divide_C1_Util_DX_Vector4_System_Single_">Divide(Vector4, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Divides the specified vector by a specified scalar value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_DivideRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.DivideRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.DivideRef.html#C1_Util_DX_Vector4_DivideRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__">DivideRef(out Vector4, ref Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Divides the first vector by the second.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_DivideRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__System_Single_" data-uid="C1.Util.DX.Vector4.DivideRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.DivideRef.html#C1_Util_DX_Vector4_DivideRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__System_Single_">DivideRef(out Vector4, ref Vector4, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Divides the specified vector by a specified scalar value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Dot_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Dot(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Dot.html#C1_Util_DX_Vector4_Dot_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">Dot(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Calculates the dot product of two vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_DotRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.DotRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.DotRef.html#C1_Util_DX_Vector4_DotRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__">DotRef(ref Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Calculates the dot product of two vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Equals_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Equals(C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Equals.html#C1_Util_DX_Vector4_Equals_C1_Util_DX_Vector4_">Equals(Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Determines whether the specified <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> is equal to this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Equals_System_Object_" data-uid="C1.Util.DX.Vector4.Equals(System.Object)">
          <a class="xref" href="C1.Util.DX.Vector4.Equals.html#C1_Util_DX_Vector4_Equals_System_Object_">Equals(object)</a>
        </td>
        <td class="markdown level1 summary"><p>Determines whether the specified <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a> is equal to this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_EqualsRef_C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.EqualsRef(C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.EqualsRef.html#C1_Util_DX_Vector4_EqualsRef_C1_Util_DX_Vector4__">EqualsRef(ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Determines whether the specified <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> is equal to this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_GetHashCode" data-uid="C1.Util.DX.Vector4.GetHashCode">
          <a class="xref" href="C1.Util.DX.Vector4.GetHashCode.html#C1_Util_DX_Vector4_GetHashCode">GetHashCode()</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a hash code for this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Lerp_C1_Util_DX_Vector4_C1_Util_DX_Vector4_System_Single_" data-uid="C1.Util.DX.Vector4.Lerp(C1.Util.DX.Vector4,C1.Util.DX.Vector4,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.Lerp.html#C1_Util_DX_Vector4_Lerp_C1_Util_DX_Vector4_C1_Util_DX_Vector4_System_Single_">Lerp(Vector4, Vector4, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Performs a linear interpolation between two vectors based on the given weighting.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_LerpRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__System_Single_" data-uid="C1.Util.DX.Vector4.LerpRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.LerpRef.html#C1_Util_DX_Vector4_LerpRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__System_Single_">LerpRef(out Vector4, ref Vector4, ref Vector4, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Performs a linear interpolation between two vectors based on the given weighting.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Max_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Max(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Max.html#C1_Util_DX_Vector4_Max_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">Max(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a vector containing the largest components of the specified vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_MaxRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.MaxRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.MaxRef.html#C1_Util_DX_Vector4_MaxRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__">MaxRef(out Vector4, ref Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a vector containing the largest components of the specified vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Min_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Min(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Min.html#C1_Util_DX_Vector4_Min_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">Min(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a vector containing the smallest components of the specified vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_MinRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.MinRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.MinRef.html#C1_Util_DX_Vector4_MinRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__">MinRef(out Vector4, ref Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a vector containing the smallest components of the specified vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Multiply_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Multiply(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Multiply.html#C1_Util_DX_Vector4_Multiply_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">Multiply(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Modulates a vector with another by performing component-wise multiplication.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Multiply_C1_Util_DX_Vector4_System_Single_" data-uid="C1.Util.DX.Vector4.Multiply(C1.Util.DX.Vector4,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.Multiply.html#C1_Util_DX_Vector4_Multiply_C1_Util_DX_Vector4_System_Single_">Multiply(Vector4, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Scales a vector by the given value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_MultiplyRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.MultiplyRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.MultiplyRef.html#C1_Util_DX_Vector4_MultiplyRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__">MultiplyRef(out Vector4, ref Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Modulates a vector with another by performing component-wise multiplication.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_MultiplyRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__System_Single_" data-uid="C1.Util.DX.Vector4.MultiplyRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.MultiplyRef.html#C1_Util_DX_Vector4_MultiplyRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__System_Single_">MultiplyRef(out Vector4, ref Vector4, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Scales a vector by the given value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Negate_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Negate(C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Negate.html#C1_Util_DX_Vector4_Negate_C1_Util_DX_Vector4_">Negate(Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Reverses the direction of a given vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_NegateRef_C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.NegateRef(C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.NegateRef.html#C1_Util_DX_Vector4_NegateRef_C1_Util_DX_Vector4__">NegateRef(ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Reverses the direction of the vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_NegateRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.NegateRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.NegateRef.html#C1_Util_DX_Vector4_NegateRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__">NegateRef(out Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Reverses the direction of a given vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Normalize_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Normalize(C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Normalize.html#C1_Util_DX_Vector4_Normalize_C1_Util_DX_Vector4_">Normalize(Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Converts the vector into a unit vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_NormalizeRef_C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.NormalizeRef(C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.NormalizeRef.html#C1_Util_DX_Vector4_NormalizeRef_C1_Util_DX_Vector4__">NormalizeRef(ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Converts the vector into a unit vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_NormalizeRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.NormalizeRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.NormalizeRef.html#C1_Util_DX_Vector4_NormalizeRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__">NormalizeRef(out Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Converts the vector into a unit vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_Subtract_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.Subtract(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.Subtract.html#C1_Util_DX_Vector4_Subtract_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">Subtract(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Subtracts two vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_SubtractRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__" data-uid="C1.Util.DX.Vector4.SubtractRef(C1.Util.DX.Vector4@,C1.Util.DX.Vector4@,C1.Util.DX.Vector4@)">
          <a class="xref" href="C1.Util.DX.Vector4.SubtractRef.html#C1_Util_DX_Vector4_SubtractRef_C1_Util_DX_Vector4__C1_Util_DX_Vector4__C1_Util_DX_Vector4__">SubtractRef(out Vector4, ref Vector4, ref Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Subtracts two vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_ToArray" data-uid="C1.Util.DX.Vector4.ToArray">
          <a class="xref" href="C1.Util.DX.Vector4.ToArray.html#C1_Util_DX_Vector4_ToArray">ToArray()</a>
        </td>
        <td class="markdown level1 summary"><p>Creates an array containing the elements of the vector.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_ToString" data-uid="C1.Util.DX.Vector4.ToString">
          <a class="xref" href="C1.Util.DX.Vector4.ToString.html#C1_Util_DX_Vector4_ToString">ToString()</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a> that represents this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_ToString_System_IFormatProvider_" data-uid="C1.Util.DX.Vector4.ToString(System.IFormatProvider)">
          <a class="xref" href="C1.Util.DX.Vector4.ToString.html#C1_Util_DX_Vector4_ToString_System_IFormatProvider_">ToString(IFormatProvider)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a> that represents this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_ToString_System_String_" data-uid="C1.Util.DX.Vector4.ToString(System.String)">
          <a class="xref" href="C1.Util.DX.Vector4.ToString.html#C1_Util_DX_Vector4_ToString_System_String_">ToString(string)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a> that represents this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_ToString_System_String_System_IFormatProvider_" data-uid="C1.Util.DX.Vector4.ToString(System.String,System.IFormatProvider)">
          <a class="xref" href="C1.Util.DX.Vector4.ToString.html#C1_Util_DX_Vector4_ToString_System_String_System_IFormatProvider_">ToString(string, IFormatProvider)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a> that represents this instance.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="operators">Operators
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Addition_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.op_Addition(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Addition.html#C1_Util_DX_Vector4_op_Addition_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">operator +(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Adds two vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Division_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.op_Division(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Division.html#C1_Util_DX_Vector4_op_Division_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">operator /(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Divides the first vector by the second.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Division_C1_Util_DX_Vector4_System_Single_" data-uid="C1.Util.DX.Vector4.op_Division(C1.Util.DX.Vector4,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Division.html#C1_Util_DX_Vector4_op_Division_C1_Util_DX_Vector4_System_Single_">operator /(Vector4, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Divides the specified vector by a specified scalar value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Equality_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.op_Equality(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Equality.html#C1_Util_DX_Vector4_op_Equality_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">operator ==(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Tests for equality between two objects.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Explicit_C1_Util_DX_Vector4__C1_Util_DX_Vector2" data-uid="C1.Util.DX.Vector4.op_Explicit(C1.Util.DX.Vector4)~C1.Util.DX.Vector2">
          <a class="xref" href="C1.Util.DX.Vector4.op_Explicit.html#C1_Util_DX_Vector4_op_Explicit_C1_Util_DX_Vector4__C1_Util_DX_Vector2">explicit operator Vector2(Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Performs an explicit conversion from <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> to <a class="xref" href="C1.Util.DX.Vector2.html">Vector2</a>.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Explicit_C1_Util_DX_Vector4__C1_Util_DX_Vector3" data-uid="C1.Util.DX.Vector4.op_Explicit(C1.Util.DX.Vector4)~C1.Util.DX.Vector3">
          <a class="xref" href="C1.Util.DX.Vector4.op_Explicit.html#C1_Util_DX_Vector4_op_Explicit_C1_Util_DX_Vector4__C1_Util_DX_Vector3">explicit operator Vector3(Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Performs an explicit conversion from <a class="xref" href="C1.Util.DX.Vector4.html">Vector4</a> to <a class="xref" href="C1.Util.DX.Vector3.html">Vector3</a>.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Inequality_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.op_Inequality(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Inequality.html#C1_Util_DX_Vector4_op_Inequality_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">operator !=(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Tests for inequality between two objects.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Multiply_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.op_Multiply(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Multiply.html#C1_Util_DX_Vector4_op_Multiply_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">operator *(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Modulates a vector with another by performing component-wise multiplication.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Multiply_C1_Util_DX_Vector4_System_Single_" data-uid="C1.Util.DX.Vector4.op_Multiply(C1.Util.DX.Vector4,System.Single)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Multiply.html#C1_Util_DX_Vector4_op_Multiply_C1_Util_DX_Vector4_System_Single_">operator *(Vector4, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Scales a vector by the given value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Multiply_System_Single_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.op_Multiply(System.Single,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Multiply.html#C1_Util_DX_Vector4_op_Multiply_System_Single_C1_Util_DX_Vector4_">operator *(float, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Scales a vector by the given value.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_Subtraction_C1_Util_DX_Vector4_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.op_Subtraction(C1.Util.DX.Vector4,C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.op_Subtraction.html#C1_Util_DX_Vector4_op_Subtraction_C1_Util_DX_Vector4_C1_Util_DX_Vector4_">operator -(Vector4, Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Subtracts two vectors.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Vector4_op_UnaryNegation_C1_Util_DX_Vector4_" data-uid="C1.Util.DX.Vector4.op_UnaryNegation(C1.Util.DX.Vector4)">
          <a class="xref" href="C1.Util.DX.Vector4.op_UnaryNegation.html#C1_Util_DX_Vector4_op_UnaryNegation_C1_Util_DX_Vector4_">operator -(Vector4)</a>
        </td>
        <td class="markdown level1 summary"><p>Reverses the direction of a given vector.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
