# GetPropertyAttributes(int)

> Returns an array of strings containing attributes of the shader property at the specified index.

## Definition

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

```csharp
public string[] GetPropertyAttributes(int propertyIndex)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The index of the shader property.

### Returns

| Type                                                               | Description |
| ------------------------------------------------------------------ | ----------- |
| [string\[\]](https://learn.microsoft.com/dotnet/api/system.string) |             |

### Remarks

Attributes are names enclosed inside a pair of brackets that appear before the property declaration, for example, "\[HideInInspector]". The function returns an empty array if there is no attribute specified for the property.

Unity recognizes some attributes as [ShaderPropertyFlags](/engine/6000.7/script-reference/unityengine/rendering/shaderpropertyflags.md), and does not include those attributes in the return array.

If Unity cannot find a property at the specified index, the function throws an `ArgumentOutOfRangeException`.
