Файл 404 GLTF не найден - PullRequest
       10

Файл 404 GLTF не найден

1 голос
/ 26 февраля 2020

Итак, я пытаюсь загрузить файл GLTF и получаю эту ошибку: enter image description here

Я не знаю, почему он не может найти и открыть файл , Нужно ли настраивать локальный сервер? Я посмотрел другие примеры онлайн и этот включает в себя DRACOLoader. Правда, я не знаю, для чего это нужно, и мне было интересно, нужно ли мне это реализовать для загрузки.

Вот мой код:

<html>

    <head>
        <meta charset="utf-8">
        <title>Website first attempt</title>


        <style>
            body { margin: 0;
                background: linear-gradient(to bottom, #33ccff 0%, #ffffff 20%);}
            canvas { display: block; }
        </style>

    </head>

    <body>

      <!-- <script type = "module" src="build/myScript.js"></script>-->
       <script type = "module">
        import * as THREE from '../build/three.module.js';

          import { GLTFLoader } from '../build/GLTFLoader.js';

            let scene, camera, renderer, hlight;


            function init () {
                //scene
                scene = new THREE.Scene();

                //camera
                camera = new THREE.PerspectiveCamera(40, window.innerWidth/ window.innerHeight, 1, 5000);

                //light
                hlight = new THREE.AmbientLight (0x404040, 100);
                scene.add(hlight);


                //render                
                renderer = new THREE.WebGLRenderer({antialias:true});
                renderer.setPixelRatio( window.devicePixelRatio );
                renderer.setClearColor( 0x000000, 0 );
                renderer.setSize(window.innerWidth, window.innerHeight);

                document.body.appendChild(renderer.domElement);

                //3d
                let loader = new GLTFLoader();
                loader.load('assets/londonmap.gltf', function(gltf){
                    scene.add(gltf.scene);

                })


            }


            function onWindowResize () {

                camera.aspect = window.innerWidth / window.innerHeight;
                camera.updateProjectionMatrix();
                renderer.setSize(window.innerWidth, window.innerHeight);
                }

                window.addEventListener('resize', onWindowResize, false);

            function animate () {

                requestAnimationFrame(animate);

                render();

            }

            function render() {

                renderer.render( scene, camera );

            }

            init ();
            animate();


       </script>
    </body>
</html>

1 Ответ

0 голосов
/ 26 февраля 2020

DracoLoader необходимо, только если ресурс glTF был сжат с помощью алгоритма сжатия с тем же именем.

HTTP 404 означает, что не удалось загрузить файл (в вашем случае assets/londonmap.gltf) по указанному пути. Поэтому вы должны убедиться, что ресурс действительно присутствует в соответствующем каталоге.

И да, настоятельно рекомендуется работать с локальным веб-сервером. Особенно во избежание проблем с безопасностью браузера. На самом деле проект предоставляет небольшое руководство по этому топи c: Как запускать вещи локально .

...