Продолжаю эксперименты с dos. Не вижу проблем с поддержкой не только VGA, но и cga, ega. Так как сам рендер абстрактный и подходит для всех. Логика простая софт рендер, это работа с массивом байт. Байт на пиксель, может быть 1,2,3,4.
Мне что бы встроить данные режимы, нужен код инициализации. И рисовать с учётом одного байта на пиксель + палитра. В случае VGA 256 и cga 16.
Почти прочитал книгу:
«Секреты программирования игр».
Огонь книжка и как раз под dos.
Ещё нагуглил софтовый OpenGL и вроде он как раз 256 цветный.
JordanCpp
Теперь это будет GAPI?
Рендерферма кроликов
> Теперь это будет GAPI?
Нет, просто вариант программного OpenGL, для систем которые не поддерживают аппаратное ускорение.
JordanCpp
> Нет, просто вариант программного OpenGL
Это и есть GAPI. Есть (был) еще MesaGL софтовый кросплатформенный
Это для слабаков, слабо сделать Вулкан софтовый, под дос?
stratego
Вулкан это же интерфейс к видеокарте с 3d ускорением, и как же он должен работать без нее
JordanCpp
> Нет, просто вариант программного OpenGL, для систем которые не поддерживают
> аппаратное ускорение.
Но на железе где его нет он будет работать настолько медленно что использование не имеет смысла. Это главная проблема, что возможности минимальных и максимальных систем разные настолько что между ними просто нет ничего общего.
Рендерферма кроликов
> как же он должен работать без нее
Через эмуляцию?
stratego
> Это для слабаков, слабо сделать Вулкан софтовый, под дос?
Да.
mr_ix
> на железе где его нет он будет работать настолько медленно что использование
> не имеет смысла. Это главная проблема, что возможности минимальных и
> максимальных систем разные настолько что между ними просто нет ничего общего.
Я согласен, что производительность тех процов и современных, это даже не погрешность. Но ведь делали 3d игры под дос. Будет вариант программного OpenGL, исключительно для таких процессоров. К примеру pentium 166 mhz, уже вполне может вытягивать простое 3d вроде quake.
JordanCpp
> pentium 166 mhz
На тех компах движки избегали юзать даже Z-буфер
И проецировние текстур афинное, а не перспективное
И нет TL, координаты задаются в пространстве экрана
Вообще нет смысла эмулировать даже GL 1.0
И уже есть MesaGL под все ОС, включая DOS
JordanCpp
> Но ведь делали 3d игры под дос.
Только позже оказалось, что в лучшем случае их можно назвать 2.5D.
Zefick
Descent сложно назвать 2.5D
Zefick
> Только позже оказалось, что в лучшем случае их можно назвать 2.5D.
У меня была игра, Морские легенды, так вот там можно было переключится на обзор корабля,как бы в 3д, камера летала вокруг него. До сих пор думаю, там 3д было или записано видео? Надо бы, снова поиграть, присмотреться, но уже лень ))
Тема в архиве.