Nav apraksta
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

SpeedTree9MaterialUpgrader.cs 1.4KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using System.Collections.Generic;
  2. using UnityEngine;
  3. using System;
  4. using UnityEngine.Experimental.Rendering;
  5. namespace UnityEditor.Rendering
  6. {
  7. /// <summary>
  8. /// Material upgrader and relevant utilities for SpeedTree 9.
  9. /// </summary>
  10. public class SpeedTree9MaterialUpgrader : MaterialUpgrader
  11. {
  12. /// <summary>
  13. /// Postprocesses materials while you are importing a SpeedTree 9 asset. Call from OnPostprocessSpeedTree in a MaterialPostprocessor.
  14. /// </summary>
  15. /// <param name="speedtree">The GameObject Unity creates from this imported SpeedTree.</param>
  16. /// <param name="finalizer">Render pipeline-specific material finalizer.</param>
  17. protected static void PostprocessSpeedTree9Materials(GameObject speedtree, MaterialFinalizer finalizer = null)
  18. {
  19. LODGroup lg = speedtree.GetComponent<LODGroup>();
  20. LOD[] lods = lg.GetLODs();
  21. for (int l = 0; l < lods.Length; l++)
  22. {
  23. LOD lod = lods[l];
  24. foreach (Renderer r in lod.renderers)
  25. {
  26. foreach (Material m in r.sharedMaterials)
  27. {
  28. if (m == null)
  29. continue;
  30. if (finalizer != null)
  31. finalizer(m);
  32. }
  33. }
  34. }
  35. }
  36. }
  37. }