没有找到调整的地方,希望各位大佬解答下
顶一下顶一下
找到构建后的first-screen.js文件, 修改下面这个函数
function updateVertexBuffer() {
let designWidth = 960;
let designHeight = 640;
let designRatio = designWidth / designHeight;
let frameRatio = canvas.width / canvas.height;
if (designRatio === frameRatio) {
return;
}
let ratio;
let ratio2;
if (designRatio < frameRatio) {
ratio = canvas.height / designHeight;
let visibleWidth = canvas.width / ratio;
let visibleHeight = designHeight;
ratio2 = Math.max(visibleWidth / image.width, visibleHeight / image.height);
} else {
ratio = canvas.width / designWidth;
let visibleWidth = designWidth;
let visibleHeight = canvas.height / ratio;
ratio2 = Math.max(visibleWidth / image.width, visibleHeight / image.height);
}
let width = image.width * ratio * ratio2;
let height = image.height * ratio * ratio2;
let widthRatio = width / canvas.width;
let heightRatio = height / canvas.height;
const vertices = new Float32Array([
widthRatio, -heightRatio, 1, 1,
widthRatio, heightRatio, 1, 0.0,
-widthRatio, -heightRatio, 0.0, 1,
-widthRatio, heightRatio, 0.0, 0.0,
]);
gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer);
gl.bufferData(gl.ARRAY_BUFFER, vertices, gl.STATIC_DRAW);
}
找到game.js 文件,修改canvas大小
// Adjust initial canvas size
if (canvas && window.devicePixelRatio) {canvas.width *= window.devicePixelRatio; canvas.height *= window.devicePixelRatio;}
谢谢热心的大佬~
用了插屏图片,图片出来前,会有短暂的黑屏吗?
请问这是构建什么平台的啊?我打包的是web-mobile的,没有这两个文件的啊。
这是微信小游戏的
除了微信小游戏的其他的要去引擎代码splash-screen.ts这个文件里面去修改
非常感谢告知。是这样的,我修改了这个splash-screen.ts这个文件之后打包到手机web-mobile上时,里面的log是能显示的,但是我在电脑浏览器里面是没看到这个log的。我看这个文件里面默认的分辨率是812/375的比例是2.1左右的,而不是常见的手机1.7左右比例的,没明白官方为什么优先设置2.1的pad比例
大佬,splash-screen.ts怎么修改的?能贴一下代码吗?
貌似没有了,因为公司项目后面采用显示插屏logo了。