收藏
回答

Three.js(webGl) ios端render.setSize 问题

为了增加分辨率,我会吧窗口宽高乘以像素密度后设置给Three的render

let WIDTH = window.innerWidth* pixelRatio;

let HEIGHT = window.innerHeight * pixelRatio;

const renderer = new THREE.WebGLRenderer(context);

renderer.setSize(WIDTH, HEIGHT);


开发工具和安卓真机都没有问题


但是ios端出现以下问题,进入不了游戏,一直在公共加载页,如下图


打开vconsole发现:



如果不乘以系数,render.setSize设置原始窗口高度,ios上正常,但是会像素低

let WIDTH = window.innerWidth* 1;

let HEIGHT = window.innerHeight * 1;

const renderer = new THREE.WebGLRenderer(context);

renderer.setSize(WIDTH, HEIGHT);




最后一次编辑于  02-23
回答关注问题邀请回答
收藏

2 个回答

  • _~胖小代
    _~胖小代
    03-01

    求问如何解决的, threejs 很多不支持的特性也没有问题吗

    03-01
    赞同
    回复 2
    • LZJ丶Fox
      LZJ丶Fox
      03-06

      指定好宽高,然后renderer.setSize  宽高不能超过物理像素

      计算好宽高比然后调整相机位置和fov做的不同设备镜头一致


      游戏都做好就是软著好麻烦,还在写材料,还没还是申请,烦~


      03-06
      回复
    • 唯美的根号三
      唯美的根号三
      09-30回复LZJ丶Fox
      可以加个QQ聊下吗,有点问题想请教
      09-30
      回复
  • 俞楠
    俞楠
    02-25

    有什么解决方案吗?

    02-25
    赞同
    回复 6
    • LZJ丶Fox
      LZJ丶Fox
      02-25

      解决了~~

      02-25
      回复
    • LZJ丶Fox
      LZJ丶Fox
      02-25回复LZJ丶Fox

      现在上线要软著,愁死了,哭~~有木有攻略啊

      02-25
      回复
    • 俞楠
      俞楠
      02-25

      之前也要软著啊

      02-25
      回复
    • 俞楠
      俞楠
      02-25

      去办理一个,很快的

      02-25
      回复
    • 俞楠
      俞楠
      02-25

      请问你解决之后,游戏在安卓机器上运行卡顿吗?

      02-25
      回复
    查看更多(1)