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

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

Как использовать DirectDraw или 2d OpenGL?


GrayFace ©   (2004-04-11 06:43:00) 

(Не на DelphiX)
1) В каких оно модулях?
2) Как в принцыпе ими пользоваться?
3) Как рисовать не на своем полотне, а поверх того, что сейчас на экране? (Я хочу сделать горящую мышь - горение в своем окне уже сделал)
Будет ли при этом затрагиваться Canvas от GetDesktopWindow?


miek   (2004-04-15 16:37:00) [1]

Ну это совсем просто. Первый же пример по DirectDraw. Взять поверхность, залочить, нарисовать, разлочить.


GrayFace   (2004-04-15 13:25:00) [2]

Нет. Я хочу рисовать не на канве, а в видеопамяти, не трогая при этом канвас.


smb   (2004-04-11 19:33:00) [3]

2 miek
3)  я привел часть примера. а вот он весь, смотрел копию на диске.
http://delphigfx.mastak.ru/2d/003/2d_3.htm


miek   (2004-04-11 15:50:00) [4]

3) Так делать нельзя. Прошлый DC надо удалять перед присвоением нового, новый тоже не забывать удалять (ReleaseDC)


smb   (2004-04-11 15:40:00) [5]

1),2) http://smb.hotmail.ru/mir/dx.exe
качай, здесь есть чтиво по DX, примеры в исходниках, нужные заголовочные файлы.
3) нужно получать DC рабочего стола и на него рисовать. здесь была об этом статья.
var
  DeskTop:TCanvas;
  ...
  DeskTop:=TCanvas.Create;
  DeskTop.Handle:=GetDC(0);// Получим Handle Рабочего стола

дальше рисуй, как на обычную канву.


Наверх

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