2014-02-19 45 views
2

我想加載&使用philoGL從主webgl視圖中刪除模型。 在原始腳本中,我找到了加載一個模型的地方。 但是,我想刪除第一個模型並用第二個模型替換它。加載/刪除PhiloGL中的多個模型 - WebGL

這是一個模型如何在啓動加載:

model = new O3D.Model({ 
    program: 'default', 
    drawType: (item[0] == 't') ? "TRIANGLES" : "TRIANGLE_STRIP", 
    vertices: item[1], 
    normals: item[2], 
    colors: item[3], 
    indices: item[4] 
}); 
scene.add(model); 

我在想運行下面的代碼:

scene.remove(model); 
scene.add(otherModel); 

想法嗎? 謝謝, EL

回答

2

,最好的辦法來取代philoGL一個model

var indexModel = scene.models.indexOf(model); 

if (indexModel > -1) { 
    models.splice(indexModel, 1, otherModel); 
    scene.defineBuffers(otherModel); 
} 

這是因爲你無法跟蹤你想與PhiloGL有方法來代替model的位置。要執行model中的操作,您必須直接訪問Scene對象的models屬性。

+0

謝謝。我得到了這個工作。一個問題依然存在 - >如果已經應用像相機旋轉這樣的轉換,重新加載模型將以初始方向顯示它。我能否以某種方式更新模型座標? –

+0

似乎翻譯/縮放是同步的,但不是模型特定的旋轉。我在不同的條件下顯示同一對象的模型。因此,我希望所有模型都有一致的輪換。 –