refactor: use THREE.Clock for animation timing

This commit is contained in:
sayudhalw
2026-08-23 16:04:37 +07:00
parent 421efb9ff1
commit e190aea4b6
+6 -7
View File
@@ -30,19 +30,18 @@ const renderer = new THREE.WebGLRenderer({
})
renderer.setSize(sizes.width, sizes.height)
// Time
let time = Date.now()
// Clock
const clock = new THREE.Clock()
// Animations
const tick = () => {
// Time
const currentTime = Date.now() // ini jadi current time karena ada di dalam fungsi tick, jadi setiap kali tick dipanggil, currentTime akan diperbarui dengan waktu saat ini
const deltaTime = currentTime - time // deltaTime adalah selisih waktu antara currentTime dan time, yang digunakan untuk menghitung perubahan waktu sejak frame terakhir
time = currentTime // Update objects
// Clock
const elapsedTime = clock.getElapsedTime()
// Update objects
mesh.rotation.y += 0.001 * deltaTime // rotasi mesh pada sumbu y, dikalikan dengan deltaTime agar rotasi tetap konsisten meskipun frame rate berubah
mesh.rotation.y += 0.001 * elapsedTime
// Renderer
renderer.render(scene, camera)