Eye Buffer（即眼部缓冲区）处于 VR 设备端 3D 图像渲染的中间一环。在渲染过程中，系统会将每只眼睛的标准视图渲染到 Eye Buffer 中，然后将 Eye Buffer 作为渲染纹理提供给 ATW 线程进行畸变和采样处理。
Eye Buffer 分辨率（即渲染分辨率）大小会影响画面质量和应用性能。分辨率越低，画面质量越低，但同时也会降低延迟并提升应用性能。反之，分辨率越高，画面质量越高，但同时也会提高延迟并降低应用性能。你可根据实际情况，通过调整渲染分辨率来提高图像质量或改善性能。
## 注意事项
提高应用的渲染分辨率可提升画面质量，但可能会对设备的电池寿命造成潜在影响，此外，根据所显示内容的渲染压力，可能会导致 CPU/GPU 节流。通过默认使用较低分辨率的方式，能够确保设备在电源消耗和性能之间保持良好的平衡，但会降低画面质量。
## 使用建议

* 如果你的应用已经具备良好的性能，则可在项目代码库中增加像素密度，提高渲染分辨率，从而提供更加清晰的视觉效果。反之，如果应用无法保持良好的性能，则可以通过降低渲染分辨率来提升性能，但这会降低视觉质量。
* 修改 Eye Buffer 像素大小时，系统总是会重新分配眼部纹理，所以该操作成本较高。如果需要在应用运行时动态修改眼部渲染像素，可以考虑[修改渲染视口尺寸](/render-viewport-scaling)。
* 根据 PICO 商店应用审核标准，你需确保应用在满电设备上运行至少 45 分钟而不触发低电量警告。建议你测试应用的热行为和电池行为，以尽可能地避免意外问题，同时最大化设备的性能和电池寿命。

## 修改方法
Eye Buffer 分辨率值默认为 `1.0`，一般不推荐修改。根据实际需要，你可以通过修改 [XRSettings.eyeTextureResolutionScale](https://docs.unity.cn/cn/2020.2/ScriptReference/XR.XRSettings-eyeTextureResolutionScale.html) 的值来修改 Eye Buffer 分辨率大小。分辨率取值范围为 `0.8` 至 `2.0`。值越大，分辨率越高。不建议设置高于 `1.5` 的值。
```C#
XRSettings.eyeTextureResolutionScale = 1.0f;
```

如果使用了通用渲染管线（URP），请使用如下方法：
```C#
if (GraphicsSettings.renderPipelineAsset != null) {  ((UniversalRenderPipelineAsset)GraphicsSettings.renderPipelineAsset).renderScale = 1;  
}
```

需注意的是，若你设置的分辨率大于 `2.0`，则该设置无效，系统自动使用默认分辨率。若你设置的分辨率位于取值范围内，但该分辨率大于设备所支持的最大分辨率，则系统自动使用设备所支持的最大分辨率。

