Что используется для создания графики в DOS? - PullRequest
5 голосов
/ 27 ноября 2011

Какие библиотеки были / используются для создания 2D / 3D-графики и графического интерфейса пользователя в DOS (консоль)? Я имею в виду плохую графику, которая использовалась в таких играх, как Wolfenstein 3D, Shadow Warrior и т. Д.

Ответы [ 2 ]

6 голосов
/ 27 ноября 2011

Идея аппаратного ускорения на самом деле завоевала популярность только во времена Windows. Поэтому большинство видеокарт работали в режимах, которые представляли собой просто большие массивы памяти, сопоставленные с определенными диапазонами адресов. Таким образом, вы будете вставлять цифры в определенные места, и это приведет к соответствующим изменениям пикселей.

Операция в стиле

A setPixel часто должна считывать информацию с графической карты, чтобы маскировать информацию, чтобы убедиться, что она разрушает только один пиксель. Это было намного быстрее, чтобы заполнить диапазоны смежных пикселей вместе, чтобы избежать цикла чтения / маски / записи. Печально известный «режим 13h» на VGA-картах был особенно удобен, потому что каждый байт соответствовал независимому 256-цветному пикселю:

http://en.wikipedia.org/wiki/Mode_13h

Было несколько разных библиотек, в основном проприетарных, в которых реализованы быстрые алгоритмы рисования линий или кругов, которые будут работать в разных графических режимах. Например, были GX Graphics от Genus Microprogramming и Fastgraph Теда Грубера (который, очевидно, все еще существует сегодня). По сегодняшним меркам это не было чем-то необычным, но, безусловно, с точки зрения производительности оно не могло сравниться с графическим интерфейсом Borland .

Эти библиотеки продавались за сотни долларов в журналах по программированию того времени. Идеи той эпохи, как правило, были гораздо более скрытными, чем хотелось бы новому поколению программистов ... это означает, что даже если вы купили одну из этих библиотек, вы, вероятно, не получили исходный код, если не заплатили еще больше. И, конечно же, игровые компании не хотели, чтобы конкуренты знали, что они использовали или сколько они разработали собственными силами.

Поздно в дни DOS появление библиотек ModeX ознаменовало некоторые новые недокументированные режимы видео и интересные трюки (например, «скомпилированные растровые изображения»). Они часто были с открытым исходным кодом и распространялись через Интернет людьми на демосцене:

http://www.ascotti.org/programming/modex.htm

2 голосов
/ 27 ноября 2011

graphics.h, нестандартное расширение Borland - это то, что использовали многие старые графические игры. Он выходит далеко за обычные пределы текстового терминала, но поддерживается только 16-разрядными системами, из которых Microsoft практически исключила поддержку Windows. Вам также понадобится древний компилятор Borland или эмуляция .

...