2
three.js所我想創建導入3D模型使用File API以查看瀏覽器的功能。加載資產注入使用文件API
的three.js所裝載機上,我主持的文件工作的偉大。我的理解是加載器使用ajax來檢索文件。
我希望能夠加載在客戶端上,從磁盤上的文件進行查看。這可以如何實現?
three.js所我想創建導入3D模型使用File API以查看瀏覽器的功能。加載資產注入使用文件API
的three.js所裝載機上,我主持的文件工作的偉大。我的理解是加載器使用ajax來檢索文件。
我希望能夠加載在客戶端上,從磁盤上的文件進行查看。這可以如何實現?
您可以覆蓋或「熱補丁」裝載機load()函數,以滿足您的需求。
把你覆蓋之前的任何其他three.js所 - 相關代碼。例如:
THREE.OBJLoader.prototype.load = function(url) {
// copy the function from OBJLoader.js source and change the AJAX calls to File API calls
}
似乎不像別人,ColladaLoader沒有使用原型實現,所以它不是那麼簡單。如果您需要Collada支持,則需要在Loader創建後執行此操作,並直接在加載器實例上覆蓋該函數。這種方法也適用於OBJLoader和其他人。但是你不能事先做到這一點,你需要在你的實際模型加載函數/回調中擁有代碼。
var myloader = new THREE.ColladaLoader();
myloader.load = function(url) {
// copy the function from ColladaLoader.js source and change the AJAX calls to File API calls
}
我在ImageLoader中使用類似的方法,使用畫布自動調整非二冪的紋理到適當的尺寸。
從看看源代碼,AJAX看起來有點硬編碼的...我可能是錯的。 – 2012-06-28 05:32:30
你可以任意加載JSON,只需調用'createModel'而不是'load':'new JSONLoader.createModel(geometry,callback,texturePath);' – Chad 2012-09-25 13:00:16