Да, я знаю, что перед запятой задан десятичный или плавающий, и я знаю их использование, и что десятичная точность является точной, а float неточна.Для RPG масштабированное целое число против десятичного?
В игре, над которой я работаю, у меня есть игрок со скоростью движения 36 пикселов в секунду. Я обновляю это примерно 10 раз в секунду, делая его 3.6 каждый раз. Я хочу, чтобы это было точным, но decimal занимает 16 байт (128 бит), что много. Если я хочу сохранить точность, следует ли вместо этого использовать целое число и масштабировать числа? Или .. Поплавок более подходит? Float и Int32 оба занимают 4 байта, но целое число не потеряет никаких чисел. Так не должно ли Integer быть более подходящим? Тогда почему кто-нибудь когда-либо использовал float?
Итак, в основном, какой я должен использовать для скорости и точности? Я использую десятичное значение в данный момент. Я хочу изменить его, прежде чем я получу слишком много деталей в игре, иначе вам будет сложнее сделать все эти изменения.
Я никогда не думал, что 128 бит - это много, но я думаю, что я большой источник, когда дело доходит до данных. – austin
Ответьте на свой вопрос наукой. Вы обновляете каждые 100 миллисекунд. Процессорный цикл, скажем, одна наносекунда. Таким образом, вы получите 100 миллионов циклов для выполнения ваших расчетов. Измерить, сколько циклов вам потребуется для выполнения ваших расчетов, а затем вы узнаете, превышен ли вы бюджет или бюджет. Никто из нас здесь не может сделать этот анализ для вас. –