Реферат по программе Видео режим
В данной программе устанавливается видео режим 320 пикселей по ширине экрана, 200 пикселей по высоте и 256 цветовую градацию синего цвета.
Этот режим позволяет нам организовать оптимальный по размерам Z-буфер для организации хорошего освещения и т.д.
Кроме того для быстроты работы алгоритмов используется прямой доступ к видео памяти по адресу 0xA0000.
Для установки видео режима была создана специальная функция setVideoMode(intmode); которая с использованием языка ассемблера и прерывания BIOS по следующему коду устанавливает режимmode:
mov ax,mode;
int 10h;
При mode равном 0x13 устанавливается графический режим 320X200X256c.
А при mode равном 0x03 устанавливается текстовой режим.
Палитра
Любая градация цвета называется палитрой. С помощью палитры можно получать не только набор однотонных цветов но и также несколько яркостей одного и того же цвета. Благодаря этому можно рисовать и закрасить объекты с интерполяцией цвета.
Для изменения палитры была создана специальная функция Palette() которая использует функцию доступа к портам ввода/выводаoutp и порты 0x3C8и0x3C9для установки компонентов цвета по следующему коду:
int i;
outp(0x3C8, 0x00);
for (i = 0; i < 256; i++) {
outp(0x3C9, 0);
outp(0x3C9, 0);
outp(0x3C9, i+256);
Эта функция устанавливает 256 градации синего цвета.
Заключение
Данная программа выполняет построение центрального проецирования объектов на плоскость с использованием буфера глубины, метод построчного сканирования, интерполяции и многие другие алгоритмы компьютерной графики.
При проектировании и реализации я столкнулся с многими проблемами главное из которых не хватки знаний в области компьютерной графики. Благодаря этому пришлось интенсивно заниматься этим и в итоге я открыл для себя много нового и интересного в этой области и считаю что в программе решил все поставленные преподавателем задачи.
Литература
Конспект лекции по компьютерной графики часть 1 и 2
Шах В.В. 2002г
Компьютерная графика полигональные модели Е.В. Шикин, А.В. Боресков 2001
Методы и алгоритмы компьютерной графики в примерах на VisualC++. 2002
http://opengl.org.ru