天天看點

fbx的法線設定方式引起的顯示不正确

人物模型包含眼球、耳朵等整體作為一個fbx檔案導入Unity工程,fbx的設定項:

Blend Shape Normals為Calculate時,動态調整耳朵的blendshape參數,耳朵的顯示的光照不對;Blend Shape Normals為Import時,耳朵顯示正确;

Blend Shape Normals為Calculate時,眼球顯示正确;Blend Shape Normals為Import時,動态調整眼球的blendshape參數,眼球顯示的顔色不對;

眼球顯示不正确(左)和正确(右)的效果:

fbx的法線設定方式引起的顯示不正确
fbx的法線設定方式引起的顯示不正确

耳朵顯示不正确(左)和正确(右)的效果:

fbx的法線設定方式引起的顯示不正确
fbx的法線設定方式引起的顯示不正确

因為調整blendshape參數時,改變了模型的頂點位置,法線資訊如果用導入的值就不比對了,會顯示不正确,此時需要動态計算法線。但耳朵動态計算不對,是因為耳朵的模型結構有很多凹凸褶皺,這些地方的法線角度計算時要做限制。

是以把Blend Shape Normals改為Calculate,并且設定Normals Mode為Area And Angle Weight,Smoothing Angle調整下,耳朵和眼睛就都能正常顯示了。

fbx的法線設定方式引起的顯示不正确

如果發現調整法線模式和角度還不能讓兩者同時顯示正确,那就隻能把眼球和耳朵拆開,不要放在同一個fbx檔案中,在不同的fbx檔案中分别做設定。

官方參數說明:

Unity版本為:2020.3.14f1c1

https://docs.unity3d.com/cn/current/Manual/FBXImporter-Model.html

fbx的法線設定方式引起的顯示不正确

藍閃的部落格

http://www.cnblogs.com/stan-si/