我有一個包含23百萬條記錄的表格,其格式如下{atomName,x,y,z,transparent}。對於解決方案,我決定使用OpenGL。我需要諮詢如何提高圖形
我的任務來渲染它。在第一次迭代中,我使用了塊「glBegin/glEnd」,並繪製了每個原子點的顏色。此解決方案工作。但是我得到了0.002 fps。
然後我嘗試使用VBO。我形成了三個緩衝區:頂點,顏色和索引。此解決方案工作。我有60 fps,但我不舒服綁定緩衝區,我正在繪製點,而不是球體。
然後我讀了關於VAO,它可以簡化綁定緩衝區。好的,它工作。我有舒適的約束力。
現在我想繪製球體,而不是點。我認爲,相對於可能構建球體的頂點集合中的每個點形成(具有一定準確性)。但是如果我有2300萬個頂點,我必須計算出12個或更多個頂點與每個點相關。 23 000 000 * 4(float)= 1 Gb的數據,也許這不是一個好的解決方案。
我應該做的最好的下一步行動是什麼?我不能完全理解,在這個任務中適用的着色器或以其他方式存在。
我覺得紋理點精靈可能工作,因爲你的球體從每個視角都是相同的。 –
你是說我應該在每個點(x,y,z)輸出球體的精靈? – ObiSan
紋理點精靈基本上是具有紋理的點。所以它可能(可能)是你已經做了,但你在它之上拍了紋理。這會讓你的原子看起來更加球形。看看這裏http://www.informit.com/articles/article.aspx?p=770639&seqNum=7。或者只是谷歌「紋理點精靈」來得到我的意思。 –