Конечно, все ваши клиенты будут использовать один и тот же двоичный файл, поэтому оптимизация компилятора не влияет на проблемы синхронизации.
Кроме того, если вы планируете использовать только одну архитектуру (или, по крайней мере, разрешаете людям играть друг против друга, если они используют одну и ту же архитектуру), то это тоже не имеет значения.
Я сделал то же самое, используя плавающие точки в играх на C # для iPhone и настольных ПК, и они дают одинаковые результаты, даже если iPhone ARM, а настольный компьютер x86.
Просто убедитесь, что игра точно выполняет те же вычисления, и у вас все будет в порядке.
Если ничего не помогло, просто замените все экземпляры float
в вашей игре на стандартный арифметический класс с фиксированной точкой. Таким образом, вы можете быть на 100% уверены, что ваши вычисления являются детерминированными в разных архитектурах, хотя природа арифметики с фиксированной запятой может отрицательно повлиять на вашу игру.