V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
gzlock
V2EX  ›  问与答

用“跳一跳”也在用的 three.js 引擎做了个小场景在微信开发者工具中可以看到画面,但是用微信扫码预览却是黑屏,求解

  •  
  •   gzlock · 2018-01-01 21:26:00 +08:00 · 3999 次点击
    这是一个创建于 2526 天前的主题,其中的信息可能已经有所发展或是发生改变。

    测试项目按照教程的来建立,App id 点击了箭头所指的小游戏,创建的模版小游戏 2D 打飞机在微信预览里可以玩的

    然后使用 Three.js ( r88 版本)来实现了一个简单的旋转正方体场景,在开发者工具中可以正常运行

    但是在微信中预览是黑屏

    扫码的微信运行 android 8.0 的系统上,WebGL 的支持程度方面应该不是问题。

    那么问题可能是出在 three.js 版本上?

    可以从 /t/419056 帖子中说到的跳一跳源码找出所使用的 three.js 的版本吗?

    我的 game.js 代码如下

    import './js/libs/weapp-adapter'
    import * as THREE from './js/libs/three'
    
    //weapp-adapter 会提供全局 canvas
    //let canvas = document.querySelector('canvas');
    //if (!canvas) {
    //	canvas = wx.createCanvas()
    //}*/
    
    const scene = new THREE.Scene()
    const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000)
    const renderer = new THREE.WebGLRenderer({canvas})
    renderer.setSize(window.innerWidth, window.innerHeight)
    const cube = new THREE.Mesh(new THREE.BoxGeometry(1, 1, 1), new THREE.MeshBasicMaterial({color: 0x00ff00}))
    scene.add(cube)
    camera.position.z = 5
    
    function render() {
    	cube.rotation.x += 0.05
    	cube.rotation.y += 0.05
    	renderer.render(scene, camera)
    	window.requestAnimationFrame(render)
    }
    
    render()
    

    ps : 萌新水平有限,就不回答与本问题无关的问题了哈,请各位客官老爷见谅

    5 条回复    2018-02-23 16:44:45 +08:00
    gzl0ck
        1
    gzl0ck  
       2018-01-01 21:37:42 +08:00
    沉了顶一下~
    gzlock
        2
    gzlock  
    OP
       2018-01-01 21:52:28 +08:00

    用开发者工具跑了一下跳一跳,也是 three 88 版本。
    这就排除了 three 版本的问题了 。
    那我就真不知道是什么导致了在微信中预览只有黑屏的问题了
    gzlock
        3
    gzlock  
    OP
       2018-01-02 18:17:44 +08:00 via Android
    应该是需要修改 three.js 适应微信小游戏,但是 three.js 代码量巨大,对于新手来说真的抓瞎
    gzl0ck
        4
    gzl0ck  
       2018-01-02 18:22:20 +08:00
    用跳一跳压缩过的代码对比了一下 three.js ,发现的确是有些不同的,但是 three.js 的代码量真的巨大,而且是精简过变量名的,没办法各处详细对比
    coffeSlider
        5
    coffeSlider  
       2018-02-23 16:44:45 +08:00
    找到解决方案了吗?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   916 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 20:34 · PVG 04:34 · LAX 12:34 · JFK 15:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.