public void UpdateDrag() { var selectAllSurfaces = UnityEngine.Event.current.shift; s_TempChiselBrushMaterials.Clear(); s_TempNodes.Clear(); ChiselClickSelectionManager.FindBrushMaterials(Event.current.mousePosition, s_TempChiselBrushMaterials, s_TempNodes, selectAllSurfaces); var surfaces = s_TempChiselBrushMaterials.ToArray(); s_TempChiselBrushMaterials.Clear(); if (!Equals(prevBrushMaterials, surfaces)) { UndoPrevSurface(); // Handle situation where we're hovering over a selected surface, then apply to all selected surfaces if (!selectAllSurfaces) { surfaces = AddSelectedSurfaces(surfaces); } ApplyMaterialToSurface(s_TempNodes.ToArray(), surfaces); } s_TempChiselBrushMaterials.Clear(); s_TempNodes.Clear(); }
public void UpdateDrag() { var selectAllSurfaces = UnityEngine.Event.current.shift; ChiselBrushContainerAsset[] brushContainerAssets; ChiselBrushMaterial[] surfaces; ChiselClickSelectionManager.FindBrushMaterials(Event.current.mousePosition, out surfaces, out brushContainerAssets, selectAllSurfaces); if (!Equals(prevBrushMaterials, surfaces)) { UndoPrevSurface(); // Handle situation where we're hovering over a selected surface, then apply to all selected surfaces if (!selectAllSurfaces) { surfaces = AddSelectedSurfaces(surfaces); } ApplyMaterialToSurface(brushContainerAssets, surfaces); } }