【问题标题】:three js isn't activating三个 js 未激活
【发布时间】:2023-01-26 21:26:11
【问题描述】:

这是我的三个js代码

   import * as THREE from "three";
    import images from "./images.js";
    const container = document.querySelector(".three_bg");
    const loader = new THREE.TextureLoader();
    const scene = new THREE.Scene();
    const camera = new THREE.PerspectiveCamera(70,window.innerWidth/window.innerHeight,0.1, 1000);
    
    const renderer = new THREE.WebGL1Renderer({
        antialias: true,
    });
    renderer.setSize(window.innerWidth, window.innerHeight);
    container.appendChild(renderer.domElement);
    
    //responsive
    window.addEventListener("resize", ()=> {
        camera.aspect = window.innerWidth/window.innerHeight;
        camera.updateProjectionMatrix();
        renderer.setSize(window.innerWidth, window.innerHeight);
    });
    
    
    const geometry = new THREE.TorusKnotGeometry( 10, 3, 100, 16 );
    const material = new THREE.MeshBasicMaterial({//color: 0xff0000,
         map:loader.load(images.bg1)});
    
    const mesh = new THREE.Mesh(geometry, material);
    
    scene.add(mesh);
    camera.position.z = 5;
    
    function animate() {
        requestAnimationFrame(animate);
        mesh.rotation.x += 0.01;
        mesh.rotation.y += 0.01;
        renderer.render(scene, camera);
    }
    
    animate();

虽然这是 html 脚本

<script type="module" src="/src/assets/js/threeBg.js"></script>

问题是三个 js 的东西根本没有显示,甚至没有黑屏/它的图像,所以我想这与相机距离等无关。我从我的课程中正确地遵循了所有步骤,安装了三个 js 与“ npm i three”甚至是“npm install three”,添加了“browserslist”:[ “默认” ] 到我的 package.json,在控制台中没有收到任何错误(红色错误,虽然我有一些黄色警告但与此无关)

【问题讨论】:

  • 这是您的大部分代码作为实例:jsfiddle.net/Lbvxqdjn/1。我刚刚将渲染器的画布添加到文档的正文中,并从官方存储库加载了一个纹理。看来您的项目设置有问题。

标签: javascript reactjs json three.js


【解决方案1】:

删除 container.appendChild(renderer.domElement); 并将渲染器定义更改为:

const renderer = new THREE.WebGL1Renderer({
        canvas: container,
        antialias: true,
    });

【讨论】:

    猜你喜欢
    • 2020-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-31
    • 2020-04-18
    • 2018-01-22
    • 2023-03-08
    相关资源
    最近更新 更多