Page 1 of 4

Menuet Graphics Library

Posted: Sat Jun 11, 2005 7:11 pm
by EXIS
Извините товраищи, но работа над движком (библиотекой)
затягивается, не только из-за нехватки времени, но и из-за
не правильного подхода с самого начала...
Дело в том что изначально использовался аффиный метод
текстурирования не точный, текстура натягивалась не верно
на четырехугольники: земля, бункеры (почти все что состояло
из четырехугольников).
Так вот есть еще такой метод перспективно-корректно
текстурирования конкретной информации и примеров я не
нашел, можете не искать, я на этот метод забил. ну да ладно.
На днях я наткнулся на пакет примеров от некой группы DLS
написанных на паскале, однако о чудо! все алгоритмы
прорисовки сделанны на асме! правда немного кострированном
(Паскаль юзает 16бит и инструкции не выше 286) В пакете я
наткнулся на один пример, прорисовки с заранее высчитаными
гранями, условно назову его Slop (грань) метод. О том как
работает смотрите в рисунке, может кому будет интерестно.
Предпологаю, что этот метод можно улучшить так, что можно
будет рисовать многоугольники с большим количеством
граней, даже спирали...
Вообщем стараюсь че-нить сделать но времени не хватает.

Image

Posted: Sat Jun 11, 2005 8:51 pm
by Mario79
EXIS
Давай парень я на тебя надеюсь, сам помочь особо не могу, так как тогда дистрибутивы собирать некому будет.
Удачи тебе большой! Не бросай это нужное дело.

Posted: Sat Jun 11, 2005 9:13 pm
by halyavin
Аффинный метод текстурирования - классическая ошибка. Я тоже от нее страдал, пока в чем дело не понял :? .

Posted: Fri Jun 17, 2005 4:53 pm
by EXIS
На скриншоте изображен всего-навсего один полигон, который состоит из 70 вершин :)
Image

Пока полигон без Z-буфера, не оптимизированн, не текстурированный, есть еще кое-какая ошибочка...
но современем я думаю все это появится...
качать и смотреть отсюда, кстати размер прог очень маленький меньше 1000 байт!

http://www.deck4.narod.ru/3DSLOPE.rar
http://www.cyberdeck.fatal.ru/3DSLOPE.rar

Posted: Fri Jul 01, 2005 4:39 pm
by EXIS
Версия с одноцветным многоугольником доделана и работает исправно
Z-буфер пока не добавлен.

Что касается добавления текстурирования...
Сделал текстурированную версию, но текстура отображается неправильно
Y-искажения по X вроде все в порядке, углы многоугольника отображаются
линейно, а паралельные части прорисовываются по квадратичному закону.
Вобщем и то и то не верно.
Пока не понимаю как это исправить, надо пересмотреть пример от DLS

Image

http://www.deck4.narod.ru/3DSLOPE.rar
http://www.cyberdeck.fatal.ru/3DSLOPE.rar

Posted: Fri Jul 01, 2005 7:48 pm
by andrew_programmer
В PAINT-те есть две 32-х цветных палитры- одна для пикселей,используемых в рисовании,а другая для кнопок,обозначающих цвета этих пикселей.Из-за того,что для придания кнопке обьемности применяется специальный метод(что-то наподобие градиента) - номера цветов пикселей рисования и номера цветов кнопок могут несовпадать.Я в своей программе использовал 32-х цветную палитру пэинта,но мне этих цветов мало.Вот я и думаю - может есть какой-то закон преобразования одних номеров цвета в другие ?

Posted: Sat Jul 02, 2005 9:35 am
by EXIS
andrew_programmer

Вообще не доганяю причем сдесь Paint и цвета =) Ты свой Paint чтоль делаешь? да там две таблицы цветов, закон не знаю
вроде 0x00RRGGBB R=R G=G B=B т.е. например 0x00ccddaa

Posted: Sat Jul 02, 2005 9:44 am
by andrew_programmer
Нет,не Paint, а прогрумму для создания анимированных спрайтов и 2D текстур в моем формате графических файлов,который я назвал pix.

Posted: Sat Jul 02, 2005 9:50 am
by EXIS
Что бы цвет у кнопки был градиентный значения RR GG BB не должны быть меньше 1e и больше de
по крайней мере я так понял

Posted: Sat Jul 02, 2005 10:00 am
by andrew_programmer
Значит цвета кнопок придется подбирать наугад(на глаз) под цвета пикселей рисования.
А кто создал в Paint эти таблицы с цветами ?

Posted: Sat Jul 02, 2005 1:25 pm
by halyavin
EXIS
Выслать тебе демку на паскале/ассемблере для MenuetOS с правильным текстурированием?

Posted: Sat Jul 02, 2005 8:59 pm
by EXIS
halyavin
Высылай не помешает. =) waptap[at]mail.ru

andrew
таблицы делал я, на глазок вобще поидее без градиента не красиво, но зато точно!

Posted: Tue Jul 05, 2005 7:16 pm
by EXIS
halyavin
Примеры конечно круты да еще и под МЕОС запускаются, это точно Паскаль?
Правда 3D функции помоему не в библиотеке, да и не суть важно.

Про 3D Удачно портировал свой пример на TP7 работает вроде нормально надо перевести на 32битный
код и оптимизировать, скоро выложу, главное что текстура правильно отображается, метод
вроде перспективно коррекный или просто точное текстурирование короче буду еще разбиратся.

Posted: Wed Jul 06, 2005 8:14 am
by halyavin
надо перевести на 32 битный код и оптимизировать
В одном из примеров (game.rar) код по большей части уже переведен на 32-битный ассемблер.
это точно Паскаль?
Посмотри на компиляцию в opengl.bat

Posted: Wed Jul 06, 2005 10:28 am
by EXIS
halyavin

А как ты прогу на паскале откомпилировал для МЕОС ? Ты наверно свои модули дописывал?
Может быть этот способ будет еще комуто интересен.