Форум: "Игры";
Текущий архив: 2006.12.17;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.041 c