Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

PD3 - Рендер в текстуру


Страницы:   1 2 3 4

Warchief ©   (2005-04-30 20:10:00) 

Кто-нибудь делал?


Mozgg   (2005-08-02 01:48:00) [1]

А зачем их заново загружать, точнее после чего? После потери девайса?

dRakeдай пожалуйста свой повер, хоть посмотрю, что там есть!


dRake   (2005-08-01 02:50:00) [2]

Серьезно - заново загружать.
Только не все, а те которые были созданы с D3DPOOL_MANAGED


Warchief   (2005-07-31 17:13:00) [3]

Йумор, понимаю :)
А серьезно?


A22   (2005-07-28 19:50:00) [4]

угу


Warchief   (2005-07-28 19:20:00) [5]

Восстанавливать потерянное устройство научился, а вот как быть с текстурами? Заново из файлов загружать?


Warchief   (2005-07-07 20:26:00) [6]

Можешь закинуть на мыло? Только без D3D9 dll'лек, они у меня есть :)
warchief@inbox.ru


dRake   (2005-07-07 19:00:00) [7]

Сессия исчо продолжется =)

А вот враппер претерпел некоторые изменения:

>Я никак не могу правильно обработать потерю устройства :(

Там в функции Present вроде есть закомментированный кусок относящийся к потере устройства, если нет то суть такова:

Надо проверить функцию D3DDevice.Present на возвращение ошибки D3DERR_DEVICELOST, эта ошибка и означает потерю устройства.

А вот с враппером произошло много изменений :

1) он переехал на ООП :)
2) претерпел изменения процесс рендеринга + возможность массового удаления/восстановления всех созданных Image'ей + появился Callback для отлова оптери устройства + много изменений по мелочам  
3) Добавился модуль с кучей различных полезных процедур/функций (работа с векторами, тригонометрия, обработка коллизий, служебные) который используется всеми модулями.
3) добавился модуль для работы со звуком (BASS powered ;)

;)


Warchief   (2005-07-07 11:45:00) [8]

dRake,
ну как сессия? :)
Я никак не могу правильно обработать потерю устройства :(  (Использую твою версию с dx8). Не подскажешь как это сделать?


dRake   (2005-05-30 21:04:00) [9]

Сесия пришла :)


Warchief   (2005-05-30 18:33:00) [10]

Сравнил скорость загрузки PD3 и твоего движка - в твоем на 20% быстрее


Warchief   (2005-05-26 11:14:00) [11]

Ну как оно там?


dRake   (2005-05-21 13:28:00) [12]

Да хостинг наш упал :)
Когда поднимется то будет и страничка


Warchief   (2005-05-20 19:07:00) [13]

У тебя нет странички, где можно следить за развитием твоего движка? :)


dRake   (2005-05-16 17:02:00) [14]

>Правка заключалась в том, чтобы его можно было скомпилировать. >Бинарник работает, но ничего кроме сетки(клетки черн0 белые :) >не рисует.

Хех смотри -

константа E_NONE - теперь вообще отключает блендинг для канала
чтобы просто скопировать теперь юзается E_COPY

смотри описания констант в PowerGraph.pas =)

>2mb загрузчик?!

Там же не только загрузчик... Так еще куча всего

>У меня и jpg и png и tga все грузит :)

По-порядку - поддержка jpg из дельфячего модуля jpeg, который тянет за собой Graphics который тянет за собой... правильно - VCL =) А у меня нигде VCL'a нет (к этому и стремился :) отсюда файл на выходе (примеры) - 50Kb

загрузчика png я вообще не увидел там, tga поддерживается только с кучей исключений (см TGAReader.pas из PD 3.0).

> 1) Скорость загрузки текстуры в PD3 и у меня (разница в 40% по моим тестам) в PD.
>Обязательно сравню

Кстати для RenderTarget текстур разница вообще в несколько раз :)
Проверял на своей игрушке - там они для ландшафта используются.

> 3) Плюс у меня возможность фильтрации текстуры при зарузке - >Dithering, различные виды сглаживания.
>Не видел :/

А я еще и не сделал :) Но будет...


Warchief   (2005-05-16 15:29:00) [15]

> А бинарники работают?
Да

>А бинарник? В чем заключалась правка?
Правка заключалась в том, чтобы его можно было скомпилировать. Бинарник работает, но ничего кроме сетки(клетки черн0 белые :) не рисует.

> Она есть у многих. Убрать-то можно но очень не хочется - удобный загрузчик кучи форматов в одном флаконе...

2mb загрузчик?!

> 1) Скорость загрузки текстуры в PD3 и у меня (разница в 40% по моим тестам) в PD.
Обязательно сравню

> 2) Форматы - PD3 : TGA (32bit only), bmp.
У меня и jpg и png и tga все грузит :)

> 3) Плюс у меня возможность фильтрации текстуры при зарузке - Dithering, различные виды сглаживания.
Не видел :/


dRake   (2005-05-15 23:35:00) [16]

>Без моей правки примеры никак не хотели компилироваться

Это да - я то что в сорцах менял забывал в примерах поправить =)
А бинарники работают?

>Второй пример работы с альфой даже с моей правкой не работает
А бинарник? В чем заключалась правка?

>Буду ждать нормальной обработки потери фокуса :)
Делаем!

>А dll'ку нельзя убрать, при установленном DX9? Ведь PD3 как-то >обходится.

Она есть у многих. Убрать-то можно но очень не хочется - удобный загрузчик кучи форматов в одном флаконе...

>Ведь PD3 как-то обходится.

Сравни:

1) Скорость загрузки текстуры в PD3 и у меня (разница в 40% по моим тестам) в PD.

2) Форматы - PD3 : TGA (32bit only), bmp.
У меня - tga, jpg, png, bmp, dds, dib... в любых вариациях.

3) Плюс у меня возможность фильтрации текстуры при зарузке - Dithering, различные виды сглаживания.

Ну невозможно отказаться от таких вкусностей =)


Warchief   (2005-05-15 17:18:00) [17]

Ck0чал, посмотрел.
[-] Новая dll'ка в 3 раза больше старой (но оно и понятно)
[-] Без моей правки примеры никак не хотели компилироваться
[-] Второй пример работы с альфой даже с моей правкой не работает

Буду ждать нормальной обработки потери фокуса :)
А dll'ку нельзя убрать, при установленном DX9? Ведь PD3 как-то обходится.


dRake   (2005-05-15 01:49:00) [18]

Заслал =)

Короче теперь так...

[+]Добавлены новые константы для работы с альфа каналом и изменены/добавлены старые - подробнее смотри в PowerGraph.pas =)

[+]Добавлено сохранение текстуры в файл.

[+]Переделана процедура Clear. Пашет быстрее + можно с помощью нее чистить Alpha отдельно от RGB.

И зацени пару примерчиков на работу с альфой :)

Восстановление пока не сделал, потому что сначала надо организовать приличную обработку сообщений и переделать таймер (кривоват) так что работы хватает... Сейчас разгребу дела и буду доделывать =)

Если при отрисовке указана только константа из набора E_XXXX то она будет работать и на RGB и на Alpha каналы. Если надо отдельно указать эффект для отрисовки альфы - добавляешь к нему константу из набора E_ALPHA_XXXX. Ну и само собой - E_DIFFUSE, E_MIRROR, E_FLIP можно дописывать при любом раскладе =)

Пример



E_NONE or E_ALPHA_MUL

E_ADD or E_ALPHA_NONE or E_DIFFUSE

E_SIMPLE or E_MIRROR or E_FLIP


Warchief   (2005-05-14 17:15:00) [19]

Жду-с :)


dRake   (2005-05-14 15:38:00) [20]

Сейчас по мелочи доделаю и выложу =)


Страницы:   1 2 3 4

Наверх

Титульная страница Поиск, карта сайта Написать письмо