Files
AR-Menu/Library/PackageCache/com.needle.engine-exporter@8c046140a1d9/UniversalRenderPipeline/Editor/URPGltfImportHandler.cs
2025-11-30 08:35:03 +02:00

35 lines
862 B
C#

#if URP_INSTALLED
using Needle.Engine.Gltf;
using UnityEditor;
using UnityEngine;
using UnityEngine.Rendering.Universal;
namespace Needle.Engine.UniversalRenderPipeline
{
internal static class URPGltfImportHandler
{
[InitializeOnLoadMethod]
private static void Init()
{
GltfImporter.AfterImported += OnAfterImport;
}
private static void OnAfterImport(GameObject obj)
{
if (!obj) return;
var cameras = obj.GetComponentsInChildren<Camera>();
foreach (var camera in cameras)
{
// Add a UniversalAdditionalCameraData component to the camera if it doesn't have one already.
// Otherwise the camera inspector is broken in URP (2020.3.38) URP v10.10.0
if (!camera.TryGetComponent<UniversalAdditionalCameraData>(out _))
{
camera.gameObject.AddComponent<UniversalAdditionalCameraData>();
}
}
}
}
}
#endif