粒子編輯器
先上圖
從根本上說,粒子編輯器沒有什麼複雜的。我們修改滑動條時,也會修改粒子物件的相應屬性。
void editormainwindow::changetangentialaccelerationvariance(double tangentialaccelerationvariance)
}
值得注意的幾點是:qt本身也是使用opengl,而我們用的是glfw。它們之間會互相搶奪
render context。乙個簡單的做法是使用多執行緒,要考慮的也就是執行緒之間的同步了。
dword winapi threadproc(lpvoid lpparam)
void editormainwindow::setupparticle()
如果為了跨平台,可以使用c11的pthread。
儲存檔案時,使用到了qt 修改xml的text。
qdomnode oldnode = particleelement.firstchild(); //標籤之間的內容作為節點的子節點出現,得到原來的子節點
particleelement.firstchild().setnodevalue(value); //用提供的value值來設定子節點的內容
qdomnode newnode = particleelement.firstchild(); //值修改過後的子節點
particleelement.replacechild(newnode,oldnode);
value就是修改後的qstring.
編輯器本質上是將物件的屬性修改封裝到了ui控制項上。
讓乙個對程式不了解的人也能修改物件。而**中的函式和類也是基於同一細想。隱藏細節,提供介面。所呼叫的就是乙個黑盒子。
Ogre粒子編輯器ParticleUniverse
最近需要使用粒子系統製作一些特效,由於沒有美術人員的幫助,製作難度可想而知。在苦悶中,找到了particleuniverse,這也是torchlight採用的粒子系統。particleuniverse包括particle universe editor和particle universe plugi...
Ogre粒子系統編輯器
在ogre程式中,粒子系統可以利用 實現,但也可以利用指令碼語言。不過,一般情況下,都是利用指令碼語言。在ogre中只要將記事本的字尾名定義為.particle,ogre會自動識別其為粒子指令碼。現在有人製作了乙個particleeditor 可以方便的在其介面中設定我們需要的粒子指令碼,同時將其資...
vim編輯器 編輯器之神
h 向左移動 j 向下移動 k 向上移動 l 向右移動 w 移動到下乙個單詞的首部 e 移動到下乙個單詞的尾部 b 移動到上乙個單詞的首部 移動到行首 移動到行尾 g 跳轉到文件的末尾 gg 跳轉到文件的開始複製操作 複製n行 nyy 2yy 移動游標到要寫入的位置,再按p 刪除操作 刪除多行 nd...