threed-garden
Version:
ThreeD Garden: WebGL 3D Environment Interface for Next.JS React TypeScript Three.JS React-Three Physics, 2D Paper.JS; APIs: Apollo GraphQL, WordPress; CSS: Tailwind, Radix-UI; Libraries: FarmBot 3D; AI: OpenAI, DeepSeek
31 lines (28 loc) • 987 B
JSX
import * as THREE from 'three'
import React, { Suspense } from 'react'
import { Canvas, useFrame } from '@react-three/fiber'
import Model from './Stacy'
// function Rig() {
// return useFrame((state) => {
// state.camera.position.x = THREE.MathUtils.lerp(state.camera.position.x, 1 + state.mouse.x / 4, 0.075)
// state.camera.position.y = THREE.MathUtils.lerp(state.camera.position.y, 1.5 + state.mouse.y / 4, 0.075)
// })
// }
export default function App() {
return (
<>
<ambientLight />
<directionalLight position={[-5, 5, 5]} castShadow shadow-mapSize={1024} />
<group position={[0, -1, 0]}>
<Suspense fallback={null}>
<Model />
</Suspense>
</group>
<mesh rotation={[-0.5 * Math.PI, 0, 0]} position={[0, -1, 0]} receiveShadow>
<planeGeometry args={[10, 10, 1, 1]} />
<shadowMaterial transparent opacity={0.2} />
</mesh>
{/* <Rig /> */}
</>
)
}