Позвольте мне начать с некоторой предыстории:
Когда вы открываете новый (полный) экран, вы используете несколько настроек, в том числе размер (разрешение по горизонтали и вертикали), а иногда и количество цветов, используемых на этом экране.
Примеры:
CGA с разрешением 320x200 и 2 бита для хранения информации о цвете.
Эти 2 бита могут представлять четыре разных значения: 00, 01, 10 и 11.
CGA использовал это для указания таких цветов:
VGA, более современный и близкий ко времени Heroes 3, поддерживал больше цветов, но ему требовалось больше памяти, когда использовались более высокие разрешения и больше цветов.
Например, если бы он использовал 640x480 в 16 цветах (представленных в 4 битах), ему потребовалось бы 640x480x4 битов (1228800 битов) для хранения информации изображения. Это 154к. Это незначительное количество современной системы, но в те дни видеокарты часто поставлялись с 256 или 512 КБ КБ памяти, и одно изображение требовало значительной части этого.
Если вы перейдете на 800x600 (все еще в 16 цветах), то вам потребуется 240 КБ.
Если вы добавили больше информации о цвете (например, 256 цветов, для хранения которых требуется 8 бит), то размеры удваиваются. 307 КБ необходимо для и 480 КБ. Последнее очень близко к максимуму на карте 512 КБ.
Снова удвоив количество цветовых бит на пиксель, мы получим 16 бит, что позволяет получить 2 16 цветов (65536). Этого достаточно для большинства игр и широко используется.
После этого мы попробовали сочетания 24-битного цвета (смутно называемые «миллионы цветов» в попытке продать вещи на нетехнических условиях). 24 бита допускают больше цветов, чем может различить человеческий глаз. Однако это было явно неприятно в цифровом мире, где доступ к памяти часто происходил в 8, 16 или 32-битных схемах. Вещи можно ускорить, используя 32 бита для хранения этих 24-битных данных о цвете и либо не используя 8 из них, либо используя их для чего-то другого (например, информацию альфа-канала, позволяющую упростить прозрачность).
Теперь мы наконец подошли к той части, где я могу начать отвечать на ваш вопрос:
Любая современная система поставляется с большим количеством графической памяти, и больше нет необходимости ограничивать количество цветов для экономии места. Без этой необходимости эти режимы редко используются. В основном только на очень старых системах или с очень старым программным обеспечением (таким как ваша игра).
На данный момент я набираю этот (2014), этот старый 16-битный унаследованный режим устарел десятилетиями (эра 1990-х годов), и имеет смысл больше не включать его поддержку в современную ОС или современный графический драйвер. И вам нужно оба поддерживать его, чтобы использовать его.
Ваша ОС Windows 8 использует диспетчер окон рабочего стола, приложение, которое всегда включено и требует 32-битной глубины цвета. Это не поддерживает вас, изменяя это.
Соответствующая ссылка на страницы MSDN:
(http://msdn.microsoft.com/en-us/library/windows/desktop/hh848042%28v=vs.85%29.aspx)[http://msdn.microsoft.com/en-us/library/ окна / настольные / hh848042% 2 = vs.85% 29.aspx]
Windows 8 does not support colour depth other than 32 bits per pixel. The
user can no longer change the colour depth of the system by using the
control panel.
In addition, app developers cannot use APIs to change the color depth of
the system. Windows 8 will detect apps that try to change the color depth
of the system to less than 32 bits per pixel, and inform the user that an
app compatibility shim must be applied to run the apps. After
confirmation from the user, the app compatibility shim is applied and
the shim virtualizes the low colour mode to the app while keeping the
system running at 32 bits per pixel. `
Итак, вкратце: вы не можете запустить Windows 8 ни в чем, кроме 32-битного режима глубины цвета. Если вы хотите использовать меньше цветов, вам нужна совместимая прокладка. Чтобы включить их: посмотрите эту ссылку
Что меня озадачивает, так это то, что у вас должно было появиться всплывающее окно, предлагающее вам запускать ваши игры, используя этот шим (он же запуск в режиме совместимости). Вы получили этот вопрос, когда впервые попытались запустить игру? Что вы на это ответили?