強烈不建議使用 OpenCasCade 庫。大坑。效率殺手,各種不穩定。
曾經做過類似CAD的設計軟體,這裡把想到的和渲染有關的技術點羅列一下。
幾何運算: 建議arx開發庫中的acge庫。對一般的點,向量,矩陣,曲線支援非常好。但不支援體和麵的BOOL運算。多邊形的BOOL運算推薦gpc。
顯示精度: 每個實體的渲染資料不要寫死,顯示的精度和當前視口大小有關,類似CAD的RE命令,重新整理重新建立渲染資料。
皮筋機制:在很多功能的操作過程中,需要實時重新整理場景,當場景資料很大時,會有卡頓。要麼對渲染引擎的效率做最佳化,要麼對皮筋的渲染做區域性重新整理最佳化。
選擇互動:可以利用渲染實現,如OPENGL的選擇模式等。也可以自己建立空間樹運算。
渲染效果:如果渲染效果要求高,建議使用遊戲引擎。如果場景以點,線,簡單材質的面為主,用OPENGL或DX,注意一下效率就好。
強烈不建議使用 OpenCasCade 庫。大坑。效率殺手,各種不穩定。
曾經做過類似CAD的設計軟體,這裡把想到的和渲染有關的技術點羅列一下。
幾何運算: 建議arx開發庫中的acge庫。對一般的點,向量,矩陣,曲線支援非常好。但不支援體和麵的BOOL運算。多邊形的BOOL運算推薦gpc。
顯示精度: 每個實體的渲染資料不要寫死,顯示的精度和當前視口大小有關,類似CAD的RE命令,重新整理重新建立渲染資料。
皮筋機制:在很多功能的操作過程中,需要實時重新整理場景,當場景資料很大時,會有卡頓。要麼對渲染引擎的效率做最佳化,要麼對皮筋的渲染做區域性重新整理最佳化。
選擇互動:可以利用渲染實現,如OPENGL的選擇模式等。也可以自己建立空間樹運算。
渲染效果:如果渲染效果要求高,建議使用遊戲引擎。如果場景以點,線,簡單材質的面為主,用OPENGL或DX,注意一下效率就好。