Считаем. Размеры игровой вселенной ограничены лишь переменной float. Верно? Которая может принимать значения от - 3.402823*10^38 до + 3.402823*10^38. Примем число 1.0 - за 1 игровой метр. Т. е. мы можем проделать путь от одного конца игрового мира к другому, равный: 6.805646*10^38 метров!!! Насколько это много? Ну к примеру разделим получившееся число, на количество метров в одном световом году.
6.805646*10^38 / 9 460 80 * 10^10 = 71 935 206 325 046 507 694 909 световых лет!
А теперь вспомним, что наша вселенная имеет диаметре чуть менее тридцати миллиардов световых лет.
Получается, что в теории, наши вычислительные мощности позволяют создать вселенную такого размера:
680 564 600 000 000 000 000 000 000 000 000 000 000 метров.
А если разделить это число на 100 или 10 000, то получим очень детализированную игровую вселенную где 1 ед. - это 1 мм или даже 1 мкм. Разумеется речь идет только о расстояниях, ибо ни у одного компа памяти не хватит переваривать геометрию и текстуры в такой вселенной. Я не ошибся в расчетах?
Естественные науки
Чисто теоретически, в компьютерной игре можно сделать вселенную по размерам большую, чем наша реальная?
Ошиблись :) И не один раз.
1. Как уже написали в одном из ответов, размерность чисел ограничена лишь памятью компьютера и количеством объектов на сцене (которые между собой и делят эту память). Значит, если загнать в сцену 1 000 000 объектов, то и размер вселенной придётся уменьшить в 1000000^3 = 10^18 раз.
2. Даже если Вы возьмёте не float, а double, то Вы не сможете достигнуть точности в 39 десятичных знаков, ведь для этого надо больше чем 117 двоичных, а размер double всего 64 бита :) Даже у double точности хватит только на числа вдвое короче заявленного (разумеется это никак не влияет на максимальное значение, просто ближайшее число к максимальному, которое Вы можете записать во float, будет меньше не на 1, как Вы ожидаете, а на значение где-то с 20-ью ноликами)
Ну а на основании этих двух ошибок все остальные расчёты просто теряют смысл, потому что ни одно число более не является верным :)
1. Как уже написали в одном из ответов, размерность чисел ограничена лишь памятью компьютера и количеством объектов на сцене (которые между собой и делят эту память). Значит, если загнать в сцену 1 000 000 объектов, то и размер вселенной придётся уменьшить в 1000000^3 = 10^18 раз.
2. Даже если Вы возьмёте не float, а double, то Вы не сможете достигнуть точности в 39 десятичных знаков, ведь для этого надо больше чем 117 двоичных, а размер double всего 64 бита :) Даже у double точности хватит только на числа вдвое короче заявленного (разумеется это никак не влияет на максимальное значение, просто ближайшее число к максимальному, которое Вы можете записать во float, будет меньше не на 1, как Вы ожидаете, а на значение где-то с 20-ью ноликами)
Ну а на основании этих двух ошибок все остальные расчёты просто теряют смысл, потому что ни одно число более не является верным :)
Алла Тю
Спасибо!) А я то смотрю, что-то и не получается сделать полноразмерную солнечную систему в Unity.
Ничего сложного. Просто присвоить переменной "ширина" значение 50 млрд. св. лет - и готово.
Нет, неверно. Существует такая штука -- вещественная арифметика с произвольной точностью (arbitrary-precision arithmetic). При её использовании размерность данных ограничена только памятью.
Но даже без неё размерность модели можно увеличить, если ввести дополнительные псевдокоординаты. Самый простой пример -- шахматная доска, каждая клетка которой опять-таки размечена как шахматная доска. И координаты имеют вид [a1; e2] -- находим клетку a1, а потом унутре ея ищем e2...
Но даже без неё размерность модели можно увеличить, если ввести дополнительные псевдокоординаты. Самый простой пример -- шахматная доска, каждая клетка которой опять-таки размечена как шахматная доска. И координаты имеют вид [a1; e2] -- находим клетку a1, а потом унутре ея ищем e2...
Какой-то бред.... Если честно.
У тебя "вселенная" уместилась в ограничение символов на "Ответах", "чисто теоретически" можно было бы и больше... если принять не метры, а КИЛОметры.... или мили... или....
У тебя "вселенная" уместилась в ограничение символов на "Ответах", "чисто теоретически" можно было бы и больше... если принять не метры, а КИЛОметры.... или мили... или....
Алла Тю
Считал на пром. калькуляторе, вот и спрашиваю, не ошибся ли в расчетах.)
А квантовый компьютер такую вселенную потянет?
Алла Тю
Полагаю тут даже сравнение не идет. Квантовый компьютер работает совершенно иначе и для комп. игр навряд ли чем-то будет лучше или быстрее обычных компов.
в игре можно вообще бесконечную вселенную сделать. либо зациклить, либо генерировать на ходу...
Похожие вопросы
- Чисто теоретически, можно ли попасть в прошлое?
- Какого минимального размера(теоретически) может быть чёрная дыра? Зависит ли от размера её "вместимость" материи?
- Если наша Вселенная имеет размер 100 миллиардов световых лет и ей 14 млрд лет, с какой же скоростью она расширялась?
- Чисто теоретически-если двигатся быстрее скорости света, возможно ли попасть в прошлое?
- Чисто теоретически возможно ли использовать искусственные черные дыры в качестве оружия массового поражения?
- что будет если луна пропадет? просто в никуда без причины? чисто теоретически
- голова! если человеку отрубить голову , то чисто теоретически если её успеть пришить за 3 минуты , то он выживет?
- микроскоп. чисто теоретически объект можно увеличивать микроскопом (с безграничным зумом) неограниченно?
- Что будет, если увеличить атом...чисто теоретически
- Как создать чёрную дыру?! Чисто теоретически)