【问题标题】:Using three.js JSONloader to load file at specified url (Django)使用three.js JSONloader在指定的url加载文件(Django)
【发布时间】:2013-10-27 22:41:21
【问题描述】:

我正在尝试在 Three.js 中加载模型,但遇到了问题。我认为问题是加载器无法找到模型文件,但我不确定。

以下是我的文件层次结构:

  • 静态
    • 管理员
      • js
        • 型号
          • model_file.js
        • load_model.js
  • web_app_name
    • 模板
      • index.html

我在 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 在当前页面之外的位置查找文件?如果这不可能,我怎样才能让它正确加载模型?

感谢大家的帮助。

【问题讨论】:

    标签: django three.js django-staticfiles file-organization


    【解决方案1】:

    为您的模型文件使用更具描述性的网址?

    亲戚关系

    var model_url = ".models/model_file.js";
    

    或绝对的一个

    var model_url = "/admin/js/models/model_file.js";
    

    至少会更容易调试。

    【讨论】:

    • 我想通了,这或多或少是我使用的解决方案。不过感谢您的帮助。
    猜你喜欢
    • 2012-11-19
    • 2013-04-27
    • 2017-03-19
    • 2012-07-10
    • 2013-07-25
    • 2016-11-27
    • 2018-05-23
    • 1970-01-01
    • 2017-09-04
    相关资源
    最近更新 更多