2017-02-27 101 views
0

我想爲我的模型創建一些默認導入設置,以便在將模型導入編輯器時,我可以在預製水平上修改該模型的子模型的Receive Shadows,Motion Vectors,Reflection Probes,MeshRenderer子項的值。是否可以創建模型導入器,以便可以調整模型預製件的MeshRenderer上的屬性?

這可能嗎?

我更喜歡解決方案,以便模型文件的默認導入設置被修改,並且我不需要創建模型資產文件的重複預製件。

編輯:

與接受答案的方向發展,這是我想出了實現我想要的結果的代碼。

using UnityEngine; 

public class DefaultImportSettings : AssetPostprocessor 
{ 
    void OnPostprocessModel(GameObject go) //Is called when we import a fbx or when we press apply on its settings 
    { 
     Renderer[] renderers = go.GetComponentsInChildren<Renderer>(); 
     for (int i = 0, iMax = renderers.Length; i < iMax; i++) 
     { 
      Renderer renderer = renderers[i]; 

      renderer.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.Off; 
      renderer.receiveShadows = false; 
      renderer.motionVectorGenerationMode = MotionVectorGenerationMode.ForceNoMotion; 
      renderer.reflectionProbeUsage = UnityEngine.Rendering.ReflectionProbeUsage.Off; 
      renderer.lightProbeUsage = UnityEngine.Rendering.LightProbeUsage.Off; 

      // Other renderer modifications 
     } 
    } 
} 

回答

相關問題