'use client'; import React, { useRef, useMemo } from 'react'; import { Canvas, useFrame } from '@react-three/fiber'; import { Float, Stars } from '@react-three/drei'; import * as THREE from 'three'; // ------------------- Three.js Components ------------------- const GeometryArt = () => { const meshRef = useRef(null); useFrame((state) => { if (meshRef.current) { meshRef.current.rotation.x = state.clock.getElapsedTime() * 0.1; meshRef.current.rotation.y = state.clock.getElapsedTime() * 0.15; } }); return ( ); }; const ConnectingLines = () => { // Create random connections mimicking a network const count = 40; const lines = useMemo(() => { const points: [number, number, number][] = []; // Use a fixed seed for consistent but pseudo-random positioning const seed = 12345; const seededRandom = (i: number) => { const x = Math.sin(seed + i * 12.9898) * 43758.5453123; return x - Math.floor(x); }; for (let i = 0; i < count; i++) { points.push([ (seededRandom(i * 3) - 0.5) * 10, (seededRandom(i * 3 + 1) - 0.5) * 6, (seededRandom(i * 3 + 2) - 0.5) * 5 ]); } return points; }, []); const ref = useRef(null); useFrame((state) => { if (ref.current) { ref.current.rotation.y = -state.clock.getElapsedTime() * 0.05; } }); return ( {lines.map((pos, i) => ( ))} ) } const Scene = () => { return ( <> ); }; // ------------------- Main Component ------------------- const Hero: React.FC = () => { return (
{/* 3D Canvas Layer */}
{/* Content Overlay */}
Est. Nanjing • Technology Leader

数字化未来的
构建者

南京市肥鹅信息技术有限公司致力于为企业提供卓越的数字化解决方案,以创新技术驱动商业价值。

{/* Right side is empty to allow the 3D visual to shine */}
{/* Scroll indicator */}
); }; export default Hero;