👟 Moves render functionality to own functions
This commit is contained in:
@@ -219,28 +219,31 @@ const handleResize = () => {
|
|||||||
camera.updateProjectionMatrix();
|
camera.updateProjectionMatrix();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const handleVideoStream = () => {
|
||||||
|
if(!isLoaded || !showStream) return
|
||||||
|
context.drawImage(stream, 0, 0)
|
||||||
|
texture.needsUpdate = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleRobotShadow = () => {
|
||||||
|
if(isLoaded) return
|
||||||
|
const intervalId = setInterval(() => {
|
||||||
|
robot.traverse(c => c.castShadow = true);
|
||||||
|
}, 10);
|
||||||
|
setTimeout(() => {
|
||||||
|
clearInterval(intervalId)
|
||||||
|
}, 1000);
|
||||||
|
isLoaded = true;
|
||||||
|
}
|
||||||
const render = () => {
|
const render = () => {
|
||||||
requestAnimationFrame(render);
|
requestAnimationFrame(render);
|
||||||
renderer.render(scene, camera);
|
renderer.render(scene, camera);
|
||||||
|
|
||||||
if(!robot) return
|
if(!robot) return
|
||||||
|
|
||||||
robot.rotation.z = lerp(robot.rotation.z, MathUtils.degToRad($dataBuffer[1]), 0.1)
|
handleRobotShadow()
|
||||||
|
|
||||||
if(!isLoaded){
|
handleVideoStream()
|
||||||
const intervalId = setInterval(() => {
|
|
||||||
robot.traverse(c => c.castShadow = true);
|
|
||||||
}, 10);
|
|
||||||
setTimeout(() => {
|
|
||||||
clearInterval(intervalId)
|
|
||||||
}, 1000);
|
|
||||||
isLoaded = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(isLoaded && showStream) {
|
|
||||||
context.drawImage(stream, 0, 0)
|
|
||||||
texture.needsUpdate = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (let i = 0; i < servoNames.length; i++) {
|
for (let i = 0; i < servoNames.length; i++) {
|
||||||
modelAngles[i] = lerp(robot.joints[servoNames[i]].angle * (180/Math.PI), modelTargetAngles[i], 0.1)
|
modelAngles[i] = lerp(robot.joints[servoNames[i]].angle * (180/Math.PI), modelTargetAngles[i], 0.1)
|
||||||
|
|||||||
Reference in New Issue
Block a user