版本: Unity 6 (6000.0)
语言英语
  • C#

Display

UnityEngine 中的类

/

实现于:UnityEngine.CoreModule

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交的内容,但我们确实会阅读用户提出的每个建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

提供对显示器/屏幕的访问以进行渲染操作。

Unity 支持在以下平台上进行多显示器渲染

  • 桌面平台(Windows、macOS X 和 Linux)
  • Android(OpenGL ES 和 Vulkan)
  • iOS

Display 类中的某些功能仅在某些支持的平台上有效。有关平台兼容性的更多信息,请参阅属性和方法。

使用 Display 类对显示器本身进行操作,并使用 Camera.targetDisplay 设置相机以渲染到各个显示器。

其他资源:Camera.targetDisplayCanvas.targetDisplay

using UnityEngine;

public class Example : MonoBehaviour { Camera extCam; Camera cam;

void Start() { // GUI is rendered with last camera. // As we want it to end up in the main screen, make sure main camera is the last one drawn. extCam.depth = cam.depth - 1;

cam.SetTargetBuffers(Display.main.colorBuffer, Display.main.depthBuffer); extCam.enabled = false; }

void Update() { if (Display.displays.Length > 1 && !extCam.enabled) { Display.displays[1].SetRenderingResolution(256, 256); extCam.SetTargetBuffers(Display.displays[1].colorBuffer, Display.displays[1].depthBuffer); } extCam.enabled = Display.displays.Length > 1; } }

静态属性

activeEditorGameViewTarget获取编辑器活动的 GameView 显示目标。
displays已连接显示器的列表。
main主显示器。

属性

active获取显示器的状态,如果显示器处于活动状态,则返回 true,否则返回 false。
colorBuffer颜色渲染缓冲区。
depthBuffer深度渲染缓冲区。
renderingHeight显示器渲染的垂直分辨率。
renderingWidth显示器在视口中渲染的水平分辨率。
requiresBlitToBackbuffer当后台缓冲区需要中间纹理进行渲染时为真。
requiresSrgbBlitToBackbuffer当对后台缓冲区进行 blit 需要手动颜色空间转换时为真。
systemHeight垂直原生显示分辨率。
systemWidth水平原生显示分辨率。

公共方法

Activate激活外部显示器。例如,连接到系统的辅助监视器。
SetParams仅限 Windows 平台。设置屏幕上的渲染大小和位置。
SetRenderingResolution设置显示器的渲染分辨率。

静态方法

RelativeMouseAt查询相对鼠标坐标。