【问题标题】:Three JS boxGeometry, render warning: Render count or primcount is 0三个JS boxGeometry,渲染警告:Render count or primcount is 0
【发布时间】:2016-08-13 06:43:55
【问题描述】:

我正在尝试将数据从 html-form 传递给代表 boxGeometry 的 x、y 和 z 维度的三个参数。当我手动设置参数值时它工作正常,但当参数由表单中输入的值设置时就不行了。

HTML

    <form>
        <input type="text" name="valueX" id="valueX">
        ValueX<br>
        <input type="text" name="valueY" id="valueY">
        ValueY<br>
        <input type="text" name="valueZ" id="valueZ">
        ValueZ<br>
    </form>
    <button onclick="render()">Render that box!</button>

JS

var geometry = newTHREE.BoxGeometry(parseInt(document.getElementById('valueX').value) ,parseInt(document.getElementById('valueY').value) ,parseInt(document.getElementById('valueZ').value));

var material = new THREE.MeshLambertMaterial({color:0x00ff20});

var cube = new THREE.Mesh(geometry,material);

scene.add(cube);

function render (){
 cube.rotation.x += 1;
 cube.rotation.y += 1;
 renderer.render(scene,camera);
}

【问题讨论】:

    标签: javascript three.js


    【解决方案1】:
    <button onclick="go()">Render that box!</button>
    
    
    function go() {
    
        var geometry = new THREE.BoxGeometry( parseInt(document.getElementById('valueX').value), parseInt(document.getElementById('valueY').value), parseInt(document.getElementById('valueZ').value) );
    
        var material = new THREE.MeshLambertMaterial( { color:0x00ff20 } );
    
        var cube = new THREE.Mesh( geometry, material );
    
        scene.add( cube );
    
        render();
    
    }
    

    three.js r.75

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-21
      • 2012-08-10
      • 2013-10-17
      • 1970-01-01
      • 1970-01-01
      • 2013-02-18
      • 2020-04-11
      • 1970-01-01
      相关资源
      最近更新 更多