Вылетает - не вылетает, деньги в разработку уже вложены, и хоть что-нибудь зарелизить надо. лучше продать плохую игру и окупиться на 80%, чем ничего не продать и не окупиться совсем.
Ну такой подход действительно существует, ну во всяком случае читал в книжке Game Engine Architecture, и там среди перечислялся вариант просто ограничить дефрагментацию блоками по 8-16 за 1 кадр или что-то типа такого.
Суть в том, что в памяти свободная часть не одним куском висит, а разбита на кучу мелких областей. Игра, вероятно, пытается выделить память одним большим куском, что не выходит.
Правда, я не совсем понимаю, в чём была проблема это переписать. Ещё более странно, как они о такой вещи заранее не продумали, ведь вроде опытные разработчики.
Кто-то скажет: как они могли не знать про фрагментацию памяти? Но если вы будете честны с собой, то признаете, что это не такое уж распространённое знание.
Это шутка какая-то, да? Об этом на первом курсе рассказывают. Ну может на втором. Писать движки и даже не знать о такой проблемме... Нет слов.
Ты цены на образование на западе видел? Скорее всего нет. Многие программисты к играм - самоучки. Которые решили что образование не нужно. А опыт программирования "убийцы дума " в период 13-15лет все компенсирует.
Как человек, игравший и в фентези ветку Стардоков (Elemental: War of Magic, Fallen Enchantress, Sorcerer King) и в космостратегии GalCiv 2-3 могу сказать, что фундаментальной проблемой является не техническая часть, а отсутствие должной степени таланта.
В итоге все отличные на бумаге идее разбивались о релизацию, что печально. Впрочем, в Sorcerer King удалрсь создать одну из самых удачных боевок в TBS за последние годы, но игру это не вытянуло.
Вот да, хотел сам написать подобный коммент. Если космические стратегии от стардока еще туда - сюда, хоть и кривые геймплейно и визуально, но при этом играбельные, то фентезийные - просто мрак. Пытался играть и в элементал и в фоллен энчантресс, но меня хватало не более, чем на полчаса. УЖАСНЫЙ движок, УЖАСНЫЙ арт - дизайн, напрочь сломанные механики. На фоне этого кошмара, даже warlock кажется неплохой стратегией.
Проблема заключалась в том, что компьютеры под управлением 32-битной версии Windows позволяли использовать только 2 гигабайта оперативной памяти. Разве? В 32х вроде ограничение было около 4х гигов вроде.
Это особенность архитектуры Windows. Она делит общее адресное пространство на две части: user mode — память, доступная приложениям, и kernel mode — память, используемая системой. Для 32-битных систем это те самые 2 GB при общем системном потолке в 4 GB.
Скорее всего они могли бы это исправить, но ценой ограничений для карты. Можно удивлятся тому, как мало элементов и объектов в играх Blizzard, но этому есть объяснение. Мелкие детали можно копировать, а вот добиться разнообразия сложно из-за ограничений для быстродействия. Вот и появляются прогрузки для маленьких карт D3, SC2 или континентов в WoW, что бы убрать лишнее. Играм нужна полировка, но все стратегии страдают нестабильностью, нужен постоянный уход и внимание.
Если я все правильно понял, они зарелизили игру, зная, что она вылетает в 100% случаев. Браво! *slow clap*
Она вылетает, только если в неё играть какое-то время.
Вылетает - не вылетает, деньги в разработку уже вложены, и хоть что-нибудь зарелизить надо. лучше продать плохую игру и окупиться на 80%, чем ничего не продать и не окупиться совсем.
Велком в реальный мир, мальчик. Интересное чувство, когда понимаешь что не все должно быть идеально, не правда ли?
достаточно длительное время, отмечу.
впрочем, варианты?
Нужно было не останавливаться на достигнутом и написать дефрагментатор свободной памяти.
И получить игру, которая каждые пять минут делает паузу на дефрагментацию.
Ну такой подход действительно существует, ну во всяком случае читал в книжке Game Engine Architecture, и там среди перечислялся вариант просто ограничить дефрагментацию блоками по 8-16 за 1 кадр или что-то типа такого.
Для тех, кто не понял, в чём проблема.
Суть в том, что в памяти свободная часть не одним куском висит, а разбита на кучу мелких областей. Игра, вероятно, пытается выделить память одним большим куском, что не выходит.
Правда, я не совсем понимаю, в чём была проблема это переписать. Ещё более странно, как они о такой вещи заранее не продумали, ведь вроде опытные разработчики.
Видел NTFS?)
Кто-то скажет: как они могли не знать про фрагментацию памяти? Но если вы будете честны с собой, то признаете, что это не такое уж распространённое знание.
Это шутка какая-то, да? Об этом на первом курсе рассказывают. Ну может на втором.
Писать движки и даже не знать о такой проблемме... Нет слов.
https://stackoverflow.com/questions/3770457/what-is-memory-fragmentation
Ты цены на образование на западе видел? Скорее всего нет. Многие программисты к играм - самоучки. Которые решили что образование не нужно. А опыт программирования "убийцы дума " в период 13-15лет все компенсирует.
Как человек, игравший и в фентези ветку Стардоков (Elemental: War of Magic, Fallen Enchantress, Sorcerer King) и в космостратегии GalCiv 2-3 могу сказать, что фундаментальной проблемой является не техническая часть, а отсутствие должной степени таланта.
В итоге все отличные на бумаге идее разбивались о релизацию, что печально. Впрочем, в Sorcerer King удалрсь создать одну из самых удачных боевок в TBS за последние годы, но игру это не вытянуло.
Вот да, хотел сам написать подобный коммент. Если космические стратегии от стардока еще туда - сюда, хоть и кривые геймплейно и визуально, но при этом играбельные, то фентезийные - просто мрак. Пытался играть и в элементал и в фоллен энчантресс, но меня хватало не более, чем на полчаса. УЖАСНЫЙ движок, УЖАСНЫЙ арт - дизайн, напрочь сломанные механики. На фоне этого кошмара, даже warlock кажется неплохой стратегией.
Кстати их WindowBlinds, DesktopX и прочие продукты так же жутко глючили.
Проблема заключалась в том, что компьютеры под управлением 32-битной версии Windows позволяли использовать только 2 гигабайта оперативной памяти. Разве? В 32х вроде ограничение было около 4х гигов вроде.
Или это уже потом в "сервис-паках" допилили?
Это особенность архитектуры Windows. Она делит общее адресное пространство на две части: user mode — память, доступная приложениям, и kernel mode — память, используемая системой. Для 32-битных систем это те самые 2 GB при общем системном потолке в 4 GB.
Максимально поддерживаемое количество памяти — 4ГБ. Лимит памяти для одной программы — 2ГБ.
"Дилетант — человек, занимающийся какой-либо деятельностью без должных знаний и профессиональной подготовки."
Скорее всего они могли бы это исправить, но ценой ограничений для карты.
Можно удивлятся тому, как мало элементов и объектов в играх Blizzard, но этому есть объяснение. Мелкие детали можно копировать, а вот добиться разнообразия сложно из-за ограничений для быстродействия. Вот и появляются прогрузки для маленьких карт D3, SC2 или континентов в WoW, что бы убрать лишнее.
Играм нужна полировка, но все стратегии страдают нестабильностью, нужен постоянный уход и внимание.
это все легко исправляется, если изначально правильный язык выбран, а не эти современные модные языки со встроеным garbage collector