const ascene = AFRAME.scenes[0] const scene = ascene.object3D const object = new THREE.Mesh( new THREE.BoxGeometry(1, 1, 1), new THREE.MeshBasicMaterial({ color: 0xff0000 }) ); object.position.set(0.3, 1.4, -0.4) object.scale.set(0.2,0.2,0.2) // instead of animate() we use onAfterRender // (or monkeypatch AFRAME.scenes[0].renderer.render() for full-control) object.onAfterRender = () => object.rotation.x += 0.01 scene.add(object);