Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2003.09.15;
Скачать: [xml.tar.bz2];

Вниз

help ...canvas   Найти похожие ветки 

 
walruz   (2003-03-15 02:56) [0]

Помогите начинающму!
Если можно то раскожите о канве,что ето такое итд.
Как заставить управлять обьектом по форме? Я делал обычный Timage c помощью left и top ,но это говорят не то=(, говоряят надо форму разбить на кординаты итд . Спосибо!!


 
Mihey   (2003-03-15 16:21) [1]

Действительно, обычный TImage - это не то. Если нужно сделать игрушку, то есть два способа вывода графики. ПредположиМ, нам нужно нарисовать шарик, отбивающийся от стенок. В первом способе мы выведем на экран (на канву формы) этот шарик, а когда он будет двигаться, то мы будем на старое место шарика выводить фон, а потом рисовать шарик на новое метсо. Т.е., старый шарик стирается, в новые координаты выводится новый.

TCanvas - это поверхность объекта, на которой он сам рисуется. Состоит канва из массива пикселей и набора других свойств и методов. Вывод графики обычно производится методом Draw, при этом указываются координаты и какое изображение вообще рисовать. При этом, изображения хранятся в таких случаях в объектах типа TBitMap обычно, так что с TImage мы дела не имеем.

Есть другой способ вывода экрана игры. Мы создаём пустое изображение - буфер. Каждый тик таймера мы рисуем в буфер фон, а потом уже шарик. При этом, стирать ничего не надо - изображение строится полностью по новой. И в конце мы выводим получившийся буфер на экран. При этом, на экран рисуется только буфер, остальные операции по копированию происходят в памяти, а это выигрыш в скорости.

Для работы с канвой используют часто не только стандартные методы канвы, а такие функции, как BitBlt и так далее. Они гораздо быстрее, но накладывают свои ограничения.


 
walruz   (2003-03-15 19:50) [2]

Mihey Большое спосбо за столь обширную инфу!!!
Но как мне допустим нарисовать круг который можно будет перемещать по форме(с помощью канвы)? Может приведи пример ,а то так розабратся сложновато=)! Жду помощи!


 
Mihey   (2003-03-15 20:50) [3]

Простенький пример я выложил сюда:

www.hot.ee/mvps4/Demo.rar

Круг можно вывести и чисто средствами канвы, то есть нарисовать его, но я предпочитаю иметь заранее нарисованное изображение круга и выводить его на канву. Это зависит от цели. Если у тебя круг - это только набросок, который должен превратиться в летающую тарелку, например, то так будет, естественно лучше. При выводе использую BitBlt и это ни что иное, как второй из предложенных мною способов.


 
walruz   (2003-03-15 22:37) [4]

Большое спосибо!!



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

Форум: "Игры";
Текущий архив: 2003.09.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.012 c
14-48786
выарп
2003-08-23 19:49
2003.09.15
Кто знает формат .bmp, помогите.


14-48780
ruslan_as
2003-08-26 09:29
2003.09.15
Создание електронных книг


1-48491
ЮРИЙ_К
2003-09-03 12:06
2003.09.15
Как привязаться к относительным координатам ветки дерева TreeView


3-48408
Dmitry111
2003-08-26 10:43
2003.09.15
Operation not applicable


3-48477
Andrew
2003-08-22 15:21
2003.09.15
Работа с DBF (DBase, FoxPro) , без BDE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский