46 lines
1.0 KiB
C#
46 lines
1.0 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using MeshCombineStudio;
|
|
using NGS.AdvancedCullingSystem.Dynamic;
|
|
using UnityEngine;
|
|
#if UNITY_EDITOR
|
|
using UnityEditor;
|
|
#endif
|
|
namespace BITKit.OpenWorld
|
|
{
|
|
public class OpenWorldCombiner : MonoBehaviour
|
|
{
|
|
[SerializeField] private MeshCombiner meshCombiner;
|
|
|
|
private void Start()
|
|
{
|
|
meshCombiner.onCombiningReady += AddCullingSource;
|
|
}
|
|
|
|
private void AddCullingSource(MeshCombiner meshcombiner)
|
|
{
|
|
AddCullingSource();
|
|
}
|
|
|
|
[BIT]
|
|
private void AddCullingSource()
|
|
{
|
|
var reportBuilder = new System.Text.StringBuilder();
|
|
var renderers = meshCombiner.GetComponentsInChildren<MeshRenderer>(true);
|
|
reportBuilder.AppendLine($"找到{renderers.Length}个Renderer");
|
|
foreach (var x in renderers)
|
|
{
|
|
if (x.GetComponent<DC_SourceSettings>()) continue;
|
|
|
|
x.gameObject.AddComponent<DC_SourceSettings>();
|
|
|
|
reportBuilder.AppendLine($"为{x.name}添加了DC_SourceSettings");
|
|
}
|
|
|
|
Debug.Log(reportBuilder.ToString());
|
|
}
|
|
}
|
|
|
|
}
|