我在尋找正確的對象使用指南Three.js
,這將允許我從流中讀取大量數據並呈現它,而不必在整個應用程序中將數據存儲在內存中一生。使用Three.js流繪圖
從我的理解中,通過WebGL
這個可以通過gl_drawArray
完成,但是哪個對象代表這種行爲?
當使用ParticleSystem
對象,數據放入內存,因爲我需要所有的點放到一個Geometry
節點將它傳遞給ParticleSystem
之前,所以我不認爲這是合適的。
感謝您提供任何幫助。
編輯: 爲了澄清,我需要讀幾百萬x,y,z
條目,並顯示每個條目爲空間中的點。我使用的是此刻的過程(簡稱):
var geometry = new THREE.Geometry();
while(hasMoreData){
var vertex = new THREE.Vector3(x,y,z);
geometry.vertices.push(vertex);
}
sphere = new THREE.ParticleSystem(geometry, shaderMaterial);
scene.add(sphere);
使用這個過程中,我的內存消耗上升約1GB的建設幾何對象的數據仍然存在。無論如何要從文件中讀取這些數據而不使其保留在內存中?
您能詳細闡述一下您正在流式傳輸什麼樣的數據。動畫的多個框架?大型模型的幾何子集,在不清除介於兩者之間的緩衝區的情況下進行渲染?我無法把頭繞在gl_drawArray會解決的任何流式問題上......也許如果你可以更多地解釋_that_部分,它可能會幫助我們找出three.js方法來完成那個,*或*找出缺陷你的概念方法。 –
謝謝@ Paul-Jan,我已經更新了原始帖子,提供了更多信息。 – BlackBox