Перенос кода на 64-битную платформу

Недавно в rsdn опубликовали статью 20 ловушек переноса Си++ - кода на 64-битную платформу. Статья довольно интересна и после ее прочтения возник вопрос - насколько вообще актуально на данный момент переход gamedev-а на 64-битную платформу?

До сих пор сколь-нибудь стоящих игровых проектов полностью для 64-битной платформы я не видел (хотя с момента выпуска 64-битных CPU прошел уже не один год) - это сложность перехода или неактуальность технологии?

Последняя правка: пн, 29/08/2011 - 22:03
Submitted by Victor on

Комментарии

Ну почему же, уже давно если проект клиентсерверный, сервак пытаются писать на 64 разрядах, в общем так безопасней, а Само продставление игры 3Д, звук итп можно и на 32 двух разрядах набадяжить )

Submitted by Relyer on
дело в другом, если будут писать под 64 битные процы и компилить, то будет утеряна часть рынка... ибо у многих еще 32 бита,

а компиля под 32 и тем и тем хорошо

Submitted by Denis on

Т.е. технология еще не актуальна?

Submitted by Victor on
Актуальна, но делая игры только под 64 бита люди с 32 битами в них играть никак не смогут... (получается потеря рынка)

А вот если 32 бита, то 64 и 32 битники смогут играть

Submitted by Denis on

Непонимаю о чем реч реально ), неужели для геймдева 32х битов уже мало ), невижу ниодной задачи, не решаемой на 32, или 4 гигов оперативы уже мало ?, 64 нужно исключительно для серверов, где адресной пространство выходит далеко за 4 гига, всё это единственное что я вижу, ну и оптимальное использование выравнивания в 64х, в общем всё это надумано что-бы вытянуть средства и всё )

Submitted by Relyer on

Некоторые игры требуют весомо памяти, вплоть до трех гигов....... Фактически уже потолок.

Например Ил-2 Штурмовик: Перл-Харбор (рекомендуется 1Гб ОЗУ).Готика 3. Системные требования 1.5 ГБ.Последние версии Lineage просят 3ГБ файл подкачки.

Stranglehold 2гб.

Фактически 2ГБ максимальное адресное пространство по умолчанию доступное в winnt 32. Можно увеличить до трех и использовать средства 36-битной адресации (не слишком быстрые) но этого уже скоро будет мало.

Submitted by tormoz on

Всё зависит от лени, я например немогу представить себе игровой экран с контентом в пол гига оперативы, видео память я не считаю, ну не понимаю чем можно засрать пол гига, подгрузить тока если всю игру целиком в память, в общем чтобы тут не говорили, лень всётаки двигатель прогресса Smile

Submitted by Relyer on
немогу представить себе игровой экран с контентом в пол гига оперативы легко -- SoulCalibur4 (PS3) поскольку всей сцены там примерно на экран (таки файтинг), то и получиться что-то около полгига памяти :) А с 64бит стоит заморачиваться только если делать что-то для X360/PS3, на пц делать даже отдельную 64бит-версию -- пожалуй занятие для монстров типа крайтека, которым больше заняться нечем.
Submitted by BLK Dragon on

Про оперативные мозги или сколько надо памяти играм.

А вообще че вы только к памяти придрались? неужели у 64-битных прог кроме памяти нету других преимуществ.

Submitted by Victor on
неужели у 64–битных прог кроме памяти нету других преимуществ. Не особо -- код занимает неоправданно много места (sizeof(int)==64 и sizeof(void*) ничуть не уменьшают размера). Т.е. для основного CPU (который НЕ VMX или VFPU) нафик не надо такое сомнительное счастье, как 64бит код. У PS3 SPU вообще 256 локальной памяти -- вполне хватает; несмотря на то что по архитектуре Cell допускает 96бит-адреса, в PS3 используются 32битные. Хотя Х360 64битный вроде (давно читал доки не помню точно).
Submitted by BLK Dragon on

Вообщем, если подвести краткий итог: 64-бит и весь шум вокруг них связаны только с пиар-деятельностью маркетинговых отделов и единственное, что может подтолкнуть разработчиков переходить на 64-битные платформы - это необходимость использования более 2 гиг оперы. Все остальное от лукавого и не стоит затраченных ресурсов.

Я все понял правильно?

Кстати, чисто теоретически возможно ли заюзать 64-битные инструкции и регистры процессора в 32-битной винде, например в виде каких-нибуть asm-овсих вставок в кодярник. Или для работы с данными более 32 бит в 32-битной винде пока кроме SSE/3DNow альтернативы нету.

Submitted by Victor on

GameDev.by