Tôi gặp vấn đề lạ với việc hiển thị hình cầu xoay: hoạt ảnh dường như rung và tôi không biết vấn đề này xuất phát từ đâu.Three.js - vấn đề với hiển thị - hoạt ảnh đang lắc
Dưới đây là ví dụ về this link
và chức năng render:
function render() {
controls.update();
requestAnimationFrame(render);
// For camera rotation : parametric parameter
timer = Date.now()*0.0001;
// Coordinates of camera
coordCamera.set(radiusCamera*Math.cos(timer), radiusCamera*Math.sin(timer), 0);
// Rotate camera function
rotateCamera();
// Rendering
renderer.render(scene, camera);
}
với rotateCamera
và computeRotation
chức năng:
function computeRotation (objectRotation, coordObject) {
// Apply rotation matrix
var rotationAll = new THREE.Matrix4();
var rotationX = new THREE.Matrix4().makeRotationX(objectRotation.rotation.x);
var rotationY = new THREE.Matrix4().makeRotationY(objectRotation.rotation.y);
var rotationZ = new THREE.Matrix4().makeRotationZ(objectRotation.rotation.z);
rotationAll.multiplyMatrices(rotationX, rotationY);
rotationAll.multiply(rotationZ);
// Compute world coordinates
coordObject.applyMatrix4(rotationAll);
}
function rotateCamera() {
// Compute coordinates of camera
computeRotation(torus, coordCamera);
// Set camera position for motion
camera.position.set(coordCamera.x, coordCamera.y, coordCamera.z)
}
Nếu ai đó có thể thấy có gì sai, điều này sẽ được tốt đẹp,
Nhờ sự giúp đỡ của bạn
UPDATE:
tôi đã cố gắng để chèn các giải pháp dưới đây của; Tôi đã không nhận được để làm cho công việc hoạt hình, không có gì được hiển thị: đây nỗ lực của tôi trên jsfiddle:
https://jsfiddle.net/ysis81/uau3nw2q/5/
Tôi cũng đã cố gắng với performance.now() nhưng hình ảnh động vẫn còn run rẩy; bạn có thể kiểm tra điều này trên https://jsfiddle.net/ysis81/2Lok5agy/3/
Tôi đã bắt đầu một tiền thưởng để giải quyết vấn đề này.
Bạn có ý gì khi lắc? Bạn đã thử sử dụng vòng lặp trò chơi với thời gian cập nhật liên tục và hoạt ảnh nội suy chưa? –
@ Michał Miszczyszyn Trong vòng quay, quả cầu đang mờ dần, như làm mới hoạt ảnh không liên tục hoặc bị giật ... bạn có nghĩa là bạn không thể tạo lại vấn đề trên máy tính của mình với các liên kết jsfiddle của tôi không? – youpilat13
Hãy thử cách này: https://jsfiddle.net/3urtkpkv/. Bạn không nên hỏi 'TrackballControls' để điều khiển camera và sau đó tự mình kiểm soát máy ảnh. Giữ nó đơn giản. Thực ra, tôi sẽ chuyển sang 'OrbitControls'. Nó có thuộc tính 'autoRotate'. – WestLangley