情景:在使用tungsten源碼編譯出來的obj2json.exe處理*.obj對象的紋理貼圖(由blend導出的obj)時,出現了如題的錯誤:unable to load texture at BitmapTexture.cpp:270
我打開了與obj檔案一同導出的mtl檔案,發現裡面有個map_Kd屬性,他的值就是我的紋理圖檔路徑,沒錯啊,為什麼會找不到呢?
而且當時很詭異,共有兩個紋理貼圖,而其中一個就可以,另一個就會報錯。
做的多了我發現png格式的圖檔更好處理,不會報錯。于是我就用win10自帶的畫圖簡單的另存為png圖檔,再試一次的時候,完美通過。另外即使你本身就是png格式圖檔,卻仍然報錯時,你也可以用畫圖打開另存為png格式,就能通過。這種情況我也遇到過,親測可用。
在此之前遇到這種不能添加的紋理圖,我搜尋了下,一般是用烘焙紋理的辦法解決。這種辦法也可以,不過,出來的品質往往不盡如人意。特别是需要裡邊的幾個參數要調好,相如:超級取樣。就是采樣率,最高是10,但是實際我也試過,對比圖如下
使用原始圖檔,正常的:
使用烘焙紋理導出圖檔後:
最坑爹的是我去百度,沒人說這個事,那我就吃第一個番茄吧:
順便說下無關緊要的,環境配置
系統:win10 1703
軟體:CINME 4D R18
Tungsten:2017.9.7從GitHub上下載下傳的源碼,用vs2015和Cmake編譯的。
齊活了。