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

Вниз

Работа с памятью   Найти похожие ветки 

 
ПсихЪ_задумчивый   (2004-07-22 15:06) [40]

Пока читал - запутался окончательно... (:
Так что нижеследующее скорее всего к ветке не относится.
1. Каждая картинка загружается один раз в массив спрайтов SprArr класса TSprite. Класс пишется вручну.

SetLength( SprArr, SprCount ); // SprCount - число спрайтов
for i := 0 to SprCount - 1 do
begin
 SprArr[i] := TSprite.Create();
 SprArr.LoadFromFile( IntToStr( i )+".bmp" ); // это к примеру
end;

2. Когда нужно сделать много ракет, то мы делаем:

SetLength( RocetArr, RocetCount );
for i := 0 to RocetCount - 1 do
begin
 RocetArr[i] := TRocet.Create(); // Тут можно сразу параметры задать
 RocetArr[i].SpritePointer := @SprArr[ROCET_SPRITE_NUMBER];
end;

При отрисовки ракет:

for i := 0 to RocetCount - 1 do
 // Если у тебя SpritePointer : TPointer;
 TSprite( RocetArr.SpritePointer ).Draw( RocetArr.SprX, RocetArr.SprY );
 // Если SpritePointer : PSprite; (PSprite : ^TSprite), тогда
 RocetArr.SpritePointer.Draw( RocetArr.SprX, RocetArr.SprY );


Вот, вряд ли это кому-нибудь пригодится. А про спрайты ещё добавлю, что удобнее делать единый интерфейс управления массивом спрайтов, что-то типа SpriteList.



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

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

Наверх




Память: 0.53 MB
Время: 0.036 c
11-1082701044
Ajax
2004-04-23 10:17
2004.11.14
Определение даты созания файла


1-1098863269
digger
2004-10-27 11:47
2004.11.14
Hint


14-1098686675
syte_ser78
2004-10-25 10:44
2004.11.14
Как сделать чтобы DmClient 2.1.2 запомнил имя и емейл в форме ?


14-1098612844
blackweber
2004-10-24 14:14
2004.11.14
Лункуксоиды хелп!!!


1-1098887850
Lexx3D
2004-10-27 18:37
2004.11.14
Re: Смена языков программы...