2015-10-06 14 views
7

मैं सिर्फ वेब जीएल उपयोग करने के लिए सीख रहा हूँ और three.jsonThree.js - Uncaught TypeError

मैं यूट्यूब पर एक ट्यूटोरियल का पालन किया है और इसके परिणामस्वरूप नीचे कोड के साथ समाप्त हो गया। इस कोड को घन और अक्ष प्रदर्शित करना चाहिए। हालांकि, जब मैं इस कोड वाले पेज को प्रदर्शित करने का प्रयास करता हूं तो मुझे जावास्क्रिप्ट त्रुटि मिलती है। त्रुटि राज्यों:

Uncaught TypeError: this.updateMorphTargets is not a function

मुझे यकीन है कि मैं गलत क्या किया है लेकिन उम्मीद थी कि किसी को यहाँ जो Three.js से परिचित था मुझे बाहर मदद कर सकता है नहीं कर रहा हूँ। आपके समय के लिए बहुत - बहुत धन्यवाद।

jQuery(document).ready(function($){ 

    var scene = new THREE.Scene(); 
    var camera = new THREE.PerspectiveCamera(45, window.innerWidth/window.innerHeight,.1, 500); 
    var renderer = new THREE.WebGLRenderer(); 

    renderer.setClearColor(0x000000); 
    renderer.setSize(window.innerWidth, window.innerHeight); 

    var axis = new THREE.AxisHelper(10); 

    scene.add(axis); 

    var cubeGeometry = new THREE.BoxGeometry(5, 5, 5); 
    var cubeMaterial = new THREE.MeshBasicMaterial({color: 0xdddddd, wireframe:true}); 
    var cube = THREE.Mesh(cubeGeometry, cubeMaterial); 

    cube.position.x = 0; 
    cube.position.y = 0; 
    cube.position.z = 0; 

    scene.add(cube); 

    camera.position.x = 40; 
    camera.position.y = 40; 
    camera.position.z = 40; 

    camera.lookAt(scene.position); 

    $('#webgl-container').append(renderer.domElement); 
    renderer.render(scene, camera); 

}); 
+0

त्रुटि के स्टैक ट्रेस को देखें। यह किस रेखा से निकल रहा है? –

+0

यह लाइन 16 9 27 से तीन.जेएस में आ रहा है जब यह इसे कॉल करने का प्रयास करता है .updateMorphTargets(); – Emberdyn

+0

क्या यह स्टैक ट्रेस की उत्पत्ति है? कोई काम नहीं कर रहा है? –

उत्तर

11

आप एक सरल टाइपिंग त्रुटि हुई, Three.MESH से पहले new ऑपरेटर भूल, तो यह होना चाहिए:

var cube = new THREE.Mesh(cubeGeometry, cubeMaterial); 

new ऑपरेटर, एक बड़ी बात है इसके बिना THREE.Mesh अब एक निर्माता है, लेकिन एक साधारण कार्य यह फ़ंक्शन के अंदर THREE नेमस्पेस ऑब्जेक्ट को संदर्भित करने के लिए बनाता है, जैसा कि नव निर्मित Mesh ऑब्जेक्ट के विपरीत है। THREE नेमस्पेस ऑब्जेक्ट में updateMorphTarget() विधि नहीं है, इसलिए त्रुटि।

+0

आप कहते हैं: "तीन ऑब्जेक्ट में एक अपडेटमोर्फ लक्ष्य() विधि नहीं है", लेकिन आपका मतलब तीन नामस्थान वस्तु है। – nbro

+0

बहुत सच है, वर्तमान शब्द भ्रमित हो सकता है। मैंने जवाब संपादित किया है, धन्यवाद! –

संबंधित मुद्दे