我目前使用josdirkson's SVG拉伸腳本來形成20-30個複雜形狀的組。我的目標是在整個用戶的交互過程中單獨操作每個對象以及整個組。到目前爲止,我已經能夠實現這一目標,但是,在各種設備上,我的加載時間可能在7到20秒之間。我想知道是否有很多這可能只是腳本內在的轉換所有的SVG路徑bezierCurves等,如果是這樣的話,我想知道如果一個可行的解決方案可能是以某種方式從Three.js導出到JSON或其他文件類型,然後這些文件類型將成爲用戶從其加載的後續數據源。我一直在尋找at this thread,但是在羣體採購解決方案之前,我不想過於自信。任何建議或意見非常感謝!謝謝!我可以將THREE.Group導出爲JSON以改進我複雜的SVG擠出中的加載/渲染時間嗎?
1
A
回答
1
我可以給你的最好建議是查看加載過程的配置文件。要在Chrome中測試此功能,您可以將console.profile('something');
和console.profileEnd('something');
調用對添加到您要分析的區域的代碼中。然後打開devtools中的Profiles-panel並重新加載頁面/重新運行javascript。
這可能會告訴你,如果你對你的假設是正確的。至少它會幫助你找到JS花費的時間。
如果確實如此,可以使用geometry.toJSON()
和new THREE.JSONLoader().parse(json)
來保存和恢復幾何圖形。在大多數情況下,這應該比以某種方式計算幾何圖形快得多。 (注意:還有其他更節省空間且更高效的緩存方式,但json格式是一個很好的起點)
相關問題
- 1. 我的表單加載時可以凍結我的UI渲染嗎?
- 2. SVG的渲染可以推遲到我完成操縱它嗎?
- 3. 我可以使用Google Maps API將地圖導出爲SVG
- 4. 我們可以找出Paperclip下載完成的時間嗎?
- 5. 我可以強制WPF渲染層嗎?
- 6. 你可以將Jade渲染爲Html嗎?
- 7. 我可以將我的xcode項目遊戲導出到Unity嗎?
- 8. 我可以將WebBrowser控件的渲染引擎更改爲舊版本嗎?
- 9. 我可以更改tpl.php文件的渲染順序嗎
- 10. 我可以改進我的驗證嗎?
- 11. 我可以將畫布導出到Java中的圖像嗎?
- 12. 我可以使用In5將InDesign文件導出到可以加載到Baker Framework中的Html5中嗎?
- 13. 我可以使用JavaScript jQuery改進數千個元素的渲染嗎?
- 14. 'to_yaml'時,我們可以強制渲染文本爲二進制文件嗎?
- 15. 我可以將圖表從網頁導出爲PDF格式嗎?
- 16. 我可以將jmeter測試作爲腳本導出嗎?
- 17. 我可以在90度渲染我的Infragistics UltraWinGrid列標題嗎?
- 18. 我可以將WCF DataContract添加到複雜類型嗎?
- 19. 我可以在Django QuerySet中進行自定義複雜組嗎?
- 20. 我可以在沒有渲染的情況下沿SVG路徑獲取點嗎?
- 21. 可以改進JavaFX 2/8字體的渲染嗎?
- 22. 我可以防止它的包裝引導溢出溢出嗎?
- 23. 我可以在awk中進行基於時間的進度嗎?
- 24. 是否可以將我的SQL複製定義導出到XML?
- 25. 可以link_to導致渲染?
- 26. 我可以導出我的Urban Airship推送設備標記嗎?
- 27. 我可以找出網頁上次上傳的時間嗎?
- 28. 我可以設置彈出窗口的焦點時間嗎?
- 29. 我可以在Drupal中將導入地圖導出爲圖像嗎?
- 30. 我可以渲染HTML5 canvas並將其設置爲HTML IMAGE的源代碼嗎?
謝謝!我會在今晚晚些時候嘗試分析開始/結束觸發器。這超出了我的技能水平,但我很樂意搞清楚它!下面是我拍攝的一個chrome錄製的截圖:http://i.imgur.com/ueXm1Yu.png 我可以將組導出爲JSON並保留個別對象標識嗎?或者可能向上移動層次結構以導出整個場景? – ChrisTalbot
好的,太棒了。這確實看起來像網格的初始構造是問題。您可以嘗試的第一件事是使用更快的三角測量庫,比如mapbox的earcut-library(請參閱https://github.com/mrdoob/three.js/issues/5959#issuecomment-148334316)。我還可以推薦的是在Worker中做三角測量工作,所以你至少不要凍結你的瀏覽器。 –
這個傳奇的最新發展是JSONLoader不支持擠壓對象。我想知道是否需要將所有SVG路徑重新加工爲更小或找到另一種導入對象的方法。深入到三角測量庫似乎有點超出了我的技能水平。 – ChrisTalbot