three实现三维户外激光秀舞台场景代码

代码语言:html

所属分类:其他

代码由grok-4.6 ai生成,可能有错误,仅供参考:点击查看提示词

代码描述:户外三维带激光活动舞台

代码标签: three 三维 户外 激光秀 舞台 场景代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>三维户外舞台 - 激光秀 & 随机天气</title>
    <style>
        * { margin: 0; padding: 0; box-sizing: border-box; }
        body { overflow: hidden; background: #000; font-family: 'Segoe UI', sans-serif; }
        #info {
            position: absolute; top: 20px; left: 20px; color: #fff;
            background: rgba(0,0,0,0.65); padding: 12px 20px; border-radius: 8px;
            font-size: 16px; z-index: 10; pointer-events: none;
            text-shadow: 0 1px 3px #000; border: 1px solid rgba(255,255,255,0.15);
        }
        #info span { color: #7af; font-weight: bold; }
    </style>
</head>
<body>
    <div id="info">当前天气: <span id="weatherName">晴朗</span> | 鼠标拖动旋转视角,滚轮缩放</div>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r128/three.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/three@0.128.0/examples/js/controls/OrbitControls.js"></script>
    <script>
        let scene, camera, renderer, controls;
        let ambientLight, dirLight, hemiLight;
        let ground, stageGroup, seatGroup, treeGroup;
        let rainSystem, snowSystem;
        let lasers = [];
        let currentWeather = 'sunny';
        const weatherNames = { sunny: '晴朗', rainy: '下雨', snowy: '下雪', cloudy: '多云' };
        const clock = new THREE.Clock();

        init();
        animate();

        function init() {
            scene = new THREE.Scene();
            scene.background = new THREE.Color(0x87CEEB);
            scene.fog = new THREE.Fog(0x87CEEB, 80, 280);

            camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.5, 500);
            camera.position.set(0, 18, 62);
            camera.lookAt(0, 6, -8);

            renderer = new THREE.WebGLRenderer({ antialias: true });
            renderer.setSize(innerWidth, innerHeight);
            renderer.setPixelRatio(Math.min(devicePi.........完整代码请登录后点击上方下载按钮下载查看

网友评论0