From 88649927e64e56465258e995e466a2162a657439 Mon Sep 17 00:00:00 2001 From: Gabriel Bigardi <42253181+GabrielBigardi@users.noreply.github.com> Date: Mon, 8 Sep 2025 16:37:56 -0300 Subject: [PATCH] Change sceneLoaded.name comparison against m_SceneToLoad Using .ToLower() to compare strings is very inefficient as it allocates a new string. Using string.Equals with StringComparison.OrdinalIgnoreCase is not only a lot faster but also handles some problems that may happen on different cultures, as shown in this video from "Bald. Bearded. Builder.": https://www.youtube.com/watch?v=DNzAoLwXLzc --- testproject/Assets/Scripts/CommandLineHandler.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testproject/Assets/Scripts/CommandLineHandler.cs b/testproject/Assets/Scripts/CommandLineHandler.cs index 5c58a6cdd1..afa5b9185d 100644 --- a/testproject/Assets/Scripts/CommandLineHandler.cs +++ b/testproject/Assets/Scripts/CommandLineHandler.cs @@ -154,7 +154,7 @@ private void StartSceneSwitch() private void SceneManager_sceneLoaded(Scene sceneLoaded, LoadSceneMode sceneLoadingMode) { - if (sceneLoaded.name.ToLower() == m_SceneToLoad) + if (string.Equals(sceneLoaded.name, m_SceneToLoad, StringComparison.OrdinalIgnoreCase)) { SceneManager.sceneLoaded -= SceneManager_sceneLoaded; var connectionModeButtons = GameObject.Find("ConnectionModeButtons");