我正在尝试在Three.js中加载模型,但遇到了麻烦。我认为问题是加载器无法找到模型文件,但我不确定。
以下是我的文件层次结构:
我在load_model.js中有以下代码:
var loader = new THREE.JSONLoader( );
var onGeometry = function(geom, mats) {
var mesh = new THREE.Mesh( geom, new THREE.MeshFaceMaterial( mats ) );
scene.add(mesh);
};
var model_url = "model_file.js";
loader.load(model_url, onGeometry);
我通过django load static:
将它加载到index.html文件中{% load static from staticfiles %}
<script src={% static "admin/js/load_model.js" %}></script>
当我在浏览器中检查结果时,它会查找文件“/index/model_file.js”。我需要它来代替文件“Static / admin / js / models / model_file.js”。
所以我的问题更加简洁:如何告诉THREE.JSONloader在当前页面之外的位置查找文件?如果无法做到这一点,我怎样才能让它正确加载模型?
感谢您的帮助。
答案 0 :(得分:0)
为模型文件使用更具描述性的网址?
相对一个
var model_url = ".models/model_file.js";
或绝对的
var model_url = "/admin/js/models/model_file.js";
至少在调试方面会更容易。