public override void RenderOverlay(RenderManager.CameraInfo cameraInfo) { // Log._Debug($"Restrictions overlay {_cursorInSecondaryPanel} {HoveredNodeId} {SelectedNodeId} {HoveredSegmentId} {SelectedSegmentId}"); if (SelectedSegmentId != 0) { Color color = MainTool.GetToolColor(true, false); // continues lane highlight requires lane alphaBlend == false. // for such lane highlight to be on the top of segment highlight, // the alphaBlend of segment highlight needs to be true. TrafficManagerTool.DrawSegmentOverlay(cameraInfo, SelectedSegmentId, color, true); if (overlayHandleHovered) { if (RoadMode) { RenderRoadLane(cameraInfo); } else { RenderLaneOverlay(cameraInfo, renderData_.laneId); } } } if (cursorInSecondaryPanel) { return; } if (HoveredSegmentId != 0 && HoveredSegmentId != SelectedSegmentId && !overlayHandleHovered) { NetTool.RenderOverlay( cameraInfo, ref Singleton <NetManager> .instance.m_segments.m_buffer[HoveredSegmentId], MainTool.GetToolColor(false, false), MainTool.GetToolColor(false, false)); } }