Вниз
Скачать: CL | DM;

Direct3D Resize   Найти похожие ветки 

 
Pa5ha   (2003-11-26 19:09) [0]

Я рисую на панели с помощью D3D. Размер панели изменяется и картинка становиться зернистой. Как можно изменить размер буфера без создания объекта устройства заного?


 
Sapersky ©   (2003-11-27 13:48) [1]

Никак, скорее всего. Не помню толком, как там в DX8 (картинка зернистая - это про него, так?), но в DX7 я пересоздавал почти всё - back, Z буфер, device - и ничего, не очень тормозило. DX8 инициализируется медленнее... можно попробовать создавать буфер максимального размера и при перерисовке копировать в окно его часть. При изменении размеров окна подправлять проекционную матрицу, чтобы размер изображения получился правильным.


 
Pa5ha   (2003-11-30 17:55) [2]

Есть фича SetViewPort;
Только работает через ж или я её неправильно юзаю. Help me!!!


 
Sapersky ©   (2003-11-30 23:41) [3]

Как именно юзаешь?


 
Pa5ha   (2003-12-01 13:03) [4]

Объявляю переменную TD3DViewPort8 (for DX8). У неё поля всякие: x,y,width,height,minz (=0) и maxz (=1); И получается не весь буфер обновляется.


 
Sapersky ©   (2003-12-01 22:34) [5]

Ну вот, это и требуется. При создании буфера (в  TD3DPRESENT_PARAMETERS) указать размеры в полный экран, в OnResize - SetViewport, и в Present ставить соответствующий source rect - проверил, вроде работает. Во всяком случае, зернистость меньше, чем при обычном подходе.


 
Pa5ha   (2003-12-02 13:14) [6]

Кстати в примерах на сайте есть пример с дельфином(плавает и хвостом машет). Там всё это дело быренько работает. И красиво... Во всяком случае спасибо, попробую сделать так.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
14-1078655373
Sniper-Max
2004-03-07 13:29
2004.04.04
Мышь - как руль с пидалями...


4-1074539580
Arr'acctur
2004-01-19 22:13
2004.04.04
StdOut


1-1079605953
alextov
2004-03-18 13:32
2004.04.04
Перенос проекта из Delphi 6 в Delphi 5


1-1079524553
Comp
2004-03-17 14:55
2004.04.04
TStringGrid и DrawFocusRect


4-1074854466
kentavr
2004-01-23 13:41
2004.04.04
Helpme please




   Наверх