簡體   English   中英

Three.js-更新的幾何不會呈現更改

[英]Three.js - Updated geometry is not rendering changes

我在這里有一個小問題。 我有一個THREE.Line對象,帶有材質和幾何形狀。 init方法將2個頂點推入幾何體,將“線”添加到場景中,線呈現得很好。

但是我有一個事件偵聽器...在畫布上的每次單擊都會添加另一個頂點。 但是,當渲染場景時,僅渲染原始2個頂點。 我已經輸出了scene.children的轉儲,並且我確定Line在場景中,並且幾何形狀已經改變。

在文檔中,它說明了有關應用的內容:

geometry.dynamic = true
geometry.verticesNeedUpdate = true 

但是這些也不起作用。

請參閱three.js Wiki: https : //github.com/mrdoob/three.js/wiki/Updates

您只能更新緩沖區的內容,不能調整緩沖區的大小(這非常昂貴,基本上等同於創建新的幾何圖形)。

您可以通過預先分配較大的緩沖區,然后保持不需要的頂點折疊/隱藏來模擬大小調整。

通過具有固定大小的頂點緩沖區對象指定幾何形狀。 您可以創建和刪除緩沖區,但不能調整它們的大小。

解決方法是,創建具有額外頂點的幾何並將不想要的頂點折疊到單個點中。

three.js r.52


編輯: 動態地使用three.js繪制線描述了一種更新的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM