我爲模型查看器編寫了一個collada加載程序。網格三角剖分:分離與嵌套循環複雜度
現在寫它遍歷所有的頂點和索引,並創建索引和頂點緩衝區,以便我可以渲染網格。
如果模型不是三角形的,我有兩個選項。我可以在將索引寫入我的緩衝區時對其進行traing(即計算並添加更多索引以創建三角形)。
或者我可以在編寫緩衝區之前使整個網格完整,並保留緩衝區系統原樣(假定網格在手邊進行三角化)。
爲了事先手動模型,我需要將整個東西加載到列表循環中,然後插入新的索引來將4個多邊形分解爲tirangles。
如果我按照我寫的網格進行三角化,我需要對4+多邊形進行編寫,將它們放入一個單獨的緩衝區,然後當緩衝區中有整個4+多邊形時,對它進行三角化並寫入新的指數。
這實際上會爲循環添加另一個循環,每次遇到4+三角形時纔會觸發該循環。
這是迄今爲止我寫的迄今爲止最爲複雜的東西,所以我很難把我的頭圍繞着哪個方向更有效。
其中一個涉及通過複製整個網格來使用兩倍的內存量,以便我可以處理它,另一個涉及一個嵌套for循環,只有當它遇到4個多邊形時纔會觸發。
任何人都可以提供任何意見,我怎麼可以衡量這兩個選項的複雜性,而不需要進行書面和測試兩者?