# RGBToHSV

> Calculates the hue, saturation and value of an RGB input color.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.7/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

## RGBToHSV(Color, float, float, float)

Calculates the hue, saturation and value of an RGB input color.

```csharp
public static void RGBToHSV(Color rgbColor, out float H, out float S, out float V)
```

### Parameters

**** (\[Color]\(/engine/6000.7/script-reference/unityengine/color)): An input color.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Output variable for hue.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Output variable for saturation.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Output variable for value.

### Remarks

The H, S, and V are output in the range 0.0 to 1.0.

### Examples

```csharp
using UnityEngine;

// Display an RGBA as an HSV

public class ExampleScript : MonoBehaviour
{
    void Start()
    {
        float H, S, V;

        Color.RGBToHSV(new Color(0.9f, 0.7f, 0.1f, 1.0F), out H, out S, out V);
        Debug.Log("H: " + H + " S: " + S + " V: " + V);
    }
}
```

## RGBToHSV(Color, float, float, float)

Calculates the hue, saturation and value of an RGB input color.

```csharp
public static void RGBToHSV(in Color rgbColor, out float H, out float S, out float V)
```

### Parameters

**** (\[Color]\(/engine/6000.7/script-reference/unityengine/color)): An input color.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Output variable for hue.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Output variable for saturation.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Output variable for value.

### Remarks

The H, S, and V are output in the range 0.0 to 1.0.

### Examples

```csharp
using UnityEngine;

// Display an RGBA as an HSV

public class ExampleScript : MonoBehaviour
{
    void Start()
    {
        float H, S, V;

        Color.RGBToHSV(new Color(0.9f, 0.7f, 0.1f, 1.0F), out H, out S, out V);
        Debug.Log("H: " + H + " S: " + S + " V: " + V);
    }
}
```
