08%
3d-сцены

Вращающийся куб

Сцена с полноценным трёхмерным кубом, непрерывным spin и отдельной кнопкой ускорения.

Three.jsInteractive controls
Подробнее и перенос

Здесь собраны живое демо, prompt для генерации похожего решения и готовый React-сниппет для переноса в HTML embed или кастомный блок Tilda.

Prompt для GPT
Готовая формулировка для генерации похожего эффекта

Создай выразительную 3D-анимацию «Вращающийся куб» для Next.js и React. Нужен эффект: настоящий 3d-куб с управляемой скоростью вращения. Используй Three.js, Interactive controls, тёмный премиальный стиль, плавные переходы, адаптивную вёрстку и состояние preview для карточки.

React-компонент

Вращающийся куб

'use client';

import { Canvas, useFrame } from '@react-three/fiber';
import { useRef, useState } from 'react';
import * as THREE from 'three';

function SpinCube({ speed }: { speed: number }) {
  const ref = useRef<THREE.Mesh>(null);
  useFrame((_, delta) => {
    if (!ref.current) return;
    ref.current.rotation.x += delta * speed * 0.5;
    ref.current.rotation.y += delta * speed;
  });
  return <mesh ref={ref}><boxGeometry args={[1.7, 1.7, 1.7]} /><meshStandardMaterial color="#bbff00" /></mesh>;
}

export function AutoRotationCube() {
  const [speed, setSpeed] = useState(1);

  return (
    <>
      <Canvas><SpinCube speed={speed} /></Canvas>
      <button onClick={() => setSpeed((value) => value + 0.35)}>Ускорить</button>
    </>
  );
}