2016-11-25 19 views
0

我正在製作一個threejs遊戲。三個js對象z在碗上移動的位置

現在,會發生什麼是,來自Z位置一球-5000 0

這是我如何創建網格:

let geometry = new THREE.SphereGeometry(100, 32, 32); 
    let material = new THREE.MeshBasicMaterial({ 
     map: loader.load("images/SoftballColor.jpg"), side: THREE.BackSide 
    }); 
    mesh = new THREE.Mesh(geometry, material); 

    mesh.position.set(0,0, -5000); 

在渲染,我運行這個代碼(球越來越近):

mesh.position.z += 50; 

球到我這裏來,但在一條直線上

瓦在我想做的時候,是在一個碗裏做這個。有任何想法嗎?

我會添加一些圖像,使其更清晰。

預先感謝您。

球運動:

enter image description here

回答

0

Sinus功能會有所幫助。

var how_high = 1000; 
var start_position = new THREE.Vector3(0,0,-5000); 

你知道球的位置的z值,因此,它的y值將是

ball.position.y = Math.sin(ball.position.z/start_position.z * Math.PI) * how_high; 

jsfiddle例如

+0

謝謝!偉大的工作:) – Jesse

+0

標記答案被接受,請) – prisoner849

相關問題