![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Произвольные текстурные координаты кадра в PD3
Warchief © (2004-09-24 11:20:00)Делаю так:
procedure Tfmain.FormCreate(Sender: TObject);
begin
//...
tex:=TAGFImage.Create(PDraw);
tex.LoadFromFile('C:\Temp\5.tga', 256, 256, 256, 256, D3DFMT_A8R8G8B8);
PTimer.MayRender:=True;
end;
function TexCoord(_Left,_Top,_Width,_Height,_Tex: Integer): TTexCoord;
begin
Result.Pattern:=_Tex;
Result.SrcY:=_Top;
Result.SrcX:=_Left;
Result.Width:=_Left+_Width;
Result.Height:=_Top+_Height;
Result.Flip:=False;
Result.Mirror:=False;
end;
procedure Tfmain.PTimerRender(Sender: TObject);
begin
if not PDraw.Initialized then Exit;
PDraw.BeginScene;
PDraw.Clear(0);
PDraw.TextureMap(tex, pBounds4(0, 0, 256, 40 ), cColor1($FFFFFFFF), TexCoord(0, 40, 256, 40, 0), effectSrcAlpha);
PDraw.EndScene;
PDraw.Present;
end;
Так вот, при рисовании PowerDraw почему-то игнорирует координату кадра Y. Т.е. какую-бы y ни ввел, рисует с координатой (_Left; 0). В чем дело?
Warchief (2004-09-24 20:47:00) [1]> pBounds4(100, 100, 256, 40 ) будет не ноль, а сто... хелпы-то читать надо, примеры для разнообразия смотреть...
А причем тут pBounds()?
Проблема в текстурных координатахкадра. Т.е. вот здесь:
TexCoord(0, 40, 256, 40, 0)
Ландграф Павел (2004-09-24 18:13:00) [2]pBounds4(100, 100, 256, 40 ) будет не ноль, а сто... хелпы-то читать надо, примеры для разнообразия смотреть...