# CardboardEyeTextureDescription


`#include <cardboard.h>`

Struct to hold information about an eye texture.

## Summary

| ### Public attributes ||
|---|---|
| `https://developers.google.com/cardboard/reference/c/struct/cardboard-eye-texture-description#struct_cardboard_eye_texture_description_1a69376f6b57613eec6c67937a3183e297` | `float` v coordinate of the bottom side of the eye. |
| `https://developers.google.com/cardboard/reference/c/struct/cardboard-eye-texture-description#struct_cardboard_eye_texture_description_1af4cc22c5bdc74a9cdf8c5fe0292d55ed` | `float` u coordinate of the left side of the eye. |
| `https://developers.google.com/cardboard/reference/c/struct/cardboard-eye-texture-description#struct_cardboard_eye_texture_description_1a47554a17ab96794de24d7b07daf73091` | `float` u coordinate of the right side of the eye. |
| `https://developers.google.com/cardboard/reference/c/struct/cardboard-eye-texture-description#struct_cardboard_eye_texture_description_1a4b8ba0d81890be841f7f500664994d63` | `uint64_t` The texture with eye pixels. |
| `https://developers.google.com/cardboard/reference/c/struct/cardboard-eye-texture-description#struct_cardboard_eye_texture_description_1a2148d414b20e31b318eeae4c0b98daa3` | `float` v coordinate of the top side of the eye. |

## Public attributes

### bottom_v

```
float CardboardEyeTextureDescription::bottom_v
```
v coordinate of the bottom side of the eye.

### left_u

```
float CardboardEyeTextureDescription::left_u
```
u coordinate of the left side of the eye.

### right_u

```
float CardboardEyeTextureDescription::right_u
```
u coordinate of the right side of the eye.

### texture

```
uint64_t CardboardEyeTextureDescription::texture
```
The texture with eye pixels.

When using OpenGL ES 2.x and OpenGL ES 3.x, this field corresponds to a GLuint variable.

When using Vulkan, this field corresponds to an uint64_t address pointing to a `VkImage` variable.The SDK client is expected to manage the object ownership and to guarantee the pointer validity during the `https://developers.google.com/cardboard/reference/c/group/distortion-renderer#group__distortion-renderer_1gab5fbf6c9f3dbe5029d228fa2cc68aa80` function execution to ensure it is properly retained. Usage example:


```
VkImage image;
// Initialize and set up the image...
CardboardEyeTextureDescription leftEye;
leftEye.texture = reinterpret_cast(image)
// Fill remaining fields in leftEye...
https://developers.google.com/cardboard/reference/c/group/distortion-renderer#group__distortion-renderer_1gab5fbf6c9f3dbe5029d228fa2cc68aa80(..., &leftEye, ...);
// Clear previous image if it is needed.
```

<br />

When using Metal, this field corresponds to a `CFTypeRef` variable pointing to a `MTLTexture` object. The SDK client is expected to manage the object ownership and to guarantee the pointer validity during the `https://developers.google.com/cardboard/reference/c/group/distortion-renderer#group__distortion-renderer_1gab5fbf6c9f3dbe5029d228fa2cc68aa80` function execution to ensure it is properly retained. Usage example:


```
CardboardEyeTextureDescription leftEye;
leftEye.texture = CFBridgingRetain(_texture);
// Fill remaining fields in leftEye...
CardboardDistortionRenderer_renderEyeToDisplay(..., &leftEye, ...);
CFBridgingRelease(leftEye.texture);
```

<br />

### top_v

```
float CardboardEyeTextureDescription::top_v
```
v coordinate of the top side of the eye.