LV. 6
GP 88

【心得】Daz3D Export to 3DMax to Unity3D

樓主 Canis canistk
GP6 BP-
Daz3D : http://www.daz3d.com/
就是一個賣漂漂人物的地方
3DMax 不介紹...

東西放了在我自己的網站. 這邊直接轉貼.

邊學邊做, 由 Daz3D export 到 Unity3D 的步驟, 尚在摸索中.
使用工具:

  • 3D Max 2014
  • Daz3D Studio 4.8
  • Unity3D 5.3
使用影片的設定的話:
好像 Daz3D include morph 到 3DMax 的話 會加載失敗.
原因不明, 要找個辦法可以導入 Morph 呢....
放棄導入 Morph 的話則可以成功導入到 Unity3D 及 3DMax.
導出(Export) 臉部的表情 Morphs.
--------------------
經過了無數次的失敗,以及Google 之後,原來 3D Max 有一個很奇怪的 [color=inherit !important]Bug,Import
Import model with morph target can not over 100 [color=inherit !important]object....
超過 100 個的後果就是直接 crash 3D Max, 而且還是 unhandled exception....
靠, 這是啥...連 Error message 也沒有. 好夕給個警告甚麼的我不用試這麼多種格式.
那麼知道這個問題之後就簡單多了,
只需要在 Daz3D 中 export 時候只挑選必需的 Morph export (不超過100 limit) 就可以.
再來測試一下.
影片超長的差不多 15 min, 全程工序錄影,也很難解釋了,總之就是一堆設定.
 
 
有些麻煩的地方需要注意:
  • Daz3D 導出衣服,人物,頭髮..etc 的時候要在 T-Pose (當然罷)
  • Daz3D 導出時 Merge Skeletons 必須選取
  • Daz3D 導出使用 [color=inherit !important]dae 是因為可以在 3D Max 中保留 Rigging
  • Daz3D 可以直接導出 FBX, Unity3D 可以直接使用,但等著 300 [color=inherit !important]drawcall 的怪物罷.
  • Daz3D / 3D Max 導出的人物全過程在 Unity3D 也可以直接使用 Humanoid 格式, 如果不能 Rigging 必定是有步驟錯了.
  • Daz3D / 3D Max 導出時緊記要選取 Morph / Skins 那是表情跟骨格.
  • 3D Max 在導入前的 Unit Setup 必須使用 厘米(cm), 然後保持這設定.
  • 3D Max 進行過 UVM Unwrap 後, Rigging 會壞掉, 要把 "skin" 移到 Modifier List 的最上層(?)
  • 3D Max 製作 Unwrap UVM>Map Channel + Render to Texture 時, 使用的目標必須是第 2 層.
    • 原理是由第1 層的 channel 映照到第 2 層.
    • 場景必須有顆 [color=inherit !important]sky light (no shadow), 不然素材都會打上陰影.
  • 需要 3D Max 進行後製為調整, Morph 不能超過 100 個.
  • 這方法 *.dae / *.max 的檔案在 Unity3D 中的 scale factor 需設為 0.01 才是Unity世界的大小.
連結一下參考過的 Unwrap UVM 作 Atlas 的教學
 
 
先前參考這個我也跟著做了個比較詳細的嘗試.
 
 
成功的由 Daz3D 輸出到 3DMax 再輸出到 Unity3D.
然後再於 3DMax 中進行 texture Atlas 的處理.
經過處理後, Daz3D 原本接近 300 的 [color=inherit !important]Drawcall
,
減省到 66 的 [color=inherit !important]Drawcall

把所有可能作成 Atlas 的東西打包後, 最後成功的達到 5 個 [color=inherit !important]Drawcall.
不帶頭盔, 加上頭髮把一樣是 5 個 [color=inherit !important]Drawcall
.
嗯, 不穿衣服的話....是 4 個 [color=inherit !important]Drawcall. (要遮一下)
scene = 1 [color=inherit !important]drawcall (WHY? no shadow)
Hair = 1 [color=inherit !important]drawcall

Helmet = 1 [color=inherit !important]drawcall
Suit = 1 [color=inherit !important]drawcall
Avatar = 2 [color=inherit !important]drawcall
費了大半個月的學習, 終於可以拿 Daz3D 的人物到 Untiy3D.
做到差不多可以用的程度.
6
-
未登入的勇者,要加入討論嗎?
板務人員:

238 筆精華,10/12 更新
一個月內新增 4
歡迎加入共同維護。


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】