我想爲我的模型創建一些默認導入設置,以便在將模型導入編輯器時,我可以在預製水平上修改該模型的子模型的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
}
}
}