Оскільки це нескінченний бігун, я припускаю, що ваші кольори фону створюються процедурно. Я не впевнений у вашому алгоритмі, але візьміть цей кольоровий вихід і обмежте його діапазон.
Ви можете просто виключити свої кольори платформи як можливий варіант кольору тла (але фон може бути трохи іншим і важко розрізнити). Наприклад: ЯКЩО backColor = platformColor THEN GetNextBackgroundColor (). Ви також можете створити функцію "IsColorS подобни (color1, color2)" для цього, але складніше.
Скористайтеся списком відомих дійсних кольорів тла та оберіть їх.
Мають різні кольори "стилів" для обох. Ваша платформа може бути яскравою та веселою, а обмежити кольори тла насиченими кольорами. Вам потрібно відійти від традиційного способу представлення кольорів на RBG та перейти до такої моделі, як HSL.
Чудовим додатком Unity для роботи з кольорами є ColorTools. Коштує 10 доларів, але того варто. https://www.assetstore.unity3d.com/en/#!/content/21966
У ньому є методи генерування кольорів для того, що ви шукаєте, наприклад, Desaturate () для зневоднення сформованого фонового кольору та IsS подобни (), щоб перевірити, чи обидва кольори занадто близькі між собою.
Ви можете знайти іншу подібну функціональність безкоштовно в інших бібліотеках в мережі з невеликим пошуком.