2010-05-03

解讀 3d warehouse collada 檔案

Collada 模型檔是以 xml 格式的方式儲存,可以用 Collada-DOM 或是 FCollada 之類的 library 來幫忙解讀, 這邊我是參考這個 viewer ( ColladaLoader ),從原始碼可以學到如何用 FCollada 來解讀 Collada 檔案(包含半透明物件的順序排列),然後以 OpenGL 呈現結果,但值得注意的是它並沒有解讀有關 FaceCulling 的資料,所以...

  1. 如果對全部的三角形 cull back face,那麼在有些角度下,模型會有殘缺不全的現象。
  2. 如果關閉 culling 功能,在某些情況下(lighting...),也會造成不正確的結果。
以 3d warehouse 的 Collada 檔案為例,可以從它檔案裡的 < double_sided >標籤來分辨是否要對這個面進行 culling,如此就可以正確解讀 3d warehouse 裡的 collada 檔案了!

0 意見 :

張貼留言