| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Как правильно сделать массив картинок? |
| Автор: Alexzz 21.1.2008, 18:03 |
| Решил попробовать написать простенькую игру. Пока думаю сделать массив из картинок var m: array [0..15] of tbitmap; и в нём сохранить 16 битмапов по 32х32 пикселя. Потом наносить эти битмапы на канвы пайнтбокса методом draw. Но вот у меня возникают вопросы: В какой момент под массив отводится место в памяти, сразу, или только после присвоения картинок? Не будет ли такой массив занимать слишком много места в памяти? Не нужно ли каким-то образом заранее задать размеры изображений? Как метод Draw отрисовывает изображение, использует ли он DirectX или отрисовка будет медленной? Есть ли способы как-то иначе организовать библиотеку изображений? |
| Автор: VICTAR 21.1.2008, 18:56 |
| Зачем массив? ImageList |
| Автор: Alexzz 24.1.2008, 03:11 |
| Ну впринципе разобрался. Как оказалось, массив это всего лишь набор указателей. Почему я так решил? Потому что когда я создав изображение в некой переменной затем присваиваю его первому элементу массива, затем отрисовываю на канвах переменной новую картинку и отправляю её в другой элемент массива, то в итоге оба элемента мне отдают одну и ту-же картинку - последнюю что я отрисовал. Тогда мне пришлось каждый раз после отправки изображения в массив заново делать img:=Tbitmap.Create; задавать размер картинки и выполнять img.Canvas.Create. Ладно, с этим всё понятно. Возникнут ещё вопросы, спрошу. |