建立一个场景,两个相机分别绑定到display1,display2,其中1是1920-1080显示器, 2是3840-2160显示器。并按照U3D 官方manual的说明,对多显示器进行了初始化。
public class multidisplay : MonoBehaviour {
[DllImport("user32.dll")]
static extern bool SetWindowPos(IntPtr hWnd, int hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags);
[DllImport("user32.dll")]
static extern IntPtr GetActiveWindow();
// Use this for initialization
void Start () {
Debug.Log("displays connected: " + Display.displays.Length);
// Display.displays[0] is the primary, default display and is always ON.
// Check if additional displays are available and activate each.
if (Display.displays.Length > 1)
//Display.displays[1].Activate();
Display.displays[1].Activate(3840, 2160,60);
//SetWindowPos(GetActiveWindow(), -1, -1920, 0, 3840, 2160, 0x0040);
}
结果运行后不管怎么样调(选择不同显示器,不同分辨率,以及用SetWindowsPos),要么是1080p的那边正常全屏,4K的只铺满显示器上面一半,要么4K的正常全屏,1080p的只显示出一部分(伸出屏幕外的感觉)。
请问如何能做到两台不同分辨率的显示器均能全屏显示?我用的是扩展桌面方式,因两个相机要显示同一场景的不同内容。
折磨了一个月的,盼大拿协助