2013-10-27 80 views
1

我想在Three.js中加載模型,但遇到了麻煩。我認爲問題在於加載程序無法找到模型文件,但我不確定。使用three.js JSONloader加載指定網址的文件(Django)

以下是我的文件層次:

  • 靜態
    • 管理
      • 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); 

我index.html文件中通過Django的負載靜態加載此:

{% 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

爲模型文件使用更具描述性的URL?

一個相對一個

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

或絕對的

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

這將是更容易調試,至少。

+0

我想通了,這或多或少是我使用的解決方案。感謝您的幫助。 – randomcastle

相關問題