看板 GameDesign 關於我們 聯絡資訊
大家好 最近應徵工作關係實作了一個particle system 不過之前是用instantiate的方式建立很多gameObject作為particles 現在被要求改成用Graphics.DrawMesh及Compute Shader來實作particle system 由於之前沒有用gpu程式開發的經驗所以不太知道怎麼下手 看了很多examples還是有很多疑問 所以想來板上請問各位高手>< 目前的想法是: 1.利用compute shader去計算particles的特徵(position/velocity/orientation...) 2.再利用compute buffer傳回來的資料用drawmesh來畫 不知道這樣的理解對不對 然後documentation提到Mac OS X 不支援OpenGL 4.3 這樣是不是代表不能再mac上面實作compute shader? 感謝各位 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.15.212.80 ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1506872495.A.30E.html
cjcat2266: 想法沒錯想法沒錯 10/02 00:51
cjcat2266: 咦,怎麼字重複輸入了...? 10/02 00:52
cjcat2266: 其實搜尋Unity compute shader particles就有範例了 10/02 01:19
planetoid: 竟然是EE大學長><我有follow你的blog 十分感謝你! 10/02 08:23
chowleft: 我記得 DrawMesh 不會作 batch 的樣子 10/02 11:17
chowleft: 可以看一下 Graphics.DrawMeshInstancedIndirect 10/02 11:17
planetoid: 今天嘗試在mac上run了你貼的example 但出現platform不 10/02 11:38
planetoid: 支援compute shader 10/02 11:43
planetoid: 但嘗試更簡單的example像這個https://goo.gl/DpFRFH 10/02 11:44
planetoid: 卻又可以...不知道為什麼QQ 10/02 11:44
planetoid: 現在再研究不透過compute shader的方法做 10/02 12:18
chowleft: 所以沒有一定要用 compute shader ? 10/02 13:25
chowleft: 推薦 https://github.com/keijiro/KvantSpray 10/02 13:26
chowleft: 偷偷推薦一下大神的作品 10/02 13:27
chowleft: 他的作法好像是將結果存在 RenderTexture 10/02 13:28
planetoid: 他是建議用compute shader 10/02 13:47
planetoid: 我也在研究這個 很多東西都超過我理解範圍 太厲害了 10/02 13:48
chowleft: 恩~ 因為當時沒 compute shader 可用 10/02 14:13
cjcat2266: 喔喔! RenderTexture相容性也較高,不知效能是否差不多 10/02 14:37
chowleft: 我也不知....不過用 compute shader 比較有趣 XD 10/02 14:54
cjcat2266: 其實我有個長遠計畫,是要把以前做的Stardust的可擴充 10/02 15:46
cjcat2266: Initializer和Action的概念整合到個客製編輯器中 10/02 15:46
cjcat2266: 用來生成compute shader http://bit.ly/2fK9bGK 10/02 15:47
cjcat2266: 只有用到的功能才會生到compute shader中 10/02 15:48
cjcat2266: 就不用在效能和功能之間找平衡做個折衷kernel 10/02 15:49
cjcat2266: Google Code已經變成封存模式,範例必須下載才能看... 10/02 15:52
cjcat2266: wonder.fl也下架了,好在第三方精華區beauti.fl還在 10/02 15:53
planetoid: 感謝學長分享 我非主修CG的最近才開始還有好多要學啊! 10/02 16:02
KanoLoa: 每次看到這版討論graph都會覺得當初大學沒有修圖學是錯誤 10/05 10:01
KanoLoa: 怪不得跳不進遊戲業 10/05 10:01
cjcat2266: 自修圖學不嫌晚,我也是買書啃和上網自修的,加油! 10/05 13:43
cjcat2266: 我建議的流程是,先挑本遊戲3D數學的書,有系統性地把 10/05 13:57
cjcat2266: 基礎數學工具補齊,然後找個類似Real-Time Rendering這 10/05 13:58
cjcat2266: 種百科類的資料,略讀一遍,大概知道當前的圖學現況 10/05 13:59
cjcat2266: 或者直接找Frank Luna的DX書,直接跳下去在螢幕上畫出 10/05 13:59
cjcat2266: 東西,賺取成就感 10/05 13:59
cjcat2266: 現在網路資料多,也可以找找有沒有tutorial類的教學系 10/05 14:00
cjcat2266: 列跟著做,從做中學 10/05 14:00
cjcat2266: 前提是CS基本功和3D數學要熟,剩下的學起來會比較順暢 10/05 14:02
KanoLoa: 謝謝開示 想不到cj竟然是自學的 不可思議啊 10/05 16:33
cjcat2266: 啊,說全自學其實也不太正確,我是第一個大學沒修圖學 10/06 01:37
cjcat2266: 從那時開始自學,第二個大學有修圖學,但是我是當複習 10/06 01:38
planetoid: 哇感謝分享 正在苦思不知道怎麼入門圖學的說 10/06 09:40