Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.17;
Скачать: CL | DM;

Вниз

DelphiX на разных машинах - полупрозрачность и скорость   Найти похожие ветки 

 
VK ©   (2006-02-20 10:14) [0]

Добрый день!
Пишу арканоид на DelphiX.
На 1 машине (атлон 2200+, радеон 9600) - все нормально.
На 2 машине (P4 2400, Intel 82865G) столкнулся с проблемой:
 Image.DrawAlpha(Engine.Surface,Rect,0,100);
- Image вообще не отображается. Если
 Image.DrawAlpha(Engine.Surface,Rect,0,255);
то отображается, естественно непрозрачно.

И еще вопрос: как сделать, чтоб на разных машинах скорость движения спрайта была бы одинаковой? (На 2 машине все движется значительно быстрее)


 
KreeS ©   (2006-02-20 10:37) [1]

Нужно считать тики процессора и двигать спрайт только когда прошло нужное кол-во времени.

var
 PrevTime: Int64;
 CurTime: Int64;
begin
 CurTime := GetTickCount;
 PrevTime := CurTickCount;

 repeat
   DrawScene;  // здесь рисуется вся сцена
   
   CurTime := GetTickCount;
   if CurTime - PrevTime >= 50 then  // каждые 50 милисекунд
   begin
     GameDoStep;  // здесь обновляются позиции спрайтов и вся остальная физика
     PrevTime := CurTime;
   end;

   Application.ProcessMessages;
 until Application.Terminated;
end;


 
KreeS ©   (2006-02-20 10:53) [2]

А вообще в ДелфиХ, помоему есть таймер специально для этого :)
а насчет прозрачности незнаю


 
VK ©   (2006-02-20 11:16) [3]

[1] - спасибо!


 
VK ©   (2006-02-20 16:42) [4]

По полупрозрачности:
 Пример с Image.DrawAlpha из пакета с исходниками тоже не отображает полупрозрачность на 2 машине. Нашел в примерах другой DrawAlpha из модуля DXFusion, но там уж очень мудрено, хочется, чтоб обычный работал.
Никто, что ли не встречал проблему?


 
KreeS ©   (2006-02-20 21:16) [5]

Может там с дровами или с ДиректХ проблемы?


 
VK ©   (2006-02-21 15:08) [6]

Интересно.... после установки DXDraw.Display в 16 битный режим полупрозрачность стала отображаться и на 2 машине. До этого стоял 32 битный



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

Текущий архив: 2006.12.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.106 c
15-1163250575
poganka
2006-11-11 16:09
2006.12.17
ISAPI в Delphi


15-1164292048
oldman
2006-11-23 17:27
2006.12.17
Разные бывают в жизни огорчения, но чтобы вот так...


1-1162646727
Psychedelic
2006-11-04 16:25
2006.12.17
Проблема форума delphimasters


2-1164540980
doncova1
2006-11-26 14:36
2006.12.17
Как в DBGrid изменить высоту строк


2-1164635692
Draught
2006-11-27 16:54
2006.12.17
Событие DBEdit - нажатие Enter или другой заданой клавиши