2016年3月8日 星期二

Cocos2d-x的簡易Pixel Base的水體模擬實作

  1. 使用技術:
    a.Projected base UV animation
    b.NormalMap的Normal值擾動處理
    c.水顏色與一張反射貼圖(參考Normal擾動後的Projected Base 的UV)的混色處理
  2. 可以調整參數:
    a.反射貼圖檔
    b.NomralMap貼圖檔
    c.水的顏色
    d.透明度
    e.UV的TileCount(應用於超大範圍水的調整)
    f.UV animation的速度
    g.NormalMap的Bump Scale的強度
    h.Normal 擾動的強度
    i.反射強度
  3. 實作部份:
    為了有好的效強能考量及較佳的品質呈現,目前採取了一張反射貼圖(不是SphereMap及CubeMap)、一張NormalMap及二片三角形來實作,並製作了相關的編輯工具以便於調整。
  4. 工具相關:
    工具是用MFC來進行開發,需求是要能Render到自己所建立出來的MFC Window視窗,但Cocos2d-x本身並不提供Window manual create window的架構,所以要自動實作GL View。
  5. 以下是相關編輯的影片,效果不算很好,沒有即時反射及深度貼圖果然差很多…
    還是比較懷念之前用Ogre3D自行開發的水體模擬…




  6. 後記:其實做這個沒什麼特別的,比較值得注意的是居然有人說:『你不是在做2D的東西嗎?可是看起來卻像在做3D的東西…』,這讓我高興了一下…
Dream continues in...

沒有留言:

張貼留言