| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- using EPOOutline;
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class ModelItem : MonoBehaviour
- {
- public Outlinable outlinable;
- private void Awake()
- {
- AddMeshColliders();
- outlinable = this.GetComponent<Outlinable>();
- }
- public void AddMeshColliders()
- {
- MeshRenderer[] meshRenderers = GetComponentsInChildren<MeshRenderer>();
- foreach (var item in meshRenderers)
- {
- if (item.GetComponent<MeshCollider>() == null)
- {
- item.gameObject.AddComponent<MeshCollider>();
- }
- }
- }
- public void AddOutLinable()
- {
- if (outlinable == null)
- {
- outlinable = this.GetComponent<Outlinable>() == null
- ? this.gameObject.AddComponent<Outlinable>()
- : this.GetComponent<Outlinable>();
- outlinable.AddAllChildRenderersToRenderingList();
- }
- outlinable.enabled = false;
- }
- public void OpenHighlighter()
- {
- if (outlinable == null)
- {
- outlinable = this.GetComponent<Outlinable>() == null
- ? this.gameObject.AddComponent<Outlinable>()
- : this.GetComponent<Outlinable>();
- outlinable.AddAllChildRenderersToRenderingList();
- }
- outlinable.enabled = true;
- OutLineManager.Instance.ResetOutLinableByType(outlinable, OutLineType.hint);
- }
- public void CloseHighlighter()
- {
- outlinable.enabled = false;
- }
- }
|