在全屏WebGL中更改统一宽高比

时间:2017-12-21 13:07:36

标签: unity3d

当WebGL中的游戏全屏时,是否可以更改宽高比?如果是这样,它是柱子还是拉伸以弥补差异?

Screen.SetResolution(800, 600, true);

在WebGL中不起作用。

1 个答案:

答案 0 :(得分:0)

在WebGL中不可能,因为您使用正文和画布大小导出,而不是屏幕分辨率。

您需要在模板css文件中设置画布大小:

<canvas id="c" width="400" height="300"></canvas>

当您进入全屏调整窗口大小时,可以调用此功能调整画布大小:

function resizeCanvas() {
canvas = document.getElementById("c");
gl = canvas.getContext("webgl");
var width = canvas.clientWidth;
var height = canvas.clientHeight;
if (canvas.width != width ||canvas.height != height) 
{
canvas.width = width;
canvas.height = height;

gl.viewport(0, 0, gl.canvas.width, gl.canvas.height);
}
}